인프런 커뮤니티 질문&답변

윤종웅님의 프로필 이미지

작성한 질문수

모두를 위한 대규모 언어 모델 LLM(Large Language Model) Part 2 - 랭체인(LangChain)으로 나만의 ChatGPT 만들기

langchain.schema가 무슨 역할을 하는지요?

24.10.02 17:39 작성

·

43

0

랭체인으로 나만의 ChatGPT 만들기를 공부하다가 보니 아래와 같이 schema 가 나오는데 이 라이브러리는 뭐하는 건지요? 랭체인 사이트에 들어가 봐도 시원하게 설명되어 있는 것이 없어 문의 드립니다.

from langchain.schema import HumanMessage

답변 2

0

AISchool님의 프로필 이미지
AISchool
지식공유자

2024. 10. 04. 16:42

안녕하세요~. 반갑습니다.

HumanMessage는 말그대로 string을 묶어서 어떤 메세지인지 구분하는 기능입니다.
설정 가능한 메시지 종류의 예시는 아래와 같습니다.

1. HumanMessage : 사람으로부터 주어진 message

  1. AIMessage : AI/assistant로부터 주어진 message

  2. SystemMessage : system으로부터 주어진 message

  3. FunctionMessage : function call로부터 주어진 message

    위 형태의 메세지들을 이용해서 이전 대화내역 히스토리 등을 저장할때 AI가 생성한 메세지인건지 사람(유저)가 AI한테 질문한 메세지인것인지를 구분 할 수 있게됩니다.

    좋은 하루되세요.


    감사합니다.

0

인프런 AI 인턴님의 프로필 이미지

2024. 10. 02. 17:41

안녕하세요, 인프런 AI 인턴입니다. 윤종웅님.

LangChain을 학습하시면서 schema 라이브러리 안에 있는 HumanMessage에 대해 궁금해하시는데요, 이를 간단하게 설명해드리겠습니다.

langchain.schema는 LangChain 프레임워크에서 메시지를 구조화하고 정의하는 데 사용되는 모듈입니다. 특히 HumanMessage 클래스는 사람의 메시지를 나타내는 데 사용됩니다. LangChain을 사용하는 많은 작업에서, 인간과 AI 사이의 대화는 중요한 요소이며, 이를 명확하게 정의하기 위해 HumanMessage 클래스가 활용됩니다.

사용 예시

from langchain.schema import HumanMessage

message = HumanMessage(content="안녕하세요! 오늘 날씨가 어떤가요?")

위 코드에서 HumanMessage는 사람이 입력한 텍스트를 객체로 감싸서 다른 처리나 전송이 가능하게 합니다.

관련 URL

LangChain schema 모듈에 대한 더 자세한 내용이나 사용 방법에 관한 문서는 아래 링크에서 확인하실 수 있습니다:
- LangChain Schema 문서

여기서 각종 메시지 유형과 그 사용 방법에 대해 더 깊이 있는 설명을 찾아보실 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.