Endpoints
Búsqueda web
Basa las respuestas en resultados web en vivo con la variante :online, el plugin web o web_search_options, y obtén citas con URL en annotations.
Pruébalo en el playgroundLa búsqueda web añade resultados web en vivo al contexto del modelo y devuelve citas con URL. Puedes activarla en cualquier modelo de texto de tres maneras.
1. La variante :online
Añade :online a cualquier id de modelo:
{ "model": "openai/gpt-5-mini:online", "messages": [{ "role": "user", "content": "What happened in AI this week?" }] }
:online usa los mismos precios, lista de modelos permitidos de la clave y reglas de plan que el modelo base. Consulta Ids de modelo.
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "openai/gpt-5-mini:online",
"messages": [
{
"role": "user",
"content": "What are the latest AI model releases this week?"
}
]
});
console.log(result.choices[0].message.content);
2. El plugin web
El plugin te da control sobre la búsqueda:
{
"model": "anthropic/claude-sonnet-4.5",
"messages": [{ "role": "user", "content": "Latest stable Node.js version?" }],
"plugins": [
{ "id": "web", "max_results": 5, "engine": "exa", "search_prompt": "Use these sources:" }
]
}
| Campo | Tipo | Descripción |
|---|---|---|
plugins[].id | string | "web" |
max_results | integer | Número de resultados que se inyectan (por defecto 5). |
engine | string | "native" (la búsqueda propia del proveedor, cuando está disponible) o "exa". Si lo omites, se usa native cuando está disponible y, si no, Exa. |
search_prompt | string | Texto que se coloca antes de los resultados inyectados. |
3. web_search_options
La opción al estilo OpenAI para modelos con búsqueda nativa:
{
"model": "openai/gpt-4o-search-preview",
"messages": [{ "role": "user", "content": "Who won yesterday's match?" }],
"web_search_options": { "search_context_size": "high" }
}
search_context_size es "low", "medium" o "high". Determina cuánto contenido de búsqueda se recupera, y el precio.
Respuesta
Las citas se devuelven como annotations en el mensaje:
{
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "The latest LTS release is ... [nodejs.org](https://nodejs.org/en/blog)",
"annotations": [
{
"type": "url_citation",
"url_citation": { "url": "https://nodejs.org/en/blog", "title": "Node.js Blog", "start_index": 25, "end_index": 60, "content": "..." }
}
]
}
}
],
"usage": { "prompt_tokens": 2410, "completion_tokens": 85, "total_tokens": 2495, "cost": 0.02061 }
}
Precios
Además de los tokens, la búsqueda tiene su propio precio: Exa se cobra por resultado y la búsqueda nativa por petición según el precio web_search del modelo. Los resultados de búsqueda también cuentan como tokens de entrada. Todo está incluido en usage.cost y se descuenta en USD. Consulta Precios y facturación.
Errores
Los mismos que en Chat completions. Consulta Errores.