[ChatGPT] API parameter 알아보기

IBLOG·2023년 6월 25일
1

NLP

목록 보기
2/2
post-thumbnail

API Reference : https://platform.openai.com/docs/api-reference/chat/create

chat-GPT API를 사용할 때 사용되는 parameter에 대해 알아보자!

1.model

api를 사용해서 어떤 모델을 불러올지 model ID를 넣는 부분이다.

GPT-3.5 모델로는 다음과 같으며, model 이름을 넣으면 사용이 가능하다.

2. messages

이 부분은 role과 content를 부여하여 유저의 질문에 답변을 할 수 있도록 작동한다.

2.1 role

  • system : ChatGPT에게 어떻게 행동을 할지 지정하는 기능
  • user : 질문을 하는 사용자
  • assistant : 질문에 따른 답변을 도와주는 챗봇
    • 이전 내용을 바탕으로 프롬프트를 요청 하고자 할때 사용할 수 있다.

2.2 content

어떤 역할을 부여할 것인지, 질문 내용은 무엇인지, 대답을 어떻게 해야하는지에 대한 내용이 들어가는 부분이다.

# example

  response = openai.ChatCompletion.create(
    model="gpt-3.5-turbo",
    messages=[
          {"role": "system", "content": "You are a helpful assistant."},
          {"role": "user", "content": "Who won the world series in 2020?"},
          {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
          {"role": "user", "content": "Where was it played?"}
      ]
  )

3. temperature

다양성(degree of diversity) 정도를 나타내며 높을수록 창의적인 결과물을 만든다.

  • 온도(temperature)값이 높을수록 모델이 생성하는 문장이 더 다양해지고, 값이 낮을수록 더 일관성 있는 문장이 생성된다.
  • 기본값은 1이다.

4. max_tokens

생성되는 텍스트의 최대 길이를 지정하는 값이다.

  • 최대값은 2048이다.

5. ects

5.1 top_p

nucleus sampling으로, 모델이 top_p 확률 mass을 가진 토큰들의 결과를 고려하여 토큰을 선택한다.

  • 기본값은 1이다.

5.2 n

각 입력 메시지에 대해 생성할 chat completion choices 항목의 수를 나타낸다.

  • 기본값은 1이다.

5.3 stream

긴 답변일수록 응답 속도가 느려지는데, 답변이 완성될 때까지 기다리지 않고 그때그때 server-sent event 방식으로 응답 값을 받을 때 사용하는 옵션이다.

더 많은 파라미터가 존재하며 궁금하다면 위의 API Reference 페이지를 참고하면 된다!

profile
✢ 천천히 하나씩 기록해보자!

0개의 댓글