Source: https://aiprimetech.io/pt/docs/api-reference/chat-completions/ [Início](/pt/) / [Documentação](/pt/docs/) / API de conclusões de chat # API de conclusões de chat POST /v1/chat/completions — o endpoint no formato OpenAI, para Cursor, LangChain, LiteLLM e os SDKs da OpenAI. Copiar página [ Ver como Markdown](/pt/docs/api-reference/chat-completions.md) [ Perguntar ao ChatGPT](https://chatgpt.com/?q=Read%20https%3A//aiprimetech.io/docs/api-reference/chat-completions.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) [ Perguntar no Claude](https://claude.ai/new?q=Read%20https%3A//aiprimetech.io/docs/api-reference/chat-completions.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) A interface compatível com OpenAI. Mesmos modelos, mesmos preços, estrutura diferente. EndpointPOST https://aiprimetech.io/v1/chat/completions URL base para SDKshttps://aiprimetech.io/v1 — observe o /v1 AutenticaçãoAuthorization: Bearer sk-... ## Corpo da requisição | Campo | Tipo | Obrigatório | Descrição | model | string | sim | Qualquer ID de /v1/models, incluindo IDs do Claude | messages | array | sim | Aceita os papéis system, user e assistant | max_tokens | inteiro | não | Opcional aqui, ao contrário da Messages API | temperature | número | não | 0–2 na convenção da OpenAI | stream | booleano | não | true para blocos SSE | tools | array | não | Estrutura de chamada de funções da OpenAI Ao contrário de Messages, system é um papel aqui — coloque-o como a primeira entrada de messages. Não envie um campo de nível superior system para este endpoint. ## Exemplo ``` Copycurl https://aiprimetech.io/v1/chat/completions \ -H "Authorization: Bearer $CLAUDEAPIKEY" \ -H "content-type: application/json" \ -d '{ "model": "claude-sonnet-4-6", "messages": [{"role": "user", "content": "Hello"}] }' ``` ## Resposta ``` Copy{ "id": "chatcmpl-...", "object": "chat.completion", "model": "claude-sonnet-4-6", "choices": [{ "index": 0, "message": {"role": "assistant", "content": "..."}, "finish_reason": "stop" }], "usage": {"prompt_tokens": 9, "completion_tokens": 12, "total_tokens": 21} } ``` ## Como usar o SDK da OpenAI ``` Copyfrom openai import OpenAI client = OpenAI( api_key=class="s">"sk-your-key", base_url=class="s">"https://aiprimetech.io/v1", class=class="s">"c"># the /v1 matters ) resp = client.chat.completions.create( model=class="s">"claude-sonnet-4-6", messages=[{class="s">"role": class="s">"user", class="s">"content": class="s">"Hello"}], ) print(resp.choices[0].message.content) ``` ## Mapeamento de campos entre os dois formatos | Conceito | Messages | Chat Completions | Prompt de sistema | no nível superior system | messages[0] com o papel system | Texto da resposta | content[0].text | choices[0].message.content | Motivo da interrupção | stop_reason | finish_reason | Tokens de entrada | usage.input_tokens | usage.prompt_tokens | Tokens de saída | usage.output_tokens | usage.completion_tokens | Delta de streaming | content_block_delta | choices[0].delta.content [CursorConfigure o Cursor para usar este endpoint](/pt/docs/guides/cursor/)[Migração da OpenAIMigre uma base de código existente](/pt/docs/guides/migration-from-openai/)[TransmissãoSSE para ambos os formatos](/pt/docs/api-reference/streaming/) [AnteriorAPI de mensagens](/pt/docs/api-reference/messages/)[PróximoEndpoint de modelos](/pt/docs/api-reference/models-endpoint/)