Responses API
A Responses API é a interface principal para interagir com os modelos Sabiá. Ela oferece uma superfície única e coesa para gerar texto, chamar funções externas, produzir saídas estruturadas e construir fluxos de conversa multi-turno — tudo através de um único endpoint.
Se você já utiliza a Chat Completions API, a Responses API é sua evolução natural: mesma compatibilidade com o SDK da OpenAI, mas com uma interface mais expressiva e recursos adicionais que simplificam integrações complexas.
Responses API vs. Chat Completions API
A Responses API substitui a Chat Completions como a interface recomendada para novos projetos. A tabela abaixo resume as diferenças:
| Aspecto | Chat Completions | Responses API |
|---|---|---|
| Endpoint | POST /v1/chat/completions | POST /v1/responses |
| Entrada | messages (lista de mensagens) | input (string ou lista de itens) |
| Instruções de sistema | Via mensagem com role: "system" | Parâmetro dedicado instructions |
| Saída | choices[0].message.content | output[0].content[0].text |
| Streaming | (chat.completion.chunk) | (response.output_text.delta, response.completed, etc.) |
| Chamada de funções | Via tool_calls no message | Itens tipados function_call no output |
| Saídas estruturadas | response_format | text.format com json_schema |
A Chat Completions API continua disponível e funcional. Se você já tem uma integração funcionando com ela, não há necessidade imediata de migrar. Para novos projetos, recomendamos a Responses API.
Migrando da Chat Completions
A migração é direta. Compare os dois exemplos equivalentes:
Chat Completions:
response = client.chat.completions.create(
model="sabia-4",
messages=[
{"role": "system", "content": "Responda de forma concisa."},
{"role": "user", "content": "Qual é a capital do Brasil?"},
],
max_tokens=200,
)
print(response.choices[0].message.content)
Responses API:
response = client.responses.create(
model="sabia-4",
instructions="Responda de forma concisa.",
input="Qual é a capital do Brasil?",
max_output_tokens=200,
)
print(response.output[0].content[0].text)
As principais mudanças são: messages vira input, a mensagem system vira o parâmetro instructions, max_tokens vira max_output_tokens, e o acesso à resposta muda de choices[0].message.content para output[0].content[0].text.
Início rápido
Instale a biblioteca da OpenAI (a Maritaca API é compatível com o SDK da OpenAI):
pip install openai