Справочник. Завершение | Azure AI Foundry
Внимание
Элементы, обозначенные в этой статье как (предварительная версия), сейчас предлагаются в общедоступной предварительной версии. Эта предварительная версия предоставляется без соглашения об уровне обслуживания, и мы не рекомендуем ее для рабочих нагрузок. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены. Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.
Создает завершение для предоставленного запроса и параметров.
POST /completions?api-version=2024-04-01-preview
Имя. | In | Обязательное поле | Type | Описание |
---|---|---|---|---|
api-version | query | Истина | строка | Версия API в формате YYYY-MM-DD или YYYY-MM-DD-preview. |
Заголовок запроса
имени | Обязательно | Type | Описание |
---|---|---|---|
дополнительные параметры | строка | Поведение API при указании дополнительных параметров в полезных данных. Использование pass-through API для передачи параметра базовой модели. Используйте это значение, если вы хотите передать параметры, которые вы знаете, базовая модель может поддерживать. Использование drop API для удаления любого неподдерживаемого параметра. Используйте это значение, если необходимо использовать одну полезные данные для разных моделей, но один из дополнительных параметров может привести к ошибке модели, если она не поддерживается. Использование error API для отклонения любого дополнительного параметра в полезных данных. Можно указать только параметры, указанные в этом API, или возвращается ошибка 400. |
|
azureml-model-deployment | строка | Имя развертывания, в которое нужно направить запрос. Поддерживается для конечных точек, поддерживающих несколько развертываний. |
Текст запроса
имени | Обязательно | Type | Описание |
---|---|---|---|
prompt | Истина | Запрос на создание завершений для, закодированных в виде строки, массива строк, массива маркеров или массива массивов маркеров. Обратите внимание, что <\|endoftext\|> разделитель документов, который модель видит во время обучения, поэтому если запрос не указан, модель создается так, как будто с начала нового документа. |
|
frequency_penalty | number | Положительные значения выбраковывают новые маркеры в зависимости от существующей частоты в тексте на данный момент, уменьшая вероятность повторения той же буквальной строки. | |
max_tokens | integer | Максимальное количество маркеров, которые можно создать в завершении. Количество маркеров запроса плюс max_tokens не может превышать длину контекста модели. |
|
presence_penalty | number | Положительные значения выбраковывают новые маркеры в зависимости от того, отображаются ли они в тексте на данный момент, увеличивая вероятность обсуждений на новые темы. | |
seed | integer | При указании модель делает все возможное для детерминированного выборки, поэтому повторяющиеся запросы с одинаковыми параметрами должны возвращать тот же seed результат.Детерминированность не гарантируется, и вы должны ссылаться на system_fingerprint параметр ответа для отслеживания изменений в серверной части. |
|
stop | Последовательности, в которых API перестанет создавать дополнительные маркеры. Возвращенный текст не будет содержать последовательность остановки. | ||
потоковая передача | boolean | Потоковая передача частичного хода выполнения. Если задано, маркеры будут отправляться как события, отправленные сервером только для данных, как они становятся доступными, с потокомdata: [DONE] , завершаемым сообщением. |
|
Температура | number | Какая температура выборки используется в диапазоне от 0 до 2. Более высокие значения, такие как 0,8, делают выходные данные более случайными, а более низкие значения, такие как 0,2, делают его более ориентированным и детерминированным. Как правило, мы рекомендуем изменять temperature или top_p не оба. |
|
top_p | number | Альтернативой выборке с температурой является так называемая выборка ядра, где модель рассматривает результаты маркеров с top_p всего массива значений вероятности. Таким образом, 0,1 означает, что учитываются только маркеры, входящие в верхние 10% массива значений вероятности. Как правило, мы рекомендуем изменять top_p или temperature не оба. |
Отклики
Имя. | Тип | Описание |
---|---|---|
200 OK | CreateCompletionResponse | ОК |
401 — не авторизовано | НесанкционированныйError | Маркер доступа отсутствует или недопустим Заголовки x-ms-error-code: string |
404 Не найдено | NotFoundError | Модальность не поддерживается моделью. Проверьте документацию модели, чтобы узнать, какие маршруты доступны. Заголовки x-ms-error-code: string |
422 Необработаемая сущность | UnprocessableContentError | Запрос содержит необработаемое содержимое Заголовки x-ms-error-code: string |
429 — слишком много запросов | TooManyRequestsError | Вы достигли заданного ограничения скорости, и ваш запрос должен быть темпирован. Заголовки x-ms-error-code: string |
Другие коды состояния | ContentFilterError | Недопустимый запрос Заголовки x-ms-error-code: string |
Безопасность
Авторизация
Маркер с Bearer:
префиксом, например. Bearer abcde12345
Тип: apiKey
В: заголовок
AADToken
Проверка подлинности OAuth2 в Azure Active Directory
Тип: oauth2
Поток: приложение
URL-адрес токена: https://login.microsoftonline.com/common/oauth2/v2.0/token
Примеры
Создает завершение для предоставленного запроса и параметров
Пример запроса
POST /completions?api-version=2024-04-01-preview
{
"prompt": "This is a very good text",
"frequency_penalty": 0,
"presence_penalty": 0,
"max_tokens": 256,
"seed": 42,
"stop": "<|endoftext|>",
"stream": false,
"temperature": 0,
"top_p": 1
}
Пример ответа
Код состояния: 200.
{
"id": "1234567890",
"model": "llama2-7b",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"text": ", indeed it is a good one."
}
],
"created": 1234567890,
"object": "text_completion",
"usage": {
"prompt_tokens": 15,
"completion_tokens": 8,
"total_tokens": 23
}
}
Определения
Имя | Описание |
---|---|
Варианты | Список вариантов завершения чата. |
ЗавершениеFinishReason | Причина, по которой модель перестала создавать маркеры. Это если stop модель попала в естественную точку остановки или указанную последовательность остановки, если достигнуто максимальное количество маркеров, указанных в запросе, length content_filter если содержимое было пропущено из-за флага из фильтров содержимого. |
ЗавершениеUsage | Статистика использования для запроса завершения. |
ContentFilterError | Вызов API завершается сбоем, когда запрос активирует фильтр содержимого, как настроено. Измените запрос и повторите попытку. |
CreateCompletionRequest | |
CreateCompletionResponse | Представляет ответ завершения из API. |
Detail | |
TextCompletionObject | Тип объекта, который всегда является "text_completion" |
UnprocessableContentError |
Варианты выбора
Список вариантов завершения чата.
Имя. | Тип | Описание |
---|---|---|
finish_reason | ЗавершениеFinishReason | Причина, по которой модель перестала создавать маркеры. Это происходит stop , если модель попала в естественную точку остановки или указанную последовательность остановки, если достигнуто максимальное количество маркеров, length указанных в запросе, если содержимое было пропущено из-за флага из фильтров содержимого, content_filter tool_calls если модель называется инструментом. |
index | integer | Индекс выбора в списке вариантов. |
text | строка | Созданный текст. |
ЗавершениеFinishReason
Причина, по которой модель перестала создавать маркеры. Это если stop
модель попала в естественную точку остановки или указанную последовательность остановки, если достигнуто максимальное количество маркеров, указанных в запросе, length
content_filter
если содержимое было пропущено из-за флага из фильтров содержимого.
Имя. | Тип | Описание |
---|---|---|
content_filter | строка | |
length | строка | |
stop | строка |
ЗавершениеUsage
Статистика использования для запроса завершения.
Имя. | Тип | Описание |
---|---|---|
completion_tokens | integer | Количество маркеров в созданном завершении. |
prompt_tokens | integer | Количество маркеров в запросе. |
total_tokens | integer | Общее количество маркеров, используемых в запросе (запрос + завершение). |
ContentFilterError
Вызов API завершается сбоем, когда запрос активирует фильтр содержимого, как настроено. Измените запрос и повторите попытку.
Имя. | Тип | Описание |
---|---|---|
кодом | строка | Код ошибки. |
error | строка | Описание ошибки. |
message | строка | Сообщение об ошибке. |
param | строка | Параметр, активировав фильтр содержимого. |
статус | integer | Код состояния HTTP. |
CreateCompletionRequest
Имя. | Type | Значение по умолчанию | Description |
---|---|---|---|
frequency_penalty | number | 0 | Положительные значения выбраковывают новые маркеры в зависимости от существующей частоты в тексте на данный момент, уменьшая вероятность повторения той же буквальной строки. |
max_tokens | integer | 256 | Максимальное количество маркеров, которые можно создать в завершении. Количество маркеров запроса плюс max_tokens не может превышать длину контекста модели. |
presence_penalty | number | 0 | Положительные значения выбраковывают новые маркеры в зависимости от того, отображаются ли они в тексте на данный момент, увеличивая вероятность обсуждений на новые темы. |
prompt | <\|endoftext\|> |
Запрос на создание завершений для, закодированных в виде строки, массива строк, массива маркеров или массива массивов маркеров. Обратите внимание, что <\|endoftext\|> разделитель документов, который модель видит во время обучения, поэтому если запрос не указан, модель создается так, как будто с начала нового документа. |
|
seed | integer | Если задано, наша система будет предпринять лучшие усилия для выборки детерминированного, таким образом, что повторяющиеся запросы с одинаковыми и теми же параметрами должны возвращать тот же seed результат.Детерминированность не гарантируется, и вы должны ссылаться на system_fingerprint параметр ответа для отслеживания изменений в серверной части. |
|
stop | Последовательности, в которых API перестанет создавать дополнительные маркеры. Возвращенный текст не будет содержать последовательность остановки. | ||
потоковая передача | boolean | False | Потоковая передача частичного хода выполнения. Если задано, маркеры будут отправляться как события, отправленные сервером только для данных, как они становятся доступными, с потокомdata: [DONE] , завершаемым сообщением. |
Температура | number | 1 | Какая температура выборки используется в диапазоне от 0 до 2. Более высокие значения, такие как 0,8, делают выходные данные более случайными, а более низкие значения, такие как 0,2, делают его более ориентированным и детерминированным. Как правило, мы рекомендуем изменить это или top_p не оба. |
top_p | number | 1 | Альтернативой выборке с температурой является так называемая выборка ядра, где модель рассматривает результаты маркеров с top_p всего массива значений вероятности. Таким образом, 0,1 означает, что учитываются только маркеры, входящие в верхние 10% массива значений вероятности. Как правило, мы рекомендуем изменить это или temperature не оба. |
CreateCompletionResponse
Представляет ответ завершения из API. Примечание. Объекты потокового и непотокового ответа имеют одинаковую фигуру (в отличие от конечной точки чата).
Имя. | Тип | Описание |
---|---|---|
choices | Выбор[] | Список вариантов завершения модели, созданной для ввода запроса. |
создано | integer | Метка времени Unix (в секундах) при создании завершения. |
Идентификатор | строка | Уникальный идентификатор завершения. |
модель | строка | Модель, используемая для завершения. |
объект | TextCompletionObject | Тип объекта, который всегда является "text_completion" |
system_fingerprint | строка | Этот отпечаток представляет конфигурацию серверной части, с которой работает модель. Можно использовать с параметром запроса, чтобы понять, когда были внесены изменения серверной seed части, которые могут повлиять на детерминированность. |
использование | ЗавершениеUsage | Статистика использования для запроса завершения. |
Подробный сведения
Имя. | Тип | Описание |
---|---|---|
loc | string[] | Параметр, вызывающий проблему |
значение | строка | Значение, переданное параметру, вызывающее проблемы. |
TextCompletionObject
Тип объекта, который всегда является "text_completion"
Имя. | Тип | Описание |
---|---|---|
text_completion | строка |
ListObject
Тип объекта, который всегда является "list".
Имя. | Тип | Description |
---|---|---|
список | строка |
NotFoundError
Имя. | Тип | Описание |
---|---|---|
error | строка | Описание ошибки. |
message | строка | Сообщение об ошибке. |
статус | integer | Код состояния HTTP. |
TooManyRequestsError
Имя. | Тип | Описание |
---|---|---|
error | строка | Описание ошибки. |
message | строка | Сообщение об ошибке. |
статус | integer | Код состояния HTTP. |
НесанкционированныйError
Имя. | Тип | Описание |
---|---|---|
error | строка | Описание ошибки. |
message | строка | Сообщение об ошибке. |
статус | integer | Код состояния HTTP. |
UnprocessableContentError
Имя. | Тип | Описание |
---|---|---|
кодом | строка | Код ошибки. |
detail | Detail | |
error | строка | Описание ошибки. |
message | строка | Сообщение об ошибке. |
статус | integer | Код состояния HTTP. |