본문 바로가기

AI/LLM

LangChain이란?

목차

    출처

    • 위 강의를 기반으로 학습한 내용을 정리한 글입니다.

     

    LangChain

    • 언어 모델로 구동되는 애플리케이션을 개발하기 위한 프레임워크
    • 언어 모델을 더 잘 활용할 수 있게 도와주는 도구
    • 데이터인식 : 언어 모델을 다른 데이터 소스에 연결
    • 에이전트 기능 : 언어 모델이 환경과 상호 작용할 수 있도록 함

    LangChain 사용 이유

    • 정보 접근 제한 : GPT-3.5 경우 2021년까지의 데이터를 학습하여, 2022년부터의 정보에 대해서는 답변 어려움
      => Vectorstore 기반 정보 탐색 or Agent 활용한 검색 결합
    • 토큰 제한 : GPT-3.5, GPT-4 각각 4069, 8192토큰 제한 존재
      => TextSplitter를 활용한 문서 분할
    • 환각현상(할루시네이션) : Fact에 대한 질문 했을 때, 엉뚱한 대답이나 거짓말을 하는 경우가 있음
      => 주어진 문서에 대해서만 답하도록 Prompt 입력

    => ChatGPT 개량 필요성

     

    ChatGPT 개량

    • Fine-tuning : 기존 딥러닝 모델의 weight를 조정하여, 원하는 용도의 모델로 업데이트
    • N-shot Learning : 0~n개의 출력 예시를 제시, 딥러닝이 용도에 맞게 출력을 하도록 조정
    • In-context Learning : 문맥을 제시하고, 이 문맥 기반으로 모델이 출력하도록 조정

    => LangChiain은 In-context Learning의 도구

     

    LangChain의 구조

    • LLM
      초거대 언어모델로, 생성 모델의 엔진과 같은 역할을 하는 핵심 구성 요소
    • Prompts
      초거대 언어모델에게 지시하는 명령문
    • Index
      LLM이 문서를 쉽게 탐색할 수 있도록 구조화 하는 모듈
    • Memory
      채팅 이력을 기억하도록 하여, 이를 기반으로 대화가 가능하도록 하는 모듈
    • Chain
      LLM 사슬을 형성하여, 연속적인 LLM 호출이 가능하도록 하는 핵심 구성 요소
    • Agents
      LLM이 기존 Prompt Template로 수행할 수 없는 작업을 가능하게 하는 모듈

     

     

    'AI > LLM' 카테고리의 다른 글

    RAG란  (1) 2024.04.12
    LLM의 발전 & 오픈소스와 폐쇄형소스  (0) 2024.03.15