LangChain으로 시작하지 마세요. 이 4가지 프레임워크를 배워야 하는 순서입니다.
Stop starting with LangChain. Here's the order you should actually learn these four.
핵심 요약
LangChain의 복잡한 추상화에 매몰되지 않도록, 핵심 원리를 단계별로 익힐 수 있는 최적의 학습 로드맵을 제안합니다.
- 학습 로드맵 — LlamaIndex, CrewAI, AutoGen, LangGraph 순으로 학습하여 기초부터 실무 아키텍처까지 체득함
- LlamaIndex — RAG의 기본 원리인 임베딩, 벡터 저장소, 검색 등을 추상화 없이 직접 구현하며 학습함
- 멀티 에이전트 — CrewAI와 AutoGen을 통해 에이전트 간 협업, 컨텍스트 손실, 루프 문제 등 실전 난관을 경험함
- LangGraph — 앞선 단계에서 겪은 문제들을 해결하기 위한 상태 관리와 제어 흐름을 실무 수준으로 적용함
"AI 에이전트 입문" 튜토리얼들은 죄다 LangChain부터 시작하라고 난리임. 가장 큰 프레임워크고, 깃허브 스타도 제일 많고, 튜토리얼도 널렸고, 스택 오버플로우 답변도 많고, 채용 공고도 제일 많으니까.
근데 사실 시작하기엔 최악임. 내가 3주 동안 그 밑에서 무슨 일이 일어나는지도 모른 채 추상화된 코드랑 씨름하느라 시간 날렸을 때, 누군가 나한테 이 말을 해줬더라면 얼마나 좋았을까 싶음.
진짜 효과적인 순서는 따로 있음. 각 프레임워크를 거치면서 다음 단계에 필요한 핵심 개념을 하나씩 배우는 거임.
LlamaIndex로 시작하셈. 최고라서가 아니라, 가장 집중도가 높아서임.
LlamaIndex는 딱 하나를 기가 막히게 잘함. LLM이랑 내 문서를 연결하는 거. 파일 불러오고, 인덱스 만들고, 질문 던지기. 코드 한 15줄이면 첫 번째 AI 애플리케이션 뚝딱임.
python
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
documents = SimpleDirectoryReader("./my_docs").load_data()
index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine()
response = query_engine.query("What did the Q3 report say about revenue?")
print(response)
이게 바로 돌아가는 RAG 시스템임. 문서를 불러왔고, 질문했고, 내 데이터에 기반한 답변을 얻었음. 코드 한 줄 한 줄 다 이해가 갈 거임.
이걸로 배우는 것: 임베딩, 벡터 스토어, 검색(retrieval), 청킹(chunking), 컨텍스트 윈도우, 프롬프트 구성. 다른 모든 것들이 이 기초 위에 쌓임. LlamaIndex는 프레임워크가 5겹의 추상화 뒤에 숨어있지 않아서 이 과정이 다 눈에 보임.
왜 LangChain부터 하면 안 되냐고? 똑같은 기능을 구현해도 LangChain은 코드가 25~40줄은 나옴. 텍스트 분할기 골라야지, 청크 사이즈 설정해야지, 임베딩 모델 정해야지, 벡터 스토어 세팅해야지, 리트리버 만들고, 체인 구성하고, 프롬프트 템플릿 연결하고... 선택지가 너무 많음. 초보자는 뭐가 중요한지 모르니까 그냥 기본값으로 설정하고 넘어가는데, 왜 그런 기본값이 설정됐는지도 모름. LlamaIndex는 기본값이 훨씬 똑똑하고 설정할 것도 적음. 커스텀하는 법을 배우기 전에, 일단 뭐가 돌아가는지부터 파악하는 게 먼저임.
여기서 1~2주 정도 투자하셈. 내 문서들로 챗봇 만들어보고, PDF, 마크다운, CSV 같은 다양한 파일 형식도 넣어보고. 청크 사이즈가 답변 품질에 어떤 영향을 주는지 확인해 보셈. 일부러 고장 내보고 고쳐보기도 하고. 검색이 손에 익었다 싶으면 다음 단계로 넘어가셈.
두 번째: CrewAI. 멀티 에이전트 사고방식을 가장 부담 없이 배울 수 있음.
CrewAI의 사고방식은 진짜 단순함. 역할을 정하고(연구원, 작가, 편집자), 작업을 정의하고, 역할에 작업을 할당하고, 실행하면 끝임.
python
from crewai import Agent, Task, Crew
researcher = Agent(role="Researcher", goal="Find accurate data")
writer = Agent(role="Writer", goal="Write clear summaries")
research_task = Task(description="Research AI agent trends", agent=researcher)
writing_task = Task(description="Write a summary", agent=writer)
crew = Crew(agents=[researcher, writer], tasks=[research_task, writing_task])
result = crew.kickoff()
이게 돌아가는 멀티 에이전트 파이프라인임. 연구원이 데이터를 찾고, 작가가 그 데이터를 써서 요약문을 작성함. 두 에이전트가 하나의 결과물을 위해 협업하는 거임.


