Search

Chains

대분류
인공지능/데이터
프레임워크
소분류
LangChain/RAG
유형
LangChain
부유형
Main Module Detail
최종 편집 일시
2024/10/27 15:16
생성 일시
2024/10/25 06:32
14 more properties

Chains

랭체인에서 가장 핵심적인 개념 중 하나
Chain의 뜻 그대로 데이터 -> LLM1 -> LLM2 … -> plugin -> output 등 다양한 방식으로 사용자가 원하는대로 모듈들을 엮을 수 있다.
간단한 애플리케이션의 경우 LLM을 단독으로 사용할 수 있지만 더 복잡한 애플리케이션의 경우 서로 또다른 기능을 수행하는 컴포넌트와 함께 LLM을 연결해야 한다.
LangChain은 이러한 컴포넌트를 "chain"으로 연결할 수 있는 인터페이스를 제공하고 컴포넌트에 대한 호출 시퀀스로 정의한다.

1. Input (입력)

설명
사용자의 질문이나 요청이 입력된다.
이 입력은 LLM(대형 언어 모델)에 의해 처리되기 전에 적절한 경로로 분류될 준비를 한다.
역할: 사용자로부터 받은 입력 데이터를 처리할 수 있도록 준비하는 단계

2. Router Chain (라우터 체인)

설명
라우터 체인은 입력된 데이터를 특정 주제에 따라 분류하는 역할을 한다.
주제(subject) 리스트에는 예를 들어 "수학", "역사" 등이 포함될 수 있다.
모델은 입력이 특정 주제와 관련 있는지 판단한 후, 관련된 체인으로 데이터를 보낸다.
Subjects: 입력이 특정 주제(예: 수학, 역사 등)와 관련이 있는지 판단한다.
If the input is related to: 입력이 특정 주제와 연관되어 있으면 해당 주제의 체인으로 데이터를 전달한다.
Else: 입력이 어떤 주제에도 해당되지 않으면 기본 체인으로 데이터를 보낸다.
역할: 입력된 데이터를 분석하고, 적절한 주제별 체인으로 보내는 과정을 담당한다.

3. Destination Chain (목적지 체인)

설명
라우터 체인에서 분류된 입력 데이터가 주제별 Destination Chain으로 전달된다.
주제에 맞는 체인에서 해당 데이터를 처리하고, 최종 출력을 생성한다.
Subject: 입력이 특정 주제에 맞게 분류된 경우, 그 주제에 해당하는 체인에서 데이터를 처리한다.
None: 입력이 어떤 주제에도 속하지 않는 경우, 기본 체인(Default Chain)으로 처리된다.
역할: 주제별로 분류된 데이터를 처리하고, 최종 출력을 생성한다.

4. Output (출력)

설명: 주제별 체인에서 처리된 결과가 최종 출력으로 사용자에게 반환된다.
역할: 최종 결과를 사용자에게 전달하는 단계다.