OpenAI API : Chat 살펴 보겠습니다

정의

Given a list of messages describing a conversation, the model will return a response.

Create chat completion

POST https://api.openai.com/v1/chat/completions
Creates a model response for the given chat conversation.

Request body

model (string / 필수)ID of the model to use.
messages (array / 필수)A list of messages describing the conversation so far.
role (string / 필수)The role of the author of this message. One of system, user, or assistant.
content (string / 필수)The contents of the message.
name (string / 옵션)The name of the author of this message. May contain a-z, A-Z, 0-0, and unserscores, with a maximum length of 64 characters.
temperature (number / 옵션)What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the outputmore random, while lower values like 0.2 will make it more focused and deterministic.
top_p (number / 옵션)An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.
n (integer / 옵션)How many chat completion choices to generate for each input message.
stream (boolean / 옵션)If set, partial message deltas will be sent, like in ChatGPT. Tokens will be sent as data-only server-sent events as they become available, with the stream terminated by a data : [DONE] message.
stop (string or array / 옵션)Up to 4 sequences where the API will stop generating further tokens.
max_tokens (integer / 옵션)The maximum number of tokens to generate in the chat completion.
The total length of input tokens and generated tokens is limited by the model’s context length.
presence_penalty (number / 옵션)Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far, increasing the model’s likelihood to talk about new topics.
frequency_penalty (number / 옵션)Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far, decreasing the model’s likelihood to repeat the same line verbatim.
logit_bias (map / 옵션)Modify the likelihood of specified tokens appearing in the completion.

Accepts a json object that maps tokens (specified by their token ID in the tokenizer) to an associated bias value from -100 to 100. Mathematically, the bias is added to the logits generated by the model prior to sampling. The exact effect will vary per model, but values between -1 and 1 should decrease or increase likelihood of selection; values like -100 or 100 should result in a ban or exclusive selection of the relevant token.
user (string / 옵션)A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse.

Example request

curl https://api.openai.com/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -d '{
    "model": "gpt-3.5-turbo",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Parameters

{
  "model": "gpt-3.5-turbo",
  "messages": [{"role": "user", "content": "Hello!"}]
}

Response

{
  "id": "chatcmpl-123",
  "object": "chat.completion",
  "created": 1677652288,
  "choices": [{
    "index": 0,
    "message": {
      "role": "assistant",
      "content": "\n\nHello there, how may I assist you today?",
    },
    "finish_reason": "stop"
  }],
  "usage": {
    "prompt_tokens": 9,
    "completion_tokens": 12,
    "total_tokens": 21
  }
}

호출 결과

Leave a Reply

Your email address will not be published. Required fields are marked *

인기 글

Ubuntu 22.04 LTS에 Python 3.8 or 3.9 설치 방법
서버 : Vultr 클라우드OS: Ubuntu 22.04 LTS사용자 계정 생성하여 설치 진행함1. Start with the system updatesudo apt update...
오라클 클라우드 OCI 가입 드디어 성공 했습니다 (상세 후기)
2023년 2월 16일에 ‘오라클 클라우드 지급 검증 실패 글‘을 남긴 적이 있습니다.그 때 검색을 통해 해결 방법을 찾아 보았고, 당시 성공했던 분들의...
AWS 인스턴스 유형 변경 방법
AWS 인스턴스 유형을 변경하기 위한 방법에는 다음 2가지가 있습니다.   1. 첫 번째 방법 AMI 이미지 생성 후 해당 이미지를 복원하여 신규 EC2 인스턴스를 생성하는...
WSL2/Ubuntu 22.04 LTS에서 Jupyter notebook 실행하기
WSL2 Ubuntu에서 Jupyter notebook(Jupyter Lab) 설치는 다음과 같습니다.$ pip install jupyter $ pip install jupyterlab단,...
카카오톡 섬네일 이미지와 문구 수정 방법
워드프레스 웹사이트 구축 후 도메인 연결하고 지인에게 카카오톡으로 링크 보낼 때 다음과 같이 섬네일 이미지와 문구가 원하지 않아 이를 수정하고 싶은 경우가 있습니다.수정...