LangChain


https://github.com/langchain-ai

소개

LangChain 은 LLM(대형 언어 모델)을 활용한 애플리케이션 개발을 단순화해주는 오픈소스 프레임워크입니다. 단순한 챗봇을 넘어, 복잡한 추론 프로세스를 수행하거나, 외부의 데이터와 상호작용하는 기능을 만드는 데 있어 쉽고 효율적으로 개발할 수 있게 도와줍니다.

  • 언어 모델에 기반한 AI 애플리케이션을 쉽게 개발할 수 있게 도와주는 “프레임워크” 입니다.
  • LLM 애플리케이션을 개발하기 위한 여러 도구와 모듈들이 마련되어 있습니다.
  • 다양한 여러 언어 모델을 쉽게 교체하며 사용할 수 있게 설계되어 있습니다.

LangChain Ecosystem(랭체인 생태계)

LangChain 은 단순한 라이브러리를 넘어, LLM을 활용한 애플리케이션 개발에 대해 개발, 배포, 모니터링까지 AI 애플리케이션의 전 과정을 아우르는 생태계(Ecosystem)을 구축하고 있습니다.

(1) LangChain Libraries

  • 랭체인 생태계의 기초이자 시발점

가장 기본이 되는, 랭체인 생태계의 기초이자 뼈대 역할을 합니다. AI 애플리케이션의 로직을 설계하고, 모델, 프롬프트 템플릿, 데이터 연결 등 구성 요소를 조립합니다.

(2) LangGraph

  • 복잡한 로직 처리, 멀티 에이전트 구현

랭체인에 이어 개발된 도구로, 기존 랭체인의 선형적인 체인 구조를 넘어, 순환(Loop)과 조건문이 포함된 복잡한 상태 기반 에이전트를 만들 때 사용할 수 있습니다.

(3) LangSmith

  • 추적과 디버깅, 분석

LLM이 내부적으로 어떻게 답변을 냈는지 추적(Tracing)하는 플랫폼입니다. 개발 중인 체인의 성능을 평가하고, 오류 지점을 확인해 디버깅하며, 배포 후 이용자들의 로그를 분석할 수 있는 기반을 제공합니다.

(4) LangServe

  • 배포와 서비스화

작성한 랭체인 및 랭그래프를 REST API 로 변환해 배포할 수 있게 도와주는 도구입니다. FastAPI를 기반으로 구축됩니다.

LangChain 의 핵심 구성 요소

핵심 구성 요소 설명
Prompts Template 재사용 가능한 형태의 프롬프트 템플릿
Models 실제 추론을 수행하는 모델(또는 모델과의 연결 제공)
Chains 프롬프트, 모델을 포함해 여러 작업을 연결하는 것
Memory 대화 내용을 기억하는 것
Agents LLM 이 사용할 수 있는 도구
Retriever 답변에 참조할 외부 데이터나 외부 맥락을 가져옴

Integration Packages


https://docs.langchain.com/oss/python/integrations/providers/overview

  • 외부 시스템이나 서비스를 LangChain 에 쉽게 연동할 수 있게 해주는 모듈이나 패키지를 가리킵니다.
  • 외부 LLM API, 벡터스토어, 툴 등 여러 종류가 있습니다.
  • 이러한 Integration의 대상이 되는 외부 업체나 서비스의 제공자를 Provider라고 지칭합니다.
1
2
3
4
5
6
7
8
pip install langchain-openai # OpenAI API 를 사용할 수 있게 해주는
pip install langchain-google-vertexai
pip install langchain-google-genai
...

# LLM 서비스만 있는 게 아니다  
pip install langchain-postgres
pip install langchain-mongodb

Reference

Do it! LLM을 활용한 AI 에이전트 개발 입문 - 이성용 저
https://docs.langchain.com/oss/python/integrations/providers/overview
https://github.com/langchain-ai

Comments