LangChain 개요

  • LangChain은 단순한 “추론(inference) 엔진”을 넘어 LLM 애플리케이션을 짜는 데 필요한 거의 모든 구성 요소를 모아놓은 프레임워크입니다.

 

  • 추론 파이프라인을 단계별로 나눠(입력→검색→결합→생성→후처리) 관리하기 쉽게 해 줍니다.
  • 벡터 DB 통합도 플러그인처럼 끼워 쓰는 수준으로 제공해, FAISS·Pinecone·Weaviate·pgvector 등과 바로 연결할 수 있습니다.

 

사용자 규모 (GitHub Stars 기준)

 

vLLM과의 차이점

vLLM이 “고성능 텍스트 생성”에 집중한 반면, LangChain은 그 앞단·옆단을 모두 지원해 줍니다.

벡터 DB(RAG)·도구 호출·에이전트 지원

vLLM은 "성성만" 잘함

langChain은 오히려 자체 추론엔진 없음(백엔드에 vLLM·OpenAI·LLama·TensorRT 등 연결)

 

Transformer + FastAPI와의 차이점

 

  • Transformer+FastAPI:
    • 모델 불러오고, POST /generate 엔드포인트 만들어서, 분절된 코드를 직접 연결해야 함.
    • 검색(RAG)·메모리·툴 호출 같은 부가 기능은 모두 “맨땅에 헤딩”으로 처음부터 구현.
  • LangChain:
    • PromptTemplate, Retriever, Chain, Agent 클래스로 “블록 쌓듯” 조합만 하면 끝.
    • 코드량 절감과 유지보수성이 월등히 높아집니다.

주요장점

 

  • Prompt 템플릿 관리
    • 변수 바인딩, 다국어, 조건부 로직 처리까지 내장
  • 체인(Chain) 단위 워크플로우
    • 검색(Retrieval) → 요약(Summarization) → 생성(Generation) 과정을 모듈화
  • 벡터 DB 통합
    • FAISS·Pinecone·Weaviate·pgvector 등과 커넥터 제공
    • 유사도 검색 결과를 자동으로 프롬프트에 결합
  • 에이전트(Agent) 프레임워크
    • 외부 API 호출, 계산 툴, 웹 스크래핑까지 “도구(tool)”로 래핑
    • 모델이 상황에 따라 적절한 도구를 호출하도록 제어
  • 메모리·대화 관리
    • 대화형 챗봇에 필요한 세션 관리, 요약, 장기 메모리 등 지원
  • 로깅·디버깅·모니터링
    • 실행 트레이스, 토큰 사용량, 체인 단계별 출력 로그
  • 플러그인 에코시스템
    • 커스텀 컴포넌트, UI 통합, 클라우드 배포 옵션 등 풍부

 

 

LangChain이 없으면 불편한점

  • 반복 코드: prompt 작성·변경할 때마다 엔드투엔드 코드 전부 수정
  • 유사도 검색: 벡터 DB 연결·검색→프롬프트 결합 로직 직접 구현
  • 도구 호출 관리: OpenAI 함수 호출, 외부 API 체계적인 에러 핸들링 모두 수작업
  • 메모리 관리: 대화 컨텍스트 쌓기·요약·회수 로직 직접 구현
  • 디버깅 어려움: 어느 단계에서 뭘 잘못했는지 추적하기 어려움

→ 결과적으로 개발 속도 저하, 유지보수 부담 증가, 기능 확장 난이도 상승이라는 비용을 치러야 합니다.

 

LangGraph

langChain이 일종의 직선적인 체인구조라면 LangGraph는 Airflow처럼 Dag으로 분기/관리해줄 수 있게 해줌

langChain회사에서 2023년말 2024년초에 발표

반응형

'Programming > LLM RAG' 카테고리의 다른 글

vector db  (1) 2025.06.14
Pinecone  (0) 2025.06.13
TensorRT-LLM  (1) 2025.06.13
SGLang  (0) 2025.06.13
vLLM  (0) 2025.06.12

+ Recent posts