랭체인 (LangChain)

1. LLM 서비스 개발 프레임워크, 랭체인 (LangChain)의 개념 및 필요성

개념필요성
효율적인 LLM 기반 서비스 개발을 위해 다양한 언어 모델과 에이전트, 콜백 등 기능 연결 및 통합을 간소화하도록 설계된 언어 모델 기반 애플리케이션 개발 프레임워크– 모듈식 구성으로 Application 구현 간소화
– 모듈을 체인으로 연결하여 기능 확장성 확보
– API 기반 LLM 교체/업데이트 반영 용이
검색 증강 생성 (RAG) 파이프라인 구현
  • 랭체인은 ChatGPT와 비슷한 시기에 등장하였고, LLM 구현 세부 사항에 대해 요약된 API를 통해 개발 단순화, 지속적인 변경사항 및 다양한 언어 모델에 적응
  • ChatGPT 등 생성형 AI 기반 애플리케이션 개발에 유용한 도구 모음과 같은 것으로, 기능이 풍부하고 사용이 용이하여 LLM 기반 서비스 개발을 위한 프레임워크로 부각

 

2. 랭체인의 프레임워크/처리 과정 및 구성요소

(1) 랭체인의 프레임워크/처리 과정

프레임
워크
처리
과정
  • 다양한 기능 모듈을 체인으로 연결하고 출력을 다른 모듈의 입력으로 사용하여 기능 확장 가능

(2) 랭체인의 구성요소

구분구성요소역할
핵심
모듈
Agent– 수행할 작업을 동적 체인으로 구성
– 프롬프트 행동 계획 추출 기능 단순화
Memory– 모델에 장단기 메모리 추가 지원
– 최근 대화 기억, 과거 메시지 분석 지원
Callback– 특정 이벤트 시 사용자 지정 콜백 핸들러 작성
– 로깅, 모니터링, 스트리밍 등
Data Connection– PDF 등 외부 문서 로드, 워드 임베딩 변환, 벡터DB 저장, 쿼리 기반 검색 등
Chain– 구성요소와 LLM 활용하여 파이프라인 구축
– 쿼리부터 모델 출력까지 자동화 구성
Model I/OLLM과 상호작용 수행
– 프롬프트 생성, 모델 API 호출, 결과 해석
외부
도구
Data Source– 다양한 외부 소스에서 데이터 액세스 및 검색
– PDF, 웹페이지, CSV, 관계형 데이터베이스 등
Word Embedding– 외부 소스에서 검색된 데이터를 벡터로 변환
– 선택한 LLM 기반 최적 임베딩 모델 선택
Vector DB– 생성된 임베딩의 유사성 검색 저장소
– 다양한 소스에서 벡터 기반 저장, 검색
LLM (Large Language Model)– OpenAI, Cohere, AI21 등 주류 LLM
– Hugging Face 지원 오픈소스 LLM
  • 랭체인은 상호 운용성과 다양한 모델 및 벡터 저장소 처리 능력으로 기업/기관에 LLM 등 생성형 AI 적용 활성화에 기여할 것으로 예상

 

3. 랭체인을 활용한 기업/기관의 LLM 적용 방안

  • 기업/기관의 사용자 질문에 대해 벡터화된 내부 문서와 내/외부 시스템, 인터넷 검색 후 최적의 프롬프트를 생성하여 LLM으로 부터 최적의 답변 생성 및 응답
  • 모든 기능은 모듈화 되어 API로 호출되고, 체인으로 연결되어 전체 프로세스는 Agent의 자동화 프로세스를 통해 최적의 결과물 도출
  • LLM 등 생성형 AI를 실제 업무에 효과적으로 적용하기 위해 랭체인을 통한 기존 시스템과 통합, 파인 튜닝 등이 필요하며 현업부서와 IT부서 간 협업으로 수행 필요

[참고]

  • LangChain Blog, LangChain Introduction
  • ICT산업전망컨퍼런스, ChatGPT시대, 기업의 LLM 도입 및 활용절약

콘텐츠 사용 시 출처 표기 부탁 드리고, 궁금한 점이나 의견은 댓글 남겨주세요^^