Saltar al contenido

LiteLLM

Llame a HopBase desde el SDK de Python de LiteLLM o enrute a HopBase desde el config.yaml de un LiteLLM Proxy.

LiteLLM ofrece una sola interfaz para muchos proveedores de modelos, ya sea como SDK de Python (litellm.completion) o como servidor proxy autoalojado. HopBase se conecta a ambos como proveedor compatible con OpenAI: anteponga openai/ al ID de modelo y defina api_base.

AjusteValor
modelopenai/<ID de modelo de HopBase>, por ejemplo openai/deepseek-v4.1-flash-1017
api_basehttps://api.hop-base.com/v1
api_keyUna clave creada en la consola

Verificado en producción con LiteLLM 1.106: litellm.completion con y sin stream=True, y un LiteLLM Proxy que atiende solicitudes normales y en streaming.

Elija el grupo que contiene su modelo.

Una clave de HopBase solo llega a los modelos de los grupos que incluye. Al crear la clave en la consola, seleccione el grupo que sirve el modelo que quiere usar: por ejemplo DeepSeek para deepseek-v4.1-flash-1017, DeepSeek centro de datos de Singapur para deepseek-v4.1-flash-1017-sg o Gemini (todos los modelos, incl. imagen) para gemini-3.8-flash. Una clave sin el grupo del modelo devuelve 404 model_not_found.

El prefijo openai/ solo le indica a LiteLLM qué protocolo usar; se elimina antes de enviar la solicitud, así que HopBase recibe el ID de modelo tal cual.

SDK de Python

pip install litellm
export HOPBASE_API_KEY=sk-your-key
import os
import litellm

response = litellm.completion(
    model="openai/deepseek-v4.1-flash-1017",
    api_base="https://api.hop-base.com/v1",
    api_key=os.environ["HOPBASE_API_KEY"],
    messages=[{"role": "user", "content": "Reply with one word: hello."}],
)
print(response.choices[0].message.content)

El streaming usa los mismos argumentos más stream=True:

stream = litellm.completion(
    model="openai/deepseek-v4.1-flash-1017",
    api_base="https://api.hop-base.com/v1",
    api_key=os.environ["HOPBASE_API_KEY"],
    messages=[{"role": "user", "content": "Count from 1 to 5."}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

LiteLLM Proxy

En config.yaml, asigne cada nombre que llamarán sus clientes a un modelo de HopBase:

model_list:
  - model_name: deepseek-v4.1-flash-1017
    litellm_params:
      model: openai/deepseek-v4.1-flash-1017
      api_base: https://api.hop-base.com/v1
      api_key: os.environ/HOPBASE_API_KEY

general_settings:
  master_key: os.environ/LITELLM_MASTER_KEY

os.environ/HOPBASE_API_KEY hace que el proxy lea la clave de HopBase del entorno. Las versiones recientes de LiteLLM se niegan a arrancar sin master_key; es la clave que sus propios clientes envían al proxy, distinta de la clave de HopBase.

pip install 'litellm[proxy]'
export HOPBASE_API_KEY=sk-your-key
export LITELLM_MASTER_KEY=sk-your-proxy-key
litellm --config config.yaml --port 4000

Después, llame al proxy como a cualquier endpoint compatible con OpenAI:

curl http://localhost:4000/v1/chat/completions \
  -H "Authorization: Bearer $LITELLM_MASTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "deepseek-v4.1-flash-1017", "messages": [{"role": "user", "content": "Reply with one word: hello."}]}'

Para exponer más modelos, añada una entrada de model_list por ID de modelo, como openai/deepseek-v4.1-flash-1017-sg u openai/gemini-3.8-flash, cada uno servido por un grupo que incluya su clave.

Los precios de cada modelo están en la página de precios.

Solución de problemas

SíntomaCausa
AuthenticationError / 401La clave de HopBase no está definida donde se ejecuta LiteLLM, o está desactivada
404 model_not_foundLa clave no incluye el grupo del modelo, o el ID después de openai/ está abreviado. Vuelva a consultar GET /v1/models
LLM Provider NOT providedAl ID de modelo le falta el prefijo openai/
El proxy se cierra con "no master key is set"Añada general_settings.master_key o defina LITELLM_MASTER_KEY

Próximos pasos