Compartilhar via


Referência: Preenchimentos | Estúdio de IA do Azure

Importante

Os itens marcados (versão prévia) neste artigo estão atualmente em versão prévia pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não recomendamos isso para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

Cria uma conclusão para o prompt e os parâmetros fornecidos.

POST /completions?api-version=2024-04-01-preview
Nome Em Obrigatório Type Descrição
api-version Consulta True string A versão da API no formato "YYYY-MM-DD" ou "YYYYY-MM-DD-preview".

Cabeçalho da solicitação

Nome Obrigatória Type Descrição
parâmetros extras string O comportamento da API quando os parâmetros extras são indicados no conteúdo. Usar pass-through faz com que a API passe o parâmetro para o modelo subjacente. Use esse valor quando quiser passar os parâmetros que você sabe que o modelo subjacente pode dar suporte. Usar ignore faz com que a API remova qualquer parâmetro sem suporte. Use esse valor quando precisar usar a mesma carga útil nos modelos diferentes, mas um dos parâmetros extras pode fazer com que um modelo apresente erro se não for compatível. Usar error faz com que a API rejeite qualquer parâmetro extra no conteúdo. Somente os parâmetros especificados nessa API podem ser indicados, caso contrário, será retornado um erro 400.
azureml-model-deployment string Nome da implantação para a qual você deseja rotear a solicitação. Compatível com pontos de extremidade que dão suporte a várias implantações.

Corpo da solicitação

Nome Obrigatória Type Descrição
prompt Verdadeiro Os prompts para gerar conclusões, codificados como uma sequência, uma matriz de sequências, uma matriz de tokens ou uma matriz de matrizes de tokens. Observe que <\|endoftext\|> é o separador de documentos que o modelo vê durante o treinamento; portanto, se um prompt não for especificado, o modelo será gerado como se fosse o início de um novo documento.
frequency_penalty número Valores positivos penalizam novos tokens com base em sua frequência existente no texto até o momento, diminuindo a probabilidade do modelo repetir a mesma linha na íntegra.
max_tokens Número inteiro O número máximo de tokens que podem ser gerados na conclusão. A contagem de tokens do seu prompt mais max_tokens não pode exceder o comprimento do contexto do modelo.
presence_penalty número Valores positivos penalizam novos tokens com base em se apareceram no texto até o momento, aumentando a probabilidade do modelo apresentar novos tópicos.
seed Número inteiro Se especificado, o modelo faz o melhor esforço para amostrar de forma determinística, de modo que solicitações repetidas com os mesmos seed e parâmetros retornem o mesmo resultado.

O determinismo não é garantido e você deve consultar o parâmetro system_fingerprint response para monitorar alterações no backend.
stop Sequências em que a API irá parar de gerar mais tokens. O texto retornado não conterá a sequência de parada.
fluxo boolean Se o progresso parcial deverá ser transmitido de volta. Se definido, os tokens serão enviados como eventos enviados pelo servidor somente de dados à medida que se tornarem disponíveis, com o fluxo encerrado por uma mensagem data: [DONE].
temperatura número Qual temperatura de amostragem usar, entre 0 e 2. Valores mais altos, como 0,8, tornarão a saída mais aleatória, enquanto valores mais baixos como 0,2 a tornarão mais focada e determinística.

Geralmente recomendamos alterar temperature ou top_p, mas não ambos.
top_p número Uma alternativa à amostragem com temperatura, chamada de amostragem de núcleo, onde o modelo considera os resultados dos tokens com massa de probabilidade top_p. Portanto, 0,1 significa que apenas os tokens que compõem a massa de probabilidade de 10% do topo são considerados.

Geralmente recomendamos alterar top_p ou temperature, mas não ambos.

Respostas

Nome Tipo Descrição
200 OK CreateCompletionResponse OK
401 Não Autorizado UnauthorizedError O token de acesso está ausente ou é inválido

Cabeçalhos

x-ms-error-code: cadeia de caracteres
404 Não Encontrado NotFoundError Modalidade não compatível com o modelo. Verifique a documentação do modelo para ver quais rotas estão disponíveis.

Cabeçalhos

x-ms-error-code: cadeia de caracteres
422 Entidade Não Processável UnprocessableContentError A solicitação contém conteúdo não processável

Cabeçalhos

x-ms-error-code: cadeia de caracteres
429 Excesso de Solicitações TooManyRequestsError Você atingiu o limite de taxa que lhe foi atribuído e sua solicitação vai precisar aguardar.

Cabeçalhos

x-ms-error-code: cadeia de caracteres
Outros códigos de status ContentFilterError Solicitação incorreta

Cabeçalhos

x-ms-error-code: cadeia de caracteres

Segurança

Autorização

O token com o prefixo Bearer:, por exemplo, Bearer abcde12345

Digite: apiKey
Em: cabeçalho

Token do AAD

Autenticação OAuth2 do Azure Active Directory

Digite: oauth2
Fluxo: aplicativo
URL do token: https://login.microsoftonline.com/common/oauth2/v2.0/token

Exemplos

Cria uma conclusão para o prompt e os parâmetros fornecidos

Solicitação de Exemplo

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
}

Resposta de exemplo

Código de status: 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
  }
}

Definições

Nome Descrição
Opções Uma lista de opções de conclusão de chat.
CompletionFinishReason O motivo pelo qual o modelo parou de gerar tokens. Isso ocorre stop se o modelo atingiu um ponto de parada natural ou uma sequência de parada fornecida, length se o número máximo de tokens especificado na solicitação foi atingido, content_filter se o conteúdo foi omitido devido a um sinalizador de nossos filtros de conteúdo.
CompletionUsage Estatísticas de uso para a solicitação de preenchimento.
ContentFilterError A chamada à API falha quando o prompt dispara um filtro de conteúdo conforme configurado. Modifique o prompt e tente novamente.
CreateCompletionRequest
CreateCompletionResponse Representa uma resposta de conclusão da API.
Detalhe
TextCompletionObject O tipo de objeto, que é sempre "text_completion"
UnprocessableContentError

Opções

Uma lista de opções de conclusão de chat.

Nome Tipo Descrição
finish_reason CompletionFinishReason O motivo pelo qual o modelo parou de gerar tokens. Isso ocorre stop se o modelo atingiu um ponto de parada natural ou uma sequência de parada fornecida, length se o número máximo de tokens especificado na solicitação foi atingido, content_filter se o conteúdo foi omitido devido a um sinalizador de nossos filtros de conteúdo, tool_calls se o modelo chamou uma ferramenta.
índice Número inteiro O índice da escolha na lista de opções.
text string O texto gerado.

CompletionFinishReason

O motivo pelo qual o modelo parou de gerar tokens. Isso ocorre stop se o modelo atingiu um ponto de parada natural ou uma sequência de parada fornecida, length se o número máximo de tokens especificado na solicitação foi atingido, content_filter se o conteúdo foi omitido devido a um sinalizador de nossos filtros de conteúdo.

Nome Tipo Descrição
content_filter string
length string
stop string

CompletionUsage

Estatísticas de uso para a solicitação de preenchimento.

Nome Tipo Descrição
completion_tokens Número inteiro Número de tokens na conclusão gerada.
prompt_tokens Número inteiro Número de tokens no prompt.
total_tokens Número inteiro Número total de tokens utilizados na solicitação (prompt + conclusão).

ContentFilterError

A chamada à API falha quando o prompt dispara um filtro de conteúdo conforme configurado. Modifique o prompt e tente novamente.

Nome Tipo Descrição
code string O código de erro.
error string A descrição do erro.
message string A mensagem de erro.
param string O parâmetro que disparou o filtro de conteúdo.
status Número inteiro O código de status HTTP.

CreateCompletionRequest

Nome Type Valor padrão Descrição
frequency_penalty número 0 Valores positivos penalizam novos tokens com base em sua frequência existente no texto até o momento, diminuindo a probabilidade do modelo repetir a mesma linha na íntegra.
max_tokens Número inteiro 256 O número máximo de tokens que podem ser gerados na conclusão. A contagem de tokens do seu prompt mais max_tokens não pode exceder o comprimento do contexto do modelo.
presence_penalty número 0 Valores positivos penalizam novos tokens com base em se apareceram no texto até o momento, aumentando a probabilidade do modelo apresentar novos tópicos.
prompt <\|endoftext\|> Os prompts para gerar conclusões, codificados como uma sequência, uma matriz de sequências, uma matriz de tokens ou uma matriz de matrizes de tokens. Observe que <\|endoftext\|> é o separador de documentos que o modelo vê durante o treinamento; portanto, se um prompt não for especificado, o modelo será gerado como se fosse o início de um novo documento.
seed Número inteiro Se especificado, nosso sistema fará o melhor esforço para amostrar de forma determinística, de modo que solicitações repetidas com os mesmos seed e os parâmetros retornem o mesmo resultado.

O determinismo não é garantido e você deve consultar o parâmetro de resposta system_fingerprint para monitorar alterações no backend.
stop Sequências em que a API irá parar de gerar mais tokens. O texto retornado não conterá a sequência de parada.
fluxo boolean Falso Se o progresso parcial deverá ser transmitido de volta. Se definido, os tokens serão enviados como eventos enviados pelo servidor somente de dados à medida que se tornarem disponíveis, com o fluxo encerrado por uma mensagem data: [DONE].
temperatura número 1 Qual temperatura de amostragem usar, entre 0 e 2. Valores mais altos, como 0,8, tornarão a saída mais aleatória, enquanto valores mais baixos como 0,2 a tornarão mais focada e determinística.

Geralmente recomendamos alterar isso ou top_p, mas não as duas coisas.
top_p número 1 Uma alternativa à amostragem com temperatura, chamada de amostragem de núcleo, onde o modelo considera os resultados dos tokens com massa de probabilidade top_p. Portanto, 0,1 significa que apenas os tokens que compõem a massa de probabilidade de 10% do topo são considerados.

Geralmente recomendamos alterar isso ou temperature, mas não as duas coisas.

CreateCompletionResponse

Representa uma resposta de conclusão da API. Observação: os objetos de resposta transmitidos e não transmitidos compartilham o mesmo formato (diferentemente do ponto de extremidade do chat).

Nome Tipo Descrição
opções Escolhas[] A lista de opções de preenchimento que o modelo gerou para o prompt de entrada.
criado Número inteiro O carimbo de data/hora do UNIX (em segundos) de quando o preenchimento foi criado.
ID string Um identificador exclusivo do preenchimento.
modelo string O modelo usado para conclusão.
objeto TextCompletionObject O tipo de objeto, que é sempre "text_completion"
system_fingerprint string Essa impressão digital representa a configuração de back-end com a qual o modelo é executado.

Pode ser usado com o parâmetro seed solicitação para entender quando foram feitas alterações de backend que podem impactar o determinismo.
uso CompletionUsage Estatísticas de uso para a solicitação de preenchimento.

Detalhe

Nome Tipo Descrição
loc string[] O parâmetro que está causando o problema
value string O valor passado para o parâmetro que está causando problemas.

TextCompletionObject

O tipo de objeto, que é sempre "text_completion"

Nome Tipo Descrição
text_completion string

ListObject

O tipo de objeto, que é sempre "lista".

Nome Tipo Description
lista string

NotFoundError

Nome Tipo Descrição
error string A descrição do erro.
message string A mensagem de erro.
status Número inteiro O código de status HTTP.

TooManyRequestsError

Nome Tipo Descrição
error string A descrição do erro.
message string A mensagem de erro.
status Número inteiro O código de status HTTP.

UnauthorizedError

Nome Tipo Descrição
error string A descrição do erro.
message string A mensagem de erro.
status Número inteiro O código de status HTTP.

UnprocessableContentError

Nome Tipo Descrição
code string O código de erro.
detalhes Detalhe
error string A descrição do erro.
message string A mensagem de erro.
status Número inteiro O código de status HTTP.