Skip to Content
Referencia de la APIProtocolo compatible con OpenAIChat Completions

Chat Completions

Cree respuestas de completación de chat. Soporta generación de texto, entrada multimodal, llamada a funciones, respuesta en streaming y más.

Para proyectos nuevos, recomendamos la Responses API. La Responses API separa instructions de input, de modo que las instrucciones del sistema aprovechan Prompt Caching automáticamente, con una mayor tasa de aciertos de caché y menor coste y latencia. Chat Completions sigue contando con soporte a largo plazo; las integraciones existentes no necesitan migrar.

Endpoint

POST https://api.ofox.io/v1/chat/completions

Parámetros de solicitud

ParámetroTipoObligatorioDescripción
modelstring✅Identificador del modelo, p. ej. openai/gpt-6.1-sol
messagesarray✅Array de mensajes
temperaturenumber—Temperatura de muestreo 0-2, por defecto 1
max_tokensnumber—Número máximo de tokens a generar
streamboolean—Activar respuesta en streaming
top_pnumber—Parámetro de muestreo nucleus
frequency_penaltynumber—Penalización de frecuencia -2 a 2
presence_penaltynumber—Penalización de presencia -2 a 2
toolsarray—Definición de herramientas (Function Calling)
tool_choicestring/object—Estrategia de selección de herramientas
response_formatobject—Formato de respuesta (JSON Mode)
providerobject—Extensión OfoxAI: configuración de enrutamiento y respaldo

Formato de Message

interface Message { role: 'system' | 'user' | 'assistant' | 'tool' content: string | ContentPart[] // Texto o contenido multimodal name?: string tool_calls?: ToolCall[] // Llamadas a herramientas del mensaje assistant tool_call_id?: string // ID de llamada del mensaje tool } // Contenido multimodal type ContentPart = | { type: 'text'; text: string } | { type: 'image_url'; image_url: { url: string; detail?: 'auto' | 'low' | 'high' } }

Ejemplo de solicitud

Terminal
curl https://api.ofox.io/v1/chat/completions \ -H "Authorization: Bearer $OFOX_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "openai/gpt-6.1-sol", "messages": [ {"role": "system", "content": "Eres un asistente útil."}, {"role": "user", "content": "Explica qué es un API Gateway"} ], "temperature": 0.7 }'

Formato de respuesta

{ "id": "chatcmpl-abc123", "object": "chat.completion", "created": 1703123456, "model": "openai/gpt-6.1-sol", "choices": [ { "index": 0, "message": { "role": "assistant", "content": "Un API Gateway es un..." }, "finish_reason": "stop" } ], "usage": { "prompt_tokens": 25, "completion_tokens": 150, "total_tokens": 175 } }

Respuesta en streaming

Active la respuesta en streaming SSE con stream: true:

stream.py
stream = client.chat.completions.create( model="openai/gpt-6.1-sol", messages=[{"role": "user", "content": "Cuéntame una historia"}], stream=True ) for chunk in stream: content = chunk.choices[0].delta.content if content: print(content, end="", flush=True)

Formato de respuesta en streaming

Cada chunk se envía mediante SSE:

data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hola"},"finish_reason":null}]} data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":" mundo"},"finish_reason":null}]} data: {"id":"chatcmpl-abc123","object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]} data: [DONE]

Entrada multimodal (visión)

Envíe imágenes para que el modelo las analice:

response = client.chat.completions.create( model="openai/gpt-6.1-sol", messages=[{ "role": "user", "content": [ {"type": "text", "text": "¿Qué hay en esta imagen?"}, {"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}} ] }] )

Los modelos con capacidad de visión incluyen: openai/gpt-6.1-sol, anthropic/claude-sonnet-5.5, google/gemini-3.8-flash, entre otros. Consulte la guía de comprensión visual.

Function Calling

Consulte la guía de llamada a funciones.

Última actualización: