Chat (texto)

Completions de conversación, con o sin streaming, con o sin herramientas.

Solicitud

http
POST /v1/chat/completions
json
{
  "messages": [
    { "role": "user", "content": "Explique le routage IA en une phrase." }
  ],
  "model": null,
  "routing_strategy": "auto",
  "max_tokens": null,
  "temperature": null,
  "stream": false,
  "tools": null,
  "tool_choice": null
}

Solo messages es obligatorio. model y routing_strategy están documentados en Enrutamiento y failover.

Respuesta

json
{
  "content": "Le routage IA choisit automatiquement le meilleur fournisseur disponible pour chaque appel.",
  "finish_reason": "stop",
  "model": "claude-opus-5",
  "provider": "anthropic",
  "input_tokens": 12,
  "output_tokens": 18,
  "tool_calls": null
}

Streaming

Pasa "stream": true para recibir la respuesta en formato Server-Sent Events en lugar de un único bloque JSON.

typescript
for await (const chunk of client.chat.completions.stream({
  messages: [{ role: "user", content: "Compte jusqu'a 10." }],
})) {
  process.stdout.write(chunk.delta);
}

Llamada a herramientas (function calling)

Proporciona tools (definiciones en formato JSON Schema estándar) y el modelo puede responder con tool_calls en lugar de (o además de) texto. Devuelve el resultado en un mensaje con rol "tool" y el tool_call_id correspondiente para continuar la conversación.

json
{
  "messages": [
    { "role": "user", "content": "Quel temps fait-il a Paris ?" },
    {
      "role": "assistant",
      "content": "",
      "tool_calls": [
        { "id": "call_1", "name": "get_weather", "arguments": { "city": "Paris" } }
      ]
    },
    { "role": "tool", "tool_call_id": "call_1", "content": "18C, nuageux" }
  ],
  "tools": [
    {
      "name": "get_weather",
      "description": "Meteo actuelle d'une ville.",
      "parameters": {
        "type": "object",
        "properties": { "city": { "type": "string" } },
        "required": ["city"]
      }
    }
  ]
}
Para una orquestación multi-turno automatizada (el servidor vuelve a invocar al modelo tras cada resultado de herramienta, mantiene memoria a largo plazo), consulta la guía Agentes de IA en lugar de gestionar el bucle tú mismo.

Modelos compatibles

Anthropic (Claude), OpenAI (GPT), Google (Gemini), DeepSeek, xAI (Grok), Mistral, Moonshot, MiniMax, Meta — la lista exacta y actualizada está disponible a través del catálogo:

bash
GET /v1/models?category=text