3장 Lang Chain 프레임워크

Intro

LangChain은 LLM을 기반으로 다양한 애플리케이션을 쉽게 구축할 수 있도록 도와주는 프레임워크입니다. LangChain은 다양한 개념들을 독립적인 기능들로 만들어 모듈화 시켜두어 LLM기반 서비스의 확장성과 생산성을 크게 높여주는 유용한 프레임워크 입니다.

이번장에서는 LangChain의 기본 개념과 사용방법에 대해 알아보도록 하겠습니다.

Lang Chain 아키텍쳐

  • 이미지 다른거 쓰기 -> 간단한 구조에서 확장해 나가는 방식

LangChain 기본 컴포넌트

1. LLMS

  • Gpt , Hugging Face와 같은 LLM들

2. Chains

  • 여러 모듈들을 순차적으로 연결하여 실행할 수 있도록 구성가능한 워크플로우

  • Chain을 통해 복잡한 여러 작업들을 논리적으로 분리 및 재사용하여 생산성을 높일 수 있다.

1) Simple Chain

사용자의 질문: "2025년 비트코인 전망은?"
체인 구성: 질문 → LLM이 내부 데이터를 이용하여 응답 생성
질문 -> LLM호출 -> 응답 반환 

2) Complex Chain

사용자의 질문: "2025년 비트코인 전망은?"
체인 구성: 질문 → 관련 뉴스 데이터 검색 → LLM이 데이터를 요약 → 응답 생성.
사용자의 질문을 LLM이 처리하기 전 필요한 데이터를 외부 API에서 가져온후 이를 LLM을 이용하여 요약

3. Prompt Templates

  • LLM이 수행할 템플릿을 관리하는 기능으로, 복잡한 프롬프트를 동적으로 생성하거나 재사용 할 수 있다.

4. Memory

  • 챗봇과 같은 대화형 애플리케이션에서 이전 대화 내용을 유지하기 위해 사용되며 3가지 메모리 구조를 가지고 있다.

1) Short-term Memory

  • 현재 세션에서만 유지되는 데이터를 저장하는 메모리공간

  • 챗봇에 응용하면 직전에 대화한 내용을 기억하게 할 수 있다.

2) Long-term memory

  • 사용자의 과거 기록이나 프로필을 저장하는 메모리공간

  • 챗봇에 응용하면 사용자의 이름과 관심사를 기억하는 개인화된 챗봇을 생성할 수 있다.

3) Buffer Memory

  • 대화의 모든 내용을 누적하여 저장하는 메모리공간

  • 사용자와의 대화내용을 기반으로 모델이 답변을 생성하는 기능을 만들 수 있다.

5. Tools

  • LLM 작업을 수행하기 위한 외부 모듈

  • ex) 구글 검색 API, 유튜브 API, 코인 시세 조회 API , 날씨 API 등


Last updated