Saltar al contenido

Cambiar a HopBase

Migre de OpenAI, OpenRouter o la API de Anthropic a HopBase cambiando tres valores.

La migración solo cambia tres valores: la Base URL, la clave y, si hace falta, el ID de modelo. Los cuerpos de las solicitudes, el código de streaming y el manejo de errores no cambian.

Qué cambia

OpenAIOpenRouterAnthropicHopBase
Base URLhttps://api.openai.com/v1https://openrouter.ai/api/v1https://api.anthropic.comProtocolo OpenAI: https://api.hop-base.com/v1
Protocolo Anthropic: https://api.hop-base.com (sin /v1)
ClaveClave de OpenAIUna clave de OpenRouter para todos los modelosClave de Anthropicsk-… creada en Claves API, que incluye de 1 a 10 grupos
ID de modelogpt-5.5openai/gpt-5.5, anthropic/claude-sonnet-5claude-sonnet-5ID sin prefijo de proveedor, tal como lo devuelve GET /v1/models: gpt-5.5, claude-sonnet-5

El protocolo de cada familia de modelos está en Base URL y protocolos.

Una clave llama a los modelos de los grupos que le añada.

Añada a la clave los grupos que necesite. Una clave de OpenRouter llama a todos los modelos; una clave de HopBase llama a los modelos de los grupos que incluye: de 1 a 10, incluso de plataformas distintas. GET /v1/models devuelve la unión de los modelos de esos grupos, y llamar a un modelo que no está en ninguno devuelve 404 model_not_found. Una aplicación que usa Claude y GPT puede usar una sola clave con un grupo Claude y el grupo Codex Plus o Codex Pro; cada solicitud se factura según el grupo que sirve su modelo. Los grupos cuyos modelos se solapan (como Codex Plus y Codex Pro) no pueden compartir clave (salvo GPT oficial directo (Azure) con un grupo Codex o con GPT Image (todos los modelos); vea Cómo elegir el grupo), y un grupo de suscripción debe ser el único grupo de su clave.

SDK de OpenAI

Configure la Base URL y cambie la clave. Los ID de modelo de OpenAI como gpt-5.5 se mantienen siempre que aparezcan en GET /v1/models para su clave.

 import os
 from openai import OpenAI

 client = OpenAI(
-    api_key=os.environ["OPENAI_API_KEY"],
+    base_url="https://api.hop-base.com/v1",
+    api_key=os.environ["HOPBASE_OPENAI_API_KEY"],
 )

 resp = client.chat.completions.create(
     model="gpt-5.5",
     messages=[{"role": "user", "content": "Hello"}],
 )

Sin tocar el código: ambos SDK leen también OPENAI_BASE_URL y OPENAI_API_KEY del entorno; asígneles https://api.hop-base.com/v1 y su clave de HopBase. Hay más ejemplos en OpenAI SDK.

SDK de Anthropic

Claude mantiene la API Messages de Anthropic. Configure la Base URL sin /v1 y use una clave del grupo Claude Max Empresarial. Las claves del grupo Claude Max (ccmax) solo funcionan en el cliente Claude Code; las llamadas desde el SDK fallan.

 import os
 from anthropic import Anthropic

 client = Anthropic(
-    api_key=os.environ["ANTHROPIC_API_KEY"],
+    base_url="https://api.hop-base.com",
+    api_key=os.environ["HOPBASE_CLAUDE_API_KEY"],
 )

 msg = client.messages.create(
     model="claude-sonnet-5",
     max_tokens=1024,
     messages=[{"role": "user", "content": "Hello"}],
 )

La vía de las variables de entorno también sirve aquí: ANTHROPIC_BASE_URL=https://api.hop-base.com. Consulte Anthropic SDK.

OpenRouter

Cambie la Base URL y la clave, quite el prefijo de proveedor del nombre del modelo y elimine los encabezados de atribución de OpenRouter: HopBase no los necesita.

 import os
 from openai import OpenAI

 client = OpenAI(
-    base_url="https://openrouter.ai/api/v1",
-    api_key=os.environ["OPENROUTER_API_KEY"],
-    default_headers={"HTTP-Referer": "https://your-app.example", "X-Title": "Your App"},
+    base_url="https://api.hop-base.com/v1",
+    api_key=os.environ["HOPBASE_OPENAI_API_KEY"],
 )

 resp = client.chat.completions.create(
-    model="openai/gpt-5.5",
+    model="gpt-5.5",
     messages=[{"role": "user", "content": "Hello"}],
 )

Si llamaba a Claude a través del endpoint compatible con OpenAI de OpenRouter, esa ruta no existe para Claude en HopBase: pase esas llamadas al SDK de Anthropic con una clave de un grupo Claude, como en la sección anterior. Las demás familias (Gemini, GLM, Qwen, DeepSeek, Kimi, Grok) siguen con el SDK de OpenAI, con una clave que incluya el grupo de cada familia.

Lo que no está disponible

Lo que puede estar usandoEn HopBase
Claude mediante /v1/chat/completions o /v1/responses404. Use Anthropic Messages: Anthropic SDK
Gemini mediante la ruta nativa del SDK de Gemini (:generateContent)Compatible en Gemini oficial directo (empresarial): apunte la Base URL del SDK a https://api.hop-base.com. Gemini económico (AI Studio / Vertex) no lo admite: Chat de Gemini
Kimi K3 mediante /v1/responses o /v1/messagesSolo Chat Completions: Kimi K3
Embeddings, transcripción de audio, Files, Batch, Assistants, ajuste fino, moderaciónNo se ofrecen; estas rutas devuelven 404
Una clave para todos los modelosUna clave puede incluir hasta 10 grupos de distintas plataformas, siempre que sus modelos no se solapen, salvo GPT oficial directo (Azure) con un grupo Codex o con GPT Image (todos los modelos) (vea arriba)
Listas de modelos de respaldo de OpenRouter (models), enrutamiento provider, sufijos de modelo como :online o :freeNo disponibles; quítelos y envíe un único ID de modelo

La lista completa de endpoints está en Base URL y protocolos.

Comprobar el cambio

Liste los modelos de la clave

GET https://api.hop-base.com/v1/models con la clave nueva. Use solo los ID que aparezcan en la respuesta.

Envíe una solicitud pequeña

Pida «Responde solo con ok.» y confirme un 200. Un 404 suele significar que el modelo no está en ninguno de los grupos de esta clave o que la Base URL apunta al protocolo equivocado: vea Códigos de error y reintentos.

Compruebe cuánto puede gastar la clave

GET https://api.hop-base.com/v1/usage devuelve el saldo disponible de la clave. Los campos se explican en API de cuenta y catálogo.

Próximos pasos