LLMs and Chat Models

샤워실의 바보·2024년 5월 21일

GPT

목록 보기
2/11

위 코드는 LangChain 라이브러리를 사용하여 대화형 AI 모델을 설정하고, 지리 전문가 역할을 수행하도록 하는 코드입니다. 하지만 {language}, {name}, {country_a}, {country_b}와 같은 플레이스홀더는 실제 값으로 대체되어야 합니다. 코드를 수정하여 실제 값을 넣고 실행하도록 하겠습니다.

1. 필요한 라이브러리 및 클래스 임포트

from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage, AIMessage, SystemMessage
  • ChatOpenAI: OpenAI의 챗 모델을 사용하기 위한 클래스.
  • HumanMessage, AIMessage, SystemMessage: 대화형 메시지를 정의하기 위한 클래스.

2. 챗 모델 초기화

chat = ChatOpenAI(temperature=0.1)
  • ChatOpenAI 클래스의 인스턴스를 생성합니다.
  • temperature는 생성된 텍스트의 창의성 수준을 조절합니다. 낮은 값(0.1)은 더 결정적인 응답을 의미합니다.

3. 메시지 리스트 생성

messages = [
    SystemMessage(
        content="You are a geography expert. And you only reply in Greek.",
    ),
    AIMessage(content="Ciao, mi chiamo Socrates!"),
    HumanMessage(
        content="What is the distance between Mexico and Thailand? Also, what is your name?",
    ),
]
  • SystemMessage는 AI에게 역할을 부여합니다. 여기서는 지리 전문가 역할을 하고 그리스어로만 응답하도록 지시합니다.
  • AIMessage는 AI가 스스로를 소개하는 메시지입니다.
  • HumanMessage는 사용자가 질문을 입력하는 부분입니다. 여기서는 멕시코와 태국 간의 거리와 AI의 이름을 묻습니다.

4. 챗 모델을 사용하여 메시지 예측

response = chat.predict_messages(messages)
print(response)
  • chat.predict_messages 메서드를 사용하여 생성된 메시지 리스트를 AI 모델에 전달하고, 응답을 예측합니다.
  • 예측된 응답을 출력합니다.

전체 코드

from langchain.chat_models import ChatOpenAI
from langchain.schema import HumanMessage, AIMessage, SystemMessage

chat = ChatOpenAI(temperature=0.1)

messages = [
    SystemMessage(
        content="You are a geography expert. And you only reply in Greek.",
    ),
    AIMessage(content="Ciao, mi chiamo Socrates!"),
    HumanMessage(
        content="What is the distance between Mexico and Thailand? Also, what is your name?",
    ),
]

response = chat.predict_messages(messages)
print(response)

이 코드는 LangChain 라이브러리를 사용하여 대화형 AI 모델을 설정하고, 지리 전문가 역할을 수행하도록 하여 사용자의 질문에 답변하는 과정을 보여줍니다. AI는 그리스어로 응답하며, 주어진 역할에 맞춰 응답을 생성합니다.

profile
공부하는 개발자

0개의 댓글