Una API para cada modelo disponible.
Usa los SDK habituales de OpenAI, descubre el catálogo verificado en tiempo real y recibe respuestas en streaming desde un solo endpoint.
https://ai.developpeurcasablanca.com/v1
Autenticación
Envía tu clave de desarrollador como token Bearer en cada solicitud.
Nunca expongas una clave en JavaScript del navegador, una aplicación móvil o un repositorio público.
Authorization: Bearer dk_your_key_here
Inicio rápido
Sustituye la clave y el modelo de ejemplo por los valores de tu cuenta.
curl https://ai.developpeurcasablanca.com/v1/chat/completions \
-H "Authorization: Bearer dk_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"model": "your-model-id",
"messages": [
{"role": "user", "content": "Hello"}
]
}'
from openai import OpenAI
client = OpenAI(
api_key="dk_your_key_here",
base_url="https://ai.developpeurcasablanca.com/v1",
)
reply = client.chat.completions.create(
model="your-model-id",
messages=[{"role": "user", "content": "Hello"}],
)
print(reply.choices[0].message.content)
No inventes un nombre de modelo: llama a GET /v1/models y usa un ID devuelto para tu clave.
GET /v1/models
Devuelve solo los modelos activados y disponibles con las claves de proveedor del servicio.
curl https://ai.developpeurcasablanca.com/v1/models \
-H "Authorization: Bearer dk_your_key_here"
{
"object": "list",
"data": [{
"id": "model-id",
"object": "model"
}]
}
POST /v1/chat/completions
Crea una respuesta con el mismo formato de solicitud que el completado de chat de OpenAI.
modelObligatorioUn ID de modelo devuelto por /v1/models.
messagesObligatorioUna lista ordenada de objetos con rol y contenido.
streamOpcionalActívalo para recibir eventos incrementales del servidor.
Streaming
Activa stream para recibir tokens en cuanto se generan.
stream = client.chat.completions.create(
model="your-model-id",
messages=[{"role": "user", "content": "Write a haiku"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")
Errores
Los errores usan códigos HTTP estándar y un mensaje JSON.
| Estado | Significado | Qué hacer |
|---|---|---|
400 | Solicitud no válida | Comprueba los campos JSON y el ID del modelo. |
401 | Clave ausente o no válida | Crea o sustituye tu clave de desarrollador. |
402 | Crédito insuficiente | Añade crédito prepago para la API. |
429 | Demasiadas solicitudes | Reintenta con espera exponencial. |
5xx | Problema temporal del servicio | Reintenta de forma segura tras una breve espera. |
¿Listo para tu primera llamada?
Crea una cuenta y una clave, y descubre los modelos disponibles para ella.