개요
- LLM 기반 애플리케이션 구축을 위한 오케스트레이션 프레임워크
- 프롬프트 관리, 체이닝, 메모리, 도구 연동, RAG 등을 추상화
- LLM을 직접 호출하는 것보다 재사용·테스트·모니터링이 용이
LangChain
- 공식 사이트
- LLM 애플리케이션의 사실상 표준 프레임워크
- 체인, 에이전트, 메모리, 도구 등 풍부한 추상화 제공
주요 구성 요소
- LLM / ChatModel: 다양한 모델 통합 인터페이스 (OpenAI, Anthropic, Google 등)
- Chain: 여러 구성 요소를 연결하는 파이프라인 (LCEL: LangChain Expression Language)
- Memory: 대화 기록 관리 (ConversationBufferMemory, VectorStoreMemory 등)
- Tool / Toolkit: 외부 도구 연동 (웹 검색, SQL, API 등)
- Agent: 자율적 도구 선택 및 실행
LangGraph
- LangChain의 에이전트 오케스트레이션 프레임워크
- 그래프(DAG/Cyclic Graph) 기반으로 복잡한 멀티 에이전트 워크플로 구현
- 상태 기반 에이전트 루프 관리, 인간 승인 단계(Human-in-the-loop) 지원
- LangSmith로 추적·디버깅 통합
LlamaIndex
- 공식 사이트
- 데이터 연결·RAG에 특화된 프레임워크
- 다양한 데이터 소스(PDF, DB, API, 웹)를 LLM과 연결
주요 구성 요소
- Data Connector (Reader): 다양한 데이터 소스 수집 및 파싱
- Index: 벡터·키워드·그래프 인덱스
- Query Engine: 질의 처리 및 응답 생성
- Chat Engine: 대화 맥락 유지
- Agent: 도구 기반 자율 추론
LangChain vs LlamaIndex
| 항목 |
LangChain |
LlamaIndex |
| 주요 강점 |
에이전트, 체이닝, 범용 |
RAG, 데이터 인덱싱 |
| 학습 곡선 |
높음 |
중간 |
| 생태계 |
더 넓음 |
RAG 특화 |
| 에이전트 |
LangGraph |
LlamaIndex Agents |
관련 포스트