Docs
Chat Completions

Chat Completions

Endpoint principal para gerar respostas de modelos de linguagem.

Endpoint

POST https://proxy.ignustec.com.br/v1/chat/completions

Compatível com a especificação da OpenAI. Qualquer SDK ou código que usa a API da OpenAI funciona sem alterações — basta trocar a base_url.

Parâmetros

ParâmetroTipoObrigatórioDescrição
modelstringsimID do modelo (ex: gpt-4o, claude-sonnet-4)
messagesarraysimArray de mensagens no formato {role, content}
streambooleannãoHabilita streaming via SSE. Padrão: false
temperaturenumbernãoCriatividade (0–2). Padrão: 1
max_tokensnumbernãoMáximo de tokens na resposta
top_pnumbernãoNucleus sampling (0–1)
stopstring / arraynãoSequências de parada
nnumbernãoNúmero de respostas. Padrão: 1

Request

{
  "model": "gpt-4o",
  "messages": [
    {"role": "system", "content": "Você é um assistente útil."},
    {"role": "user",   "content": "Qual é a capital do Brasil?"}
  ],
  "temperature": 0.7,
  "max_tokens": 256
}

Response

{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1751234567,
  "model": "gpt-4o",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "A capital do Brasil é Brasília."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 28,
    "completion_tokens": 12,
    "total_tokens": 40
  }
}

Exemplos

Python

completion.py
from openai import OpenAI
 
client = OpenAI(
    base_url="https://proxy.ignustec.com.br/v1",
    api_key="sk_ic_xxxxxxxxxxxxxxxxxxxx",
)
 
response = client.chat.completions.create(
    model="claude-sonnet-4",
    messages=[
        {"role": "system", "content": "Você é um assistente útil."},
        {"role": "user",   "content": "Resuma o que é machine learning em 2 linhas."},
    ],
    temperature=0.5,
    max_tokens=128,
)
 
print(response.choices[0].message.content)
print(f"Tokens usados: {response.usage.total_tokens}")

TypeScript

completion.ts
import OpenAI from "openai";
 
const client = new OpenAI({
  baseURL: "https://proxy.ignustec.com.br/v1",
  apiKey: process.env.IGNUS_API_KEY,
});
 
const response = await client.chat.completions.create({
  model: "gpt-4o-mini",
  messages: [
    { role: "system", content: "Você é um assistente útil." },
    { role: "user",   content: "O que é TypeScript?" },
  ],
});
 
console.log(response.choices[0].message.content);

cURL

curl https://proxy.ignustec.com.br/v1/chat/completions \
  -H "Authorization: Bearer $IGNUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {"role": "user", "content": "Olá, tudo bem?"}
    ]
  }'

Roles disponíveis

RoleDescrição
systemInstrução inicial / personalidade do assistente
userMensagem do usuário
assistantResposta anterior do assistente (para conversas com histórico)