본문 바로가기
public void static main/AI

[LangChain] LLM 체인, 멀티 체인

by 햄리뮤 2025. 7. 14.
반응형

이제 진짜로 AI에 대해서 제대로 공부해야한다 가을학기 시작하기전에 좀 공부해두자.


LLM 체인이 뭘까?

LangChain에서 말하는 체인(Chain)은 단순히 여러 작업을 순서대로 연결해서 실행하는 구조이다.

즉 LLM을 이용한 텍스트 입력 -> 처리 -> 출력 흐름을 모듈화 해서 구성한 파이프라인이라고 보면 된다.

LangChain 기본 LLM 체인의 구성 요소는 뭘까?

LangChain은 대규모 언어 모델(LLM)을 다양한 방식으로 연결해서 복잡한 작업을 수행할 수 있게 해주는 프레임 워크이다.

 

  • Prompt Template
    • LLM에게 어떤 질문을 할지 미리 형식을 정해놓은 것.
    • 예: "사용자 질문: {question} 답변: " 같은 템플릿을 실제 질문을 넣어서 LLM에게 전달 한다.
  • LLM
    • 실제로 텍스트를 생성하는 모델. 예: OpenAI의 GPT, Meta의 LLaMA등
    • 프롬프트를 받아서 응답을 생성한다.
  • Output Parser
    • LLM의 응답을 사람이 쓰기 좋게, 혹은 다음 단계에서 쓰기 좋게 가공하는 역할.
    • 예: JSON으로 파싱하거나, 특정 키워드만 추출한다.
  • Memory
    • 이전 대화나 작업 내용을 기억해서 문맥을 유지함.
    • 예: 챗봇인 이전 질문을 기억하고 이어서 대답하는 기능.
  • Chain
    • 위의 요소들을 연결해서 하나의 작업 프름을 만든다.
    • 예: 사용자 입력 -> 프롬프트 생성 -> LLM 호출 -> 출력 파싱 -> 결과 반환

개발자 관점에서 생각하기💡

LangChain은 마치 Spring DI 컨테이너처럼, 각 구성 요소를 모듈화해서 조립할 수 있다. 그래서 복잡한 LLM 기반 애플리케이션을 만들 때 유지보수와 확장성이 뛰어나다.

LangChain 코드 예제

from langchain.llms import OpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain

# OpenAI API 키 설정
import os
os.environ["OPENAI_API_KEY"] = "your-api-key-here"

# 1. 프롬프트 템플릿 정의
prompt = PromptTemplate(
    input_variables=["question"],
    template="다음 질문에 대해 자세히 설명해줘: {question}"
)

# 2. LLM 객체 생성
llm = OpenAI(temperature=0.7)

# 3. 체인 생성
chain = LLMChain(llm=llm, prompt=prompt)

# 4. 실행
response = chain.run("LangChain이 뭐야?")
print(response)

 


https://pub.towardsai.net/inside-langchain-the-open-source-llm-framework-everyone-is-talking-about-22f69e4bf808

 

Inside LangChain: The Open Source Large Language Model Framework Everyone is Talking About

One of the most popular new frameworks for building LLM applications.

pub.towardsai.net

 

 

** 그냥 하루하루 개인 공부한 것을 끄적 거리는 공간입니다.

이곳 저곳에서 구글링한 것과 강의 들은 내용이 정리가 되었습니다.

그림들은 그림밑에 출처표시를 해놓았습니다.

문제가 될시 말씀해주시면 해당 부분은 삭제 하도록하겠습니다. **

반응형

댓글