[LangChain] ChapGPT API 응답 구조, AIMessage 구조

Jihan·2024년 9월 11일

랭체인으로 ChatGPT API 호출해서 응답을 받아오면 다음과 같이 나온다.

응답은 langchain_core.messages.ai.AIMessage 라는 객체로 반환되고, 그 내용은

{
  "content": "안녕하세요! 어떻게 도와드릴까요?",
  "response_metadata": {
    "token_usage": {
      "completion_tokens": 10,
      "prompt_tokens": 9,
      "total_tokens": 19
    },
    "model_name": "gpt-4o-mini",
    "system_fingerprint": "fp_483d39d857",
    "finish_reason": "stop",
    "logprobs": null
  },
  "id": "run-16b74123-7e17-4300-949e-0a7cad2153e0-0"
}

으로, 크게 content, response_metadata, id 세 부분으로 나뉜다.

데이터 구조

  1. content:
    • ChatGPT가 생성한 실제 응답 ('안녕하세요! 어떻게 도와드릴까요?')
  2. response_metadata:
    • 응답에 대한 추가적인 메타데이터
    • token_usage: 토큰 사용량 정보
      • completion_tokens: 응답을 생성하는 데 사용된 토큰의 개수 (10개)
      • prompt_tokens: 입력 프롬프트에서 사용된 토큰의 개수 (9개)
      • total_tokens: 전체 토큰 개수 (19개)
    • model_name: 사용된 모델의 이름 (gpt-4o-mini)
    • system_fingerprint: 시스템 설정을 식별하는 고유 코드 ('fp_483d39d857')
    • finish_reason: 응답이 종료된 이유 ('stop') 이는 응답이 자연스럽게 완료되었음을 의미
    • logprobs: 확률 로그 정보 (None)
  3. id:
    • 이 API 호출의 고유 식별자. 추후에 이 응답을 참조하거나 추적할 때 사용할 수 있다.
    • 'run-16b74123-7e17-4300-949e-0a7cad2153e0-0'
profile
공부하고 개발하고 할 수 있을 때 하고 싶은 거

0개의 댓글