# 1강.  Langchain이란

- 왜 LangChain을 써야할까?

    - 언어 모델로 구동되는 애플리케이션을 개발하기 위한 **프레임워크**

        - 언어 모델을 더 잘 활용할 수 있도록 해주는 도구

    - 정보 접근 제한

        - ChatGPT는 검색 기능이 없다. → 2021년까지 데이터만 있음

    - 토큰 제한

        - GPT-4는 8192토큰이라는 입력 토큰 제한

        - 책이나, 사내 법규를 입력하여 대화를 하는 경우 입력 토큰 제한이 아쉬운 경우가 있음

    - 환각 현상

        - 정보가 없는데 엉뚱한 대답이나 거짓말을 하는 경우가 많다

⇒ ChatGPT의 개량이 필요함

→ Fine-tuning  : 기존 모델의 weight를 조정하여 원하는 용도로 업데이트

→ N-shot Learning : 0~n개의 출력 예시를 제시하여, 딥러닝이 용도에 맞는 출력을 하도록 조정

→ In-context Learning : 문맥을 제시하고, 이 문맥 기반으로 출력하도록 조정

- LangChain의 종류와 역할

    - LLM : 초거대 언어모델, 생성모델의 엔진과 같은 역할을 하는 핵심 구성 요소 ( GPT, PALM, LLAMA… )

    - Prompts : 초거대 언어모델에게 지시하는 명령문

        - prompt Templates, Example Selectors, Output Parsers ..

    - Index :  LLM이 문서를 쉽게 탐색할 수 있도록 구조화하는 모듈

        - Document Loaders, Text Splitters, Vectorstores..

    - Memory : 채팅 이력을 기억하도록 하여, 이를 기반으로 대화가 가능하도록 하는 모듈

    - Chain : LLM 사슬을 형성하여, 연속적인 LLM 호출이 가능하도록 하는 핵심 구성 요소

    - Agents : 기존 prompt template으로 수행할 수 없는 작업을 가능케하는 모듈

![Image](https://upload.cafenono.com/image/slashpagePost/20240812/161150_Xxuh2w8alv1G9VeMGd?q=80&s=1280x180&t=outside&f=webp)

For the site tree, see the [root Markdown](https://slashpage.com/actafool.md).
