Справочник по OpenAI API
Чат
Создать чат-ответ
POST https://api.rockapi.ru/openai/v1/chat/completions
Создает ответ модели для данного чата.
Тело запроса
Параметр | Тип | Обязательный | По умолчанию | Описание | Под-параметры |
---|---|---|---|---|---|
messages | array | Обязательный | - | Список сообщений, составляющих текущую беседу. Пример кода на Python. | - role (string): Обязательный. Роль автора сообщения.- content (string или array): Обязательный для большинства ролей. Содержание сообщения.- name (string): Необязательный. Имя участника.- tool_calls (array): Необязательный. Вызовы инструментов, сгенерированные м оделью (для роли "assistant").- function_call (object): Устарело. Информация о вызове функции (для роли "assistant").- tool_call_id (string): Обязательный для роли "tool". ID вызова инструмента, на который дается ответ. |
model | string | Обязательный | - | ID модели для использования. См. таблицу совместимости моделей с конечными точками для деталей о том, какие модели работают с Chat API. | - |
frequency_penalty | number или null | Необязательный | 0 | Число от -2.0 до 2.0. Положительные значения штрафуют новые токены на основе их частоты в тексте до сих пор, уменьшая вероятность того, что модель повторит ту же строку дословно. Подробнее о штрафах за частоту и наличие. | - |
logit_bias | map | Необязательный | null | Изменяет вероятность появления указанных токенов в завершении. Принимает объект JSON, который сопоставляет токены (указанные по их ID токенов в токенизаторе) с соответствующим значением смещения от -100 до 100. | - |
logprobs | boolean или null | Необязательный | false | Возвращать ли логарифмические вероятности выходных токенов. Если true, возвращает логарифмические вероятности каждого выходного токена в content сообщения. | - |
top_logprobs | integer или null | Необязательный | - | Число от 0 до 20, указывающее количество наиболее вероятных токенов для возвращения на каждой позиции токена, каждый с ассоциированной логарифмической вероятностью. logprobs должен быть установлен в true , если используется этот параметр. | - |
max_tokens | integer или null | Необязательный | - | Максимальное количество токенов, которые могут быть сгенерированы в чат-завершении. Общая длина входных токенов и сгенерированных токенов ограничена длиной контекста модели. Пример кода на Python для подсчета токенов. | - |
n | integer или null | Необязательный | 1 | Сколько вариантов завершений чата генерировать для каждого входного сообщения. Обратите внимание, что плата буде т взиматься на основе количества сгенерированных токенов по всем вариантам. Оставьте n как 1 , чтобы минимизировать расходы. | - |
presence_penalty | number или null | Необязательный | 0 | Число от -2.0 до 2.0. Положительные значения штрафуют новые токены на основе того, появляются ли они в тексте до сих пор, увеличивая вероятность того, что модель будет говорить о новых темах. Подробнее о штрафах за частоту и наличие. | - |
response_format | object | Необязательный | - | Объект, указывающий формат, который модель должна выводить. Совместим с GPT-4 Turbo и всеми моделями GPT-3.5 Turbo, новее gpt-3.5-turbo-1106 . Установка на {"type": "json_object"} включает режим JSON, который гарантирует, что сообщение, сгенерированное моделью, является допустимым JSON. | - |
seed | integer или null | Необязательный | - | Эта функция находится в стадии бета-тестирования. Если указано, наша система постарается сделать выбор детерминированным, так что повт орные запросы с одним и тем же seed и параметрами должны возвращать один и тот же результат. Детерминизм не гарантируется, и вы должны ссылаться на параметр ответа system_fingerprint , чтобы отслеживать изменения на заднем фоне. | - |
service_tier | string или null | Необязательный | null | Указывает уровень обслуживания для обработки запроса. Этот параметр актуален для клиентов, подписанных на сервис уровня scale. Если установлен в 'auto', система будет использовать кредиты уровня scale до их исчерпания. Если установлен в 'default', запрос будет обработан с использованием уровня обслуживания по умолчанию с более низким SLA и без гарантий задержки. Когда этот параметр установлен, тело ответа будет включать использованный service_tier . | - |
stop | string / array / null | Необязательный | null | До 4 последовательностей, где API прекратит генерацию дальнейших токенов. | - |
stream | boolean или null | Необязательный | false | Если установлено, частичные дельты сообщений будут отправлены, как в ChatGPT. Токены будут отправлены как данные только событий сервера, как только они станут доступны, с завершением потока сообщением data: [DONE] . Пример кода на Python. | - |
stream_options | object или null | Необязательный | null | Параметры для потокового ответа. Устанавливайте это только при установке stream: true . | - |
temperature | number или null | Необязательный | 1 | Какую температуру выборки использовать, от 0 до 2. Более высокие значения, такие как 0.8, сделают выход более случайным, в то время как более низкие значения, такие как 0.2, сделают его более сфокусированным и детерминированным. Мы обычно рекомендуем изменять это или top_p , но не оба сразу. | - |
top_p | number или null | Необязательный | 1 | Альтернатива выборке с температурой, называемая выборкой по ядру, при которой модель рассматривает результаты токенов с вероятностью топ_p. Так 0.1 означает, что учитываются только токены, составляющие верхние 10% вероятности. Мы обычно рекомендуем изменять это или temperature , но не оба сразу. | - |
tools | array | Необязательный | - | Список инструментов, которые может вызвать модель. В настоящее время поддерживаются только функции как инструмент. Используйте это, чтобы предоставить список функций, для которых модель может генерировать JSON входные данные. Поддерживается максимум 128 функций. | - type (string): Обязательный. Тип инструмента. В настоящее время поддерживается только function .- function (object): Обязательный. Содержит name (string, обязательный), description (string, необязательный), и parameters (object, необязательный) |
tool_choice | string или object | Необязательный | - | Управляет тем, какой (если есть) инструмент вызывается моделью. none означает, что модель не будет вызывать инструмент и вместо этого генерирует сообщение. auto означает, что модель может выбирать между генерацией сообщения или вызовом одного или нескольких инструментов. required означает, что модель должна вызвать один или несколько инструментов. Указание конкретного инструмента через {"type": "function", "function": {"name": "my_function"}} заставляет модель вызвать этот инструмент. none является значением по умолчанию, когда инструменты отсутствуют. auto является значением по умолчанию, если инструменты присутствуют. | Если объект: - type (string): Обязательный. Тип инструмента. В настоящее время поддерживается только function .- function (object): Обязательный. Содержит name (string), указывающее имя вызываемой функции. |
parallel_tool_calls | boolean | Необязательный | true | Включить ли параллельный вызов функций при использовании инструмента. | - |
user | string | Необязательный | - | Уникальный идентификатор, представляющий вашего конечного пользователя, который может помочь OpenAI отслеживать и обнаруживать злоупотребления. Подробнее. | - |
function_call | string или object | Устарело | - | Устарело в пользу tool_choice . Управляет тем, какая (если есть) функция вызывается моделью. none означает, что модель не будет вызывать функцию и вместо этого генерирует сообщение. auto означает, что модель может выбирать между генерацией сообщения или вызовом функции. Указание конкретной функции через {"name": "my_function"} заставляет модель вызвать эту функцию. none является значением по умолчанию, когда функции отсутствуют. auto является значением по умолчанию, если функции присутствуют. | Если объект: - name (string): Имя вызываемой функции. |
functions | array | Устарело | - | Устарело в пользу tools . Список функций, для которых модель может генерировать JSON входные данные. | - name (string): Обязательный. Имя функции.- description (string): Необязательный. Описание того, что делает функция.- parameters (object): Необязательный. Параметры, принимаемые функцией, описанные как объект JSON Schema. |
Возвращает
Возвращает объект завершения чата, или поток последовательности объектов фрагмента завершения чата, если запрос передается потоком.
Пример запроса
curl https://api.rockapi.ru/openai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $ROCKAPI_API_KEY" \
-d '{
"model": "gpt-4o",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Hello!"
}
]
}'