다음을 통해 공유


Get Chat Completions - Get Chat Completions

제공된 채팅 메시지에 대한 채팅 완료를 가져옵니다. 완료는 다양한 작업을 지원하고 제공된 프롬프트 데이터에서 계속되거나 "완료"되는 텍스트를 생성합니다. 메서드는 지정된 엔드포인트에서 /chat/completions 경로에 REST API를 호출합니다.

POST https://{resource}.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
resource
path True

string

Azure AI Services 리소스 이름(예: 'my-resource')

api-version
query True

string

minLength: 1

이 작업에 사용할 API 버전입니다.

요청 헤더

Name 필수 형식 Description
extra-parameters

ExtraParameters

REST API에 의해 정의되지 않은 추가 매개 변수가 JSON 요청 페이로드에 전달되는 경우 발생하는 동작을 제어합니다. 그러면 HTTP 요청 헤더 extra-parameters설정됩니다.

요청 본문

Name 필수 형식 Description
messages True ChatRequestMessage[]:

이 채팅 완료 요청과 연결된 컨텍스트 메시지의 컬렉션입니다. 일반적인 사용은 도우미의 동작에 대한 지침을 제공하는 시스템 역할에 대한 채팅 메시지와 사용자 역할과 도우미 역할 간의 메시지를 번갈아 가며 시작하는 것입니다.

frequency_penalty

number (float)

minimum: -2
maximum: 2

생성된 텍스트의 누적 빈도에 따라 생성된 토큰이 나타날 확률에 영향을 주는 값입니다. 양수 값을 사용하면 빈도가 높아질 때 토큰이 표시될 가능성이 낮아지고 모델이 동일한 문을 축자로 반복할 가능성이 줄어듭니다. 지원되는 범위는 [-2, 2]입니다.

max_tokens

integer (int32)

minimum: 0

생성할 최대 토큰 수입니다.

modalities

ChatCompletionsModality[]

모델이 채팅 완료 응답에 사용할 수 있는 형식입니다. 기본 형식은 text. 지원되지 않는 형식 조합을 표시하면 422 오류가 발생합니다.

model

string

엔드포인트에서 둘 이상의 모델을 사용할 수 있는 경우 사용할 특정 AI 모델의 ID입니다.

presence_penalty

number (float)

minimum: -2
maximum: 2

생성된 텍스트의 기존 존재에 따라 생성된 토큰이 나타날 확률에 영향을 주는 값입니다. 양수 값을 사용하면 토큰이 이미 있을 때 표시될 가능성이 낮아지고 모델이 새 토픽을 출력할 가능성이 높아집니다. 지원되는 범위는 [-2, 2]입니다.

response_format ChatCompletionsResponseFormat:

모델이 출력해야 하는 형식을 지정하는 개체입니다.

{ "type": "json_schema", "json_schema": {...} } 설정하면 구조적 출력이 활성화되어 모델이 제공된 JSON 스키마와 일치하도록 합니다.

{ "type": "json_object" } 설정하면 JSON 모드가 활성화되어 모델이 생성하는 메시지가 유효한 JSON인지 확인합니다.

중요: JSON 모드를 사용하는 경우 시스템 또는 사용자 메시지를 통해 JSON을 직접 생성하도록 모델에 지시 해야 합니다 . 이렇게 하지 않으면 생성이 토큰 제한에 도달할 때까지 모델은 공백의 끝없는 스트림을 생성하여 장기 실행되고 겉보기에 "중단" 요청이 발생할 수 있습니다. 또한 생성이 finish_reason="length" 초과했거나 대화가 최대 컨텍스트 길이를 초과했음을 나타내는 max_tokens메시지 콘텐츠가 부분적으로 차단될 수 있습니다.

seed

integer (int64)

지정된 경우 시스템은 동일한 시드 및 매개 변수가 있는 반복된 요청이 동일한 결과를 반환하도록 결정적으로 샘플링하는 데 최선의 노력을 기울입니다. 결정주의는 보장되지 않습니다.

stop

string[]

완성 생성을 종료할 텍스트 시퀀스의 컬렉션입니다.

stream

boolean

이 요청에 대해 채팅 완료를 스트리밍해야 하는지 여부를 나타내는 값입니다.

temperature

number (float)

minimum: 0
maximum: 1

이를 사용할 샘플링 온도는 생성된 완성의 명백한 창의성을 제어합니다. 값이 높을수록 출력이 더 임의로 생성되고 값이 낮으면 결과가 더 집중되고 결정적입니다. 이러한 두 설정의 상호 작용을 예측하기 어렵기 때문에 동일한 완료 요청에 대한 온도 및 top_p 수정하지 않는 것이 좋습니다. 지원되는 범위는 [0, 1]입니다.

tool_choice

지정된 경우 모델은 채팅 완료 응답에 사용할 수 있는 제공된 도구를 구성합니다.

tools

ChatCompletionsToolDefinition[]

모델에서 호출하도록 요청할 수 있는 도구 목록입니다. 현재 함수만 도구로 지원됩니다. 모델은 함수 호출 요청으로 응답하고 해당 함수에 대한 JSON 형식의 입력 인수를 제공할 수 있습니다.

top_p

number (float)

minimum: 0
maximum: 1

핵 샘플링이라고 하는 온도를 사용하여 샘플링하는 대안입니다. 이 값을 사용하면 모델이 제공된 확률 질량을 가진 토큰의 결과를 고려하게 됩니다. 예를 들어 값이 0.15이면 상위 15개% 확률 질량으로 구성된 토큰만 고려됩니다. 이러한 두 설정의 상호 작용을 예측하기 어렵기 때문에 동일한 완료 요청에 대한 온도 및 top_p 수정하지 않는 것이 좋습니다. 지원되는 범위는 [0, 1]입니다.

응답

Name 형식 Description
200 OK

ChatCompletions

요청이 성공했습니다.

Other Status Codes

Azure.Core.Foundations.ErrorResponse

예기치 않은 오류 응답입니다.

헤더

x-ms-error-code: string

보안

api-key

형식: apiKey
In(다음 안에): header

OAuth2Auth

형식: oauth2
Flow: implicit
권한 부여 URL: https://login.microsoftonline.com/common/oauth2/v2.0/authorize

범위

Name Description
https://cognitiveservices.azure.com/.default

예제

Audio modality chat completion
maximum set chat completion
minimum set chat completion

Audio modality chat completion

샘플 요청

POST https://{resource}.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview


{
  "modalities": [
    "text",
    "audio"
  ],
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant"
    },
    {
      "role": "user",
      "content": [
        {
          "type": "input_audio",
          "input_audio": {
            "data": "<base64 encoded audio data>",
            "format": "wav"
          }
        }
      ]
    },
    {
      "role": "assistant",
      "content": null,
      "audio": {
        "id": "abcdef1234"
      }
    },
    {
      "role": "user",
      "content": [
        {
          "type": "input_audio",
          "input_audio": {
            "data": "<base64 encoded audio data>",
            "format": "wav"
          }
        }
      ]
    }
  ],
  "frequency_penalty": 0,
  "presence_penalty": 0,
  "temperature": 0,
  "top_p": 0,
  "seed": 21,
  "model": "my-model-name"
}

샘플 응답

{
  "id": "kgousajxgzyhugvqekuswuqbk",
  "object": "chat.completion",
  "created": 1696522361,
  "model": "my-model-name",
  "usage": {
    "completion_tokens": 19,
    "prompt_tokens": 28,
    "total_tokens": 16,
    "completion_tokens_details": {
      "audio_tokens": 5,
      "total_tokens": 5
    },
    "prompt_tokens_details": {
      "audio_tokens": 10,
      "cached_tokens": 0
    }
  },
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": null,
        "tool_calls": null,
        "audio": {
          "id": "abcdef1234",
          "format": "wav",
          "data": "<base64 encoded audio data>",
          "expires_at": 1896522361,
          "transcript": "This is a sample transcript"
        }
      }
    }
  ]
}

maximum set chat completion

샘플 요청

POST https://{resource}.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview


{
  "modalities": [
    "text"
  ],
  "messages": [
    {
      "role": "system",
      "content": "You are a helpful assistant"
    },
    {
      "role": "user",
      "content": "Explain Riemann's conjecture"
    },
    {
      "role": "assistant",
      "content": "The Riemann Conjecture is a deep mathematical conjecture around prime numbers and how they can be predicted. It was first published in Riemann's groundbreaking 1859 paper. The conjecture states that the Riemann zeta function has its zeros only at the negative even integers and complex numbers with real part 1/21. Many consider it to be the most important unsolved problem in pure mathematics. The Riemann hypothesis is a way to predict the probability that numbers in a certain range are prime that was also devised by German mathematician Bernhard Riemann in 18594."
    },
    {
      "role": "user",
      "content": "Ist it proved?"
    }
  ],
  "frequency_penalty": 0,
  "stream": true,
  "presence_penalty": 0,
  "temperature": 0,
  "top_p": 0,
  "max_tokens": 255,
  "response_format": {
    "type": "text"
  },
  "stop": [
    "<|endoftext|>"
  ],
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "my-function-name",
        "description": "A function useful to know if a theroem is proved or not"
      }
    }
  ],
  "seed": 21,
  "model": "my-model-name"
}

샘플 응답

{
  "id": "kgousajxgzyhugvqekuswuqbk",
  "object": "chat.completion",
  "created": 18,
  "model": "my-model-name",
  "usage": {
    "completion_tokens": 19,
    "prompt_tokens": 28,
    "total_tokens": 16
  },
  "choices": [
    {
      "index": 7,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": null,
        "tool_calls": [
          {
            "id": "yrobmilsrugmbwukmzo",
            "type": "function",
            "function": {
              "name": "my-function-name",
              "arguments": "{ \"arg1\": \"value1\", \"arg2\": \"value2\" }"
            }
          }
        ]
      }
    }
  ]
}

minimum set chat completion

샘플 요청

POST https://{resource}.services.ai.azure.com/models/chat/completions?api-version=2024-05-01-preview

{
  "messages": [
    {
      "role": "user",
      "content": "Explain Riemann's conjecture"
    }
  ]
}

샘플 응답

{
  "id": "kgousajxgzyhugvqekuswuqbk",
  "object": "chat.completion",
  "created": 1234567890,
  "model": "my-model-name",
  "usage": {
    "prompt_tokens": 205,
    "completion_tokens": 5,
    "total_tokens": 210
  },
  "choices": [
    {
      "index": 0,
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "The Riemann Conjecture is a deep mathematical conjecture around prime numbers and how they can be predicted. It was first published in Riemann's groundbreaking 1859 paper. The conjecture states that the Riemann zeta function has its zeros only at the negative even integers and complex numbers with real part 1/21. Many consider it to be the most important unsolved problem in pure mathematics. The Riemann hypothesis is a way to predict the probability that numbers in a certain range are prime that was also devised by German mathematician Bernhard Riemann in 18594"
      }
    }
  ]
}

정의

Name Description
AudioContentFormat

오디오에 사용할 수 있는 오디오 형식의 표현입니다.

Azure.Core.Foundations.Error

오류 개체입니다.

Azure.Core.Foundations.ErrorResponse

오류 세부 정보가 포함된 응답입니다.

Azure.Core.Foundations.InnerError

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 https://github.com/microsoft/api-guidelines/blob/vNext/azure/Guidelines.md#handling-errors.

ChatChoice

전체 채팅 완료 요청의 일부로 단일 프롬프트 완료의 표현입니다. 일반적으로 제공된 프롬프트당 기본값이 1인 n 선택 항목이 생성됩니다. 토큰 제한 및 기타 설정은 생성된 선택 항목 수를 제한할 수 있습니다.

ChatCompletions

채팅 완료 요청의 응답 데이터 표현입니다. 완료는 다양한 작업을 지원하고 제공된 프롬프트 데이터에서 계속되거나 "완료"되는 텍스트를 생성합니다.

ChatCompletionsAudio

모델에서 생성된 오디오의 표현입니다.

ChatCompletionsModality

모델이 채팅 완료 응답에 사용할 수 있는 형식입니다.

ChatCompletionsOptions

채팅 완료 요청에 대한 구성 정보입니다. 완료는 다양한 작업을 지원하고 제공된 프롬프트 데이터에서 계속되거나 "완료"되는 텍스트를 생성합니다.

ChatCompletionsResponseFormatJsonObject

응답이 유효한 JSON 개체를 내보내도록 제한하는 채팅 완료에 대한 응답 형식입니다. JSON 모드를 사용하도록 설정하려면 일부 AI 모델에서 시스템 또는 사용자 메시지를 통해 JSON을 생성하도록 모델에 지시해야 할 수도 있습니다.

ChatCompletionsResponseFormatJsonSchema

호출자가 지정한 JSON 스키마를 사용하여 응답을 유효한 JSON 개체 내보내도록 제한하는 채팅 완료에 대한 응답 형식입니다.

ChatCompletionsResponseFormatJsonSchemaDefinition

응답에 필요한 JSON 스키마 및 관련 메타데이터의 정의입니다.

ChatCompletionsResponseFormatText

텍스트 응답을 내보내는 채팅 완료에 대한 응답 형식입니다. 기본 응답 형식입니다.

ChatCompletionsToolCall

AI 모델에서 요청한 함수 도구 호출입니다.

ChatCompletionsToolDefinition

함수를 호출할 수 있는 채팅 완료 도구의 정의입니다.

ChatRequestAssistantMessage

도우미의 응답 또는 작업을 나타내는 요청 채팅 메시지입니다.

ChatRequestAudioReference

모델에서 생성된 오디오 응답에 대한 참조입니다.

ChatRequestSystemMessage

모델이 채팅 완료 응답을 생성하는 방법에 영향을 주는 시스템 지침이 포함된 요청 채팅 메시지입니다.

ChatRequestToolMessage

구성된 도구에서 요청된 출력을 나타내는 요청 채팅 메시지입니다.

ChatRequestUserMessage

도우미에 대한 사용자 입력을 나타내는 요청 채팅 메시지입니다.

ChatResponseMessage

응답에서 받은 채팅 메시지의 표현입니다.

ChatRole

채팅 완료 상호 작용 내에서 메시지의 의도된 목적에 대한 설명입니다.

CompletionsFinishReason

완료 응답이 완료된 방식의 표현입니다.

CompletionsUsage

완료 요청에 대해 처리된 토큰 개수의 표현입니다. 개수는 프롬프트, 선택 항목, 선택 대체 항목, best_of 세대 및 기타 소비자의 모든 토큰을 고려합니다.

CompletionsUsageDetails

완료에 사용되는 토큰의 분석입니다.

ExtraParameters

REST API에 의해 정의되지 않은 추가 매개 변수가 JSON 요청 페이로드에 전달되는 경우 발생하는 동작을 제어합니다.

FunctionCall

모델에서 생성한 대로 호출해야 하는 함수의 이름 및 인수입니다.

FunctionDefinition

일치하는 사용자 입력에 대한 응답으로 채팅 완료가 호출될 수 있는 호출자 지정 함수의 정의입니다.

PromptUsageDetails

프롬프트/채팅 기록에 사용되는 토큰의 분석입니다.

AudioContentFormat

오디오에 사용할 수 있는 오디오 형식의 표현입니다.

Description
mp3

오디오를 MP3 형식으로 지정합니다.

wav

WAV 형식의 오디오를 지정합니다.

Azure.Core.Foundations.Error

오류 개체입니다.

Name 형식 Description
code

string

서버에서 정의한 오류 코드 집합 중 하나입니다.

details

Azure.Core.Foundations.Error[]

이 보고된 오류로 이어진 특정 오류에 대한 세부 정보 배열입니다.

innererror

Azure.Core.Foundations.InnerError

오류에 대한 현재 개체보다 더 구체적인 정보를 포함하는 개체입니다.

message

string

사람이 읽을 수 있는 오류 표현입니다.

target

string

오류의 대상입니다.

Azure.Core.Foundations.ErrorResponse

오류 세부 정보가 포함된 응답입니다.

Name 형식 Description
error

Azure.Core.Foundations.Error

오류 개체입니다.

Azure.Core.Foundations.InnerError

오류에 대한 보다 구체적인 정보를 포함하는 개체입니다. Microsoft One API 지침에 따라 https://github.com/microsoft/api-guidelines/blob/vNext/azure/Guidelines.md#handling-errors.

Name 형식 Description
code

string

서버에서 정의한 오류 코드 집합 중 하나입니다.

innererror

Azure.Core.Foundations.InnerError

내부 오류입니다.

ChatChoice

전체 채팅 완료 요청의 일부로 단일 프롬프트 완료의 표현입니다. 일반적으로 제공된 프롬프트당 기본값이 1인 n 선택 항목이 생성됩니다. 토큰 제한 및 기타 설정은 생성된 선택 항목 수를 제한할 수 있습니다.

Name 형식 Description
finish_reason

CompletionsFinishReason

이 채팅 완료 선택이 생성된 것을 완료한 이유입니다.

index

integer (int32)

이 채팅 완료와 연결된 순서가 지정된 인덱스입니다.

message

ChatResponseMessage

지정된 채팅 완료 프롬프트에 대한 채팅 메시지입니다.

ChatCompletions

채팅 완료 요청의 응답 데이터 표현입니다. 완료는 다양한 작업을 지원하고 제공된 프롬프트 데이터에서 계속되거나 "완료"되는 텍스트를 생성합니다.

Name 형식 Description
choices

ChatChoice[]

이 완료 응답과 관련된 완료 선택 항목의 컬렉션입니다. 일반적으로 제공된 프롬프트당 기본값이 1인 n 선택 항목이 생성됩니다. 토큰 제한 및 기타 설정은 생성된 선택 항목 수를 제한할 수 있습니다.

created

integer (unixtime)

이 완료 응답에 대한 생성 활동과 연결된 첫 번째 타임스탬프는 1970년 1월 1일 00:00 Unix Epoch가 시작된 후 초로 표시됩니다.

id

string

이 채팅 완료 응답과 연결된 고유 식별자입니다.

model

string

채팅 완료에 사용되는 모델입니다.

object enum:

chat.completion

항상 chat.completion응답 개체 형식입니다.

usage

CompletionsUsage

이 완료 작업의 일부로 처리되고 생성된 토큰에 대한 사용 정보입니다.

ChatCompletionsAudio

모델에서 생성된 오디오의 표현입니다.

Name 형식 Description
data

string

Base64로 인코딩된 오디오 데이터

expires_at

integer (unixtime)

오디오 조각이 만료되고 멀티 턴 대화에서 ID로 더 이상 참조할 수 없는 Unix 타임스탬프(초)입니다.

format

AudioContentFormat

오디오 콘텐츠의 형식입니다. 형식이 제공되지 않으면 입력 오디오 요청에 사용된 형식과 일치합니다.

id

string

오디오 응답에 대한 고유 식별자입니다. 이 값은 전체 오디오 개체를 전달하는 대신 채팅 기록 메시지에 사용할 수 있습니다.

transcript

string

오디오 파일의 대본입니다.

ChatCompletionsModality

모델이 채팅 완료 응답에 사용할 수 있는 형식입니다.

Description
audio

모델은 오디오를 생성할 수 있습니다.

text

모델은 텍스트만 생성할 수 있습니다.

ChatCompletionsOptions

채팅 완료 요청에 대한 구성 정보입니다. 완료는 다양한 작업을 지원하고 제공된 프롬프트 데이터에서 계속되거나 "완료"되는 텍스트를 생성합니다.

Name 형식 Default value Description
frequency_penalty

number (float)

minimum: -2
maximum: 2
0

생성된 텍스트의 누적 빈도에 따라 생성된 토큰이 나타날 확률에 영향을 주는 값입니다. 양수 값을 사용하면 빈도가 높아질 때 토큰이 표시될 가능성이 낮아지고 모델이 동일한 문을 축자로 반복할 가능성이 줄어듭니다. 지원되는 범위는 [-2, 2]입니다.

max_tokens

integer (int32)

minimum: 0

생성할 최대 토큰 수입니다.

messages ChatRequestMessage[]:

이 채팅 완료 요청과 연결된 컨텍스트 메시지의 컬렉션입니다. 일반적인 사용은 도우미의 동작에 대한 지침을 제공하는 시스템 역할에 대한 채팅 메시지와 사용자 역할과 도우미 역할 간의 메시지를 번갈아 가며 시작하는 것입니다.

modalities

ChatCompletionsModality[]

모델이 채팅 완료 응답에 사용할 수 있는 형식입니다. 기본 형식은 text. 지원되지 않는 형식 조합을 표시하면 422 오류가 발생합니다.

model

string

엔드포인트에서 둘 이상의 모델을 사용할 수 있는 경우 사용할 특정 AI 모델의 ID입니다.

presence_penalty

number (float)

minimum: -2
maximum: 2
0

생성된 텍스트의 기존 존재에 따라 생성된 토큰이 나타날 확률에 영향을 주는 값입니다. 양수 값을 사용하면 토큰이 이미 있을 때 표시될 가능성이 낮아지고 모델이 새 토픽을 출력할 가능성이 높아집니다. 지원되는 범위는 [-2, 2]입니다.

response_format ChatCompletionsResponseFormat:

모델이 출력해야 하는 형식을 지정하는 개체입니다.

{ "type": "json_schema", "json_schema": {...} } 설정하면 구조적 출력이 활성화되어 모델이 제공된 JSON 스키마와 일치하도록 합니다.

{ "type": "json_object" } 설정하면 JSON 모드가 활성화되어 모델이 생성하는 메시지가 유효한 JSON인지 확인합니다.

중요: JSON 모드를 사용하는 경우 시스템 또는 사용자 메시지를 통해 JSON을 직접 생성하도록 모델에 지시 해야 합니다 . 이렇게 하지 않으면 생성이 토큰 제한에 도달할 때까지 모델은 공백의 끝없는 스트림을 생성하여 장기 실행되고 겉보기에 "중단" 요청이 발생할 수 있습니다. 또한 생성이 finish_reason="length" 초과했거나 대화가 최대 컨텍스트 길이를 초과했음을 나타내는 max_tokens메시지 콘텐츠가 부분적으로 차단될 수 있습니다.

seed

integer (int64)

지정된 경우 시스템은 동일한 시드 및 매개 변수가 있는 반복된 요청이 동일한 결과를 반환하도록 결정적으로 샘플링하는 데 최선의 노력을 기울입니다. 결정주의는 보장되지 않습니다.

stop

string[]

완성 생성을 종료할 텍스트 시퀀스의 컬렉션입니다.

stream

boolean

이 요청에 대해 채팅 완료를 스트리밍해야 하는지 여부를 나타내는 값입니다.

temperature

number (float)

minimum: 0
maximum: 1
0.7

이를 사용할 샘플링 온도는 생성된 완성의 명백한 창의성을 제어합니다. 값이 높을수록 출력이 더 임의로 생성되고 값이 낮으면 결과가 더 집중되고 결정적입니다. 이러한 두 설정의 상호 작용을 예측하기 어렵기 때문에 동일한 완료 요청에 대한 온도 및 top_p 수정하지 않는 것이 좋습니다. 지원되는 범위는 [0, 1]입니다.

tool_choice

지정된 경우 모델은 채팅 완료 응답에 사용할 수 있는 제공된 도구를 구성합니다.

tools

ChatCompletionsToolDefinition[]

모델에서 호출하도록 요청할 수 있는 도구 목록입니다. 현재 함수만 도구로 지원됩니다. 모델은 함수 호출 요청으로 응답하고 해당 함수에 대한 JSON 형식의 입력 인수를 제공할 수 있습니다.

top_p

number (float)

minimum: 0
maximum: 1
1

핵 샘플링이라고 하는 온도를 사용하여 샘플링하는 대안입니다. 이 값을 사용하면 모델이 제공된 확률 질량을 가진 토큰의 결과를 고려하게 됩니다. 예를 들어 값이 0.15이면 상위 15개% 확률 질량으로 구성된 토큰만 고려됩니다. 이러한 두 설정의 상호 작용을 예측하기 어렵기 때문에 동일한 완료 요청에 대한 온도 및 top_p 수정하지 않는 것이 좋습니다. 지원되는 범위는 [0, 1]입니다.

ChatCompletionsResponseFormatJsonObject

응답이 유효한 JSON 개체를 내보내도록 제한하는 채팅 완료에 대한 응답 형식입니다. JSON 모드를 사용하도록 설정하려면 일부 AI 모델에서 시스템 또는 사용자 메시지를 통해 JSON을 생성하도록 모델에 지시해야 할 수도 있습니다.

Name 형식 Description
type string:

json_object

채팅 완료에 사용할 응답 형식 유형입니다.

ChatCompletionsResponseFormatJsonSchema

호출자가 지정한 JSON 스키마를 사용하여 응답을 유효한 JSON 개체 내보내도록 제한하는 채팅 완료에 대한 응답 형식입니다.

Name 형식 Description
json_schema

ChatCompletionsResponseFormatJsonSchemaDefinition

응답에 필요한 JSON 스키마 및 관련 메타데이터의 정의입니다.

type string:

json_schema

채팅 완료에 사용할 응답 형식 유형입니다.

ChatCompletionsResponseFormatJsonSchemaDefinition

응답에 필요한 JSON 스키마 및 관련 메타데이터의 정의입니다.

Name 형식 Default value Description
description

string

AI 모델에서 이 형식으로 응답을 생성하는 방법을 결정하는 데 사용하는 응답 형식에 대한 설명입니다.

name

string

응답 형식의 이름입니다. a-z, A-Z, 0-9이거나 최대 길이가 64인 밑줄과 대시를 포함해야 합니다.

schema

JSON 스키마의 정의

strict

boolean

False

출력을 생성할 때 엄격한 스키마 준수를 사용하도록 설정할지 여부입니다. true로 설정하면 모델은 항상 schema 필드에 정의된 정확한 스키마를 따릅니다. strict true경우 JSON 스키마의 하위 집합만 지원됩니다.

ChatCompletionsResponseFormatText

텍스트 응답을 내보내는 채팅 완료에 대한 응답 형식입니다. 기본 응답 형식입니다.

Name 형식 Description
type string:

text

채팅 완료에 사용할 응답 형식 유형입니다.

ChatCompletionsToolCall

AI 모델에서 요청한 함수 도구 호출입니다.

Name 형식 Description
function

FunctionCall

AI 모델에서 요청한 함수 호출의 세부 정보입니다.

id

string

도구 호출의 ID입니다.

type enum:

function

도구 호출의 유형입니다. 현재는 function만 지원됩니다.

ChatCompletionsToolDefinition

함수를 호출할 수 있는 채팅 완료 도구의 정의입니다.

Name 형식 Description
function

FunctionDefinition

함수 도구에 대한 함수 정의 세부 정보입니다.

type enum:

function

도구의 형식입니다. 현재는 function만 지원됩니다.

ChatRequestAssistantMessage

도우미의 응답 또는 작업을 나타내는 요청 채팅 메시지입니다.

Name 형식 Description
audio

ChatRequestAudioReference

다중 턴 대화에서 이전 응답에 의해 생성된 오디오입니다.

content

string

메시지의 내용입니다.

role string:

assistant

이 메시지와 연결된 채팅 역할입니다.

tool_calls

ChatCompletionsToolCall[]

이 도구는 해결해야 하는 호출을 호출하고 구성된 대로 확인하도록 채팅 완료 요청에 대한 후속 입력 메시지에 출력을 추가해야 합니다.

ChatRequestAudioReference

모델에서 생성된 오디오 응답에 대한 참조입니다.

Name 형식 Description
id

string

오디오 응답에 대한 고유 식별자입니다. 이 값은 이전 오디오 완성의 ID에 해당합니다.

ChatRequestSystemMessage

모델이 채팅 완료 응답을 생성하는 방법에 영향을 주는 시스템 지침이 포함된 요청 채팅 메시지입니다.

Name 형식 Description
content

string

시스템 메시지의 내용입니다.

role string:

system

이 메시지와 연결된 채팅 역할입니다.

ChatRequestToolMessage

구성된 도구에서 요청된 출력을 나타내는 요청 채팅 메시지입니다.

Name 형식 Description
content

string

메시지의 내용입니다.

role string:

tool

이 메시지와 연결된 채팅 역할입니다.

tool_call_id

string

제공된 콘텐츠로 확인된 도구 호출의 ID입니다.

ChatRequestUserMessage

도우미에 대한 사용자 입력을 나타내는 요청 채팅 메시지입니다.

Name 형식 Description
content

선택한 모델에 따라 사용 가능한 입력 형식이 다른 사용자 메시지의 내용입니다.

role string:

user

이 메시지와 연결된 채팅 역할입니다.

ChatResponseMessage

응답에서 받은 채팅 메시지의 표현입니다.

Name 형식 Description
audio

ChatCompletionsAudio

모델이 오디오를 생성하도록 구성된 경우 모델에 의해 메시지에 대한 응답으로 생성된 오디오입니다.

content

string

메시지의 내용입니다.

role

ChatRole

메시지와 연결된 채팅 역할입니다.

tool_calls

ChatCompletionsToolCall[]

이 도구는 해결해야 하는 호출을 호출하고 구성된 대로 확인하도록 채팅 완료 요청에 대한 후속 입력 메시지에 출력을 추가해야 합니다.

ChatRole

채팅 완료 상호 작용 내에서 메시지의 의도된 목적에 대한 설명입니다.

Description
assistant

시스템 지시, 사용자 프롬프트 입력에 대한 응답을 제공하는 역할입니다.

developer

사용자 메시지보다 우선 순위가 지정된 모델에 대한 지침을 제공하는 역할입니다.

system

도우미의 동작을 지시하거나 설정하는 역할입니다.

tool

채팅 완료 작업 내에서 확장 도구 작업을 나타내는 역할입니다.

user

채팅 완료를 위한 입력을 제공하는 역할입니다.

CompletionsFinishReason

완료 응답이 완료된 방식의 표현입니다.

Description
content_filter

완료 시 콘텐츠 조정 정책에 따라 잠재적으로 중요한 것으로 식별되는 응답이 생성되었습니다.

length

완료는 생성이 완료되기 전에 사용 가능한 토큰 제한을 모두 사용했습니다.

stop

완료는 정상적으로 종료되고 토큰 생성이 종료되었습니다.

tool_calls

모델이 제공된 도구를 호출하여 출력을 완료했습니다.

CompletionsUsage

완료 요청에 대해 처리된 토큰 개수의 표현입니다. 개수는 프롬프트, 선택 항목, 선택 대체 항목, best_of 세대 및 기타 소비자의 모든 토큰을 고려합니다.

Name 형식 Description
completion_tokens

integer (int32)

모든 완료 배출에서 생성된 토큰 수입니다.

completion_tokens_details

CompletionsUsageDetails

완료 시 사용되는 토큰 분석입니다.

prompt_tokens

integer (int32)

제공된 프롬프트에서 완료 요청에 대한 토큰 수입니다.

prompt_tokens_details

PromptUsageDetails

프롬프트/채팅 기록에 사용되는 토큰 분석입니다.

total_tokens

integer (int32)

완료 요청 및 응답에 대해 처리된 총 토큰 수입니다.

CompletionsUsageDetails

완료에 사용되는 토큰의 분석입니다.

Name 형식 Description
audio_tokens

integer (int32)

오디오 입력에 해당하는 토큰 수입니다.

total_tokens

integer (int32)

완료 요청 및 응답에 대해 처리된 총 토큰 수입니다.

ExtraParameters

REST API에 의해 정의되지 않은 추가 매개 변수가 JSON 요청 페이로드에 전달되는 경우 발생하는 동작을 제어합니다.

Description
drop

서비스는 요청 페이로드에서 추가 매개 변수를 무시(삭제)합니다. 알려진 매개 변수만 백 엔드 AI 모델에 전달합니다.

error

요청 페이로드에서 추가 매개 변수를 검색하면 서비스가 오류 발생합니다. 서비스 기본값입니다.

pass-through

서비스는 백 엔드 AI 모델에 추가 매개 변수를 전달합니다.

FunctionCall

모델에서 생성한 대로 호출해야 하는 함수의 이름 및 인수입니다.

Name 형식 Description
arguments

string

모델에서 JSON 형식으로 생성한 대로 함수를 호출할 인수입니다. 모델이 항상 유효한 JSON을 생성하지는 않으며 함수 스키마에 의해 정의되지 않은 매개 변수를 환각할 수 있습니다. 함수를 호출하기 전에 코드에서 인수의 유효성을 검사합니다.

name

string

호출할 함수의 이름입니다.

FunctionDefinition

일치하는 사용자 입력에 대한 응답으로 채팅 완료가 호출될 수 있는 호출자 지정 함수의 정의입니다.

Name 형식 Description
description

string

함수의 기능에 대한 설명입니다. 모델은 함수를 선택하고 해당 매개 변수를 해석할 때 이 설명을 사용합니다.

name

string

호출할 함수의 이름입니다.

parameters

JSON 스키마 개체로 설명된 함수가 허용하는 매개 변수입니다.

PromptUsageDetails

프롬프트/채팅 기록에 사용되는 토큰의 분석입니다.

Name 형식 Description
audio_tokens

integer (int32)

오디오 입력에 해당하는 토큰 수입니다.

cached_tokens

integer (int32)

캐시된 총 토큰 수입니다.