OpenAI
Esta página foi traduzida automaticamente. Ver o artigo original em inglês.

Migrar de Completions para Chat Completions na API da OpenAI

Como migrar da antiga API Completions da OpenAI para Chat Completions

Atualizado: 9 days ago

Chat Completions é a API padrão a usar com os modelos mais recentes da OpenAI. Pode saber como começar a usá-la no nosso guia de programação para geração de texto.

Em 11 de março de 2025, lançámos os blocos de construção da nossa nova plataforma de Agentes. Para mais detalhes, consulte a nossa documentação da API para a API Responses, Ferramentas incluindo Pesquisa na Web, Pesquisa de ficheiros e Utilização do computador, e o nosso SDK de Agentes com Rastreamento.

De prompts a mensagens

Para ter uma conversa mais interativa e dinâmica com os nossos modelos, pode usar mensagens em formato de chat em vez do estilo de prompt legado usado com completions.

Funciona assim:

  • Em vez de enviar uma única cadeia de texto como prompt, envia uma lista de mensagens como entrada.

  • Cada mensagem tem um role e um content.

  • As funções comuns incluem system, user, assistant, developer e tool. As mensagens de ferramentas são usadas para resultados de ferramentas/funções e têm de corresponder a chamadas de ferramentas do assistant. Para compatibilidade retroativa, as mensagens de função ainda podem ser aceites e convertidas em mensagens de ferramenta no processamento do servidor. As mensagens de programador podem ser remapeadas consoante o suporte do modelo.

  • O content contém o texto da mensagem proveniente da função.

  • A instrução do sistema pode fornecer instruções de alto nível para a conversa

  • As mensagens são processadas pela ordem em que aparecem na lista, e o assistant responde em conformidade.

Mesmo pedidos básicos de Completions podem ser concluídos através de Chat Completions, como pode ver abaixo:

| Antes | Agora | | 'prompt' : 'tell me a joke' | 'messages': <br>[{'role':'user', 'content':'tell me a joke'}] |

Agora, é mais fácil do que nunca ter trocas de mensagens com o modelo, prolongando a lista de mensagens na conversa.

'messages': [{'role':'user', 'content':'conta-me uma piada'}, 
{'role':'assistant', 'content':'porque é que a galinha atravessou a estrada'},
{'role':'user', 'content':'Não sei, porque é que a galinha atravessou a estrada'}]

Instruções do sistema

Também pode usar uma instrução ao nível do sistema para orientar o comportamento do modelo ao longo da conversa. Por exemplo, usando uma instrução de sistema e uma mensagem como esta

'messages': [{'role':'system', 'content':'És um assistente que fala como Shakespeare.'}, 
{'role':'user', 'content':'conta-me uma piada'},

resultará em algo como

{...
'message': {'role':'assistant',
'content':'Porque é que a galinha atravessou a estrada? Para chegar ao outro lado, mas em verdade, o outro lado estava cheio de perigo e risco, por isso voltou rapidamente de onde veio, pois sim!'}
...}

Se quiser explorar opções que não impliquem ter de gerir o histórico da conversa de mensagens por si, consulte a API Assistants.

Este artigo foi útil?