Kairness API
Inferencia de IA compatible con OpenAI, con el modelo propio de Kairos alojado en nuestra propia infraestructura (España, sin enviar datos a terceros).
La API replica el formato de OpenAI (/v1/chat/completions), así que cualquier SDK o cliente que ya uses (openai-python, Vercel AI SDK, LangChain…) funciona cambiando solo la base URL y la key.
https://api.kairness.com/v1Autenticación
Cada petición lleva tu API key en la cabecera Authorization. Consigue una key desde el panel de control o pídesela a tu administrador.
Authorization: Bearer TU_API_KEY
Quickstart
Una petición mínima:
curl https://api.kairness.com/v1/chat/completions \
-H "Authorization: Bearer TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kairos",
"messages": [{"role":"user","content":"Hola, ¿qué eres?"}]
}'
# pip install openai
from openai import OpenAI
client = OpenAI(base_url="https://api.kairness.com/v1", api_key="TU_API_KEY")
r = client.chat.completions.create(
model="kairos",
messages=[{"role":"user","content":"Hola, ¿qué eres?"}],
)
print(r.choices[0].message.content)
// npm i openai
import OpenAI from "openai";
const client = new OpenAI({ baseURL:"https://api.kairness.com/v1", apiKey:"TU_API_KEY" });
const r = await client.chat.completions.create({
model:"kairos",
messages:[{ role:"user", content:"Hola, ¿qué eres?" }],
});
console.log(r.choices[0].message.content);
Chat completions POST /v1/chat/completions
El endpoint principal. Parámetros compatibles con OpenAI:
| Parámetro | Tipo | Descripción |
|---|---|---|
model | string | Siempre kairos. |
messages | array | Historial de la conversación (role + content). |
stream | bool | Si true, respuesta por SSE token a token. |
max_tokens | int | Tope de tokens de salida. |
temperature | number | 0–2. Por defecto 1. |
usage de la respuesta incluye prompt_tokens_details.cached_tokens: la parte de tu prompt servida desde el prefix-cache (más barata). Reutilizar el mismo prefijo entre llamadas ahorra coste.Streaming (SSE)
Con "stream": true la respuesta llega como text/event-stream: líneas data: {…} con deltas, y data: [DONE] al final.
curl -N https://api.kairness.com/v1/chat/completions \
-H "Authorization: Bearer TU_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"kairos","stream":true,
"messages":[{"role":"user","content":"Cuéntame un chiste"}]}'
Modelos
| ID | Contexto | Notas |
|---|---|---|
kairos | hasta 256k | Modelo propio de Kairos. Texto. Self-hosted en GPUs en España. |
Precios
La API es de pago por uso: pagas solo por los tokens que consumes, sin suscripción. Precios por millón de tokens (IVA no incluido):
| Modelo | Entrada / 1M | Cacheado / 1M | Salida / 1M |
|---|---|---|---|
kairos | 0,50 € | 0,10 € | 2,00 € |
cached_tokens) cuestan mucho menos. Reutilizar el mismo prefijo entre llamadas abarata el coste.Al superar el rate-limit de tu key recibes 429. ¿Prefieres una cuota mensual fija en vez de pago por uso? Mira los planes.
Errores
| Código | Significado |
|---|---|
401 | Key ausente, inválida o revocada. |
429 | Rate-limit o cuota mensual superada. |
400 | Cuerpo mal formado (modelo o messages inválidos). |
503 | Modelo temporalmente no disponible. |
Panel de control
En platform.kairness.com ves tu plan y tu consumo (tokens, coste, cache-hit) y gestionas tu cuenta.
Kairness · inferencia self-hosted · sin envío de datos a terceros.