Prerrequisitos: configuración del SDK
Instala la biblioteca cliente oficial para tu lenguaje antes de configurar la conexión. La biblioteca maneja la serialización JSON, los reintentos y los protocolos de streaming automáticamente.
Para Python, instala el paquete mediante pip. Para Node.js, usa npm o yarn para añadir la dependencia a tu proyecto.
Asegúrate de usar una versión reciente del SDK para admitir todas las funciones como la llamada a funciones y el modo JSON.
Configuración: URL base y clave
Apunta tu cliente SDK a nuestra URL base específica y proporciona la clave API que obtuviste durante el registro.
La URL base es HTTPS://api.claudellmapi.com/v1. Esto asegura que todas las solicitudes vayan a nuestros servidores de modelos sin censura en lugar del proveedor predeterminado.
Establece la clave de la API como una variable de entorno o pásala directamente al constructor del cliente. No se requieren encabezados adicionales.
Enviar tu primera solicitud
Envía una solicitud simple de finalización de chat para verificar la conectividad y la calidad de la respuesta. Utiliza el ID del modelo 'uncensored' para acceder al modelo sin restricciones.
La estructura de la solicitud refleja el formato estándar de OpenAI, lo que facilita cambiar las integraciones existentes.
Esperar una respuesta de texto que contenga la respuesta del modelo a tu prompt.
Gestión de respuestas en streaming
Habilita el streaming para recibir tokens a medida que se generan, reduciendo la latencia percibida para salidas largas.
Establece el parámetro stream a true en tu solicitud. El SDK generará fragmentos de texto a medida que estén disponibles.
Esto es ideal para interfaces de chat donde los usuarios esperan retroalimentación inmediata mientras el modelo sigue pensando.
Implementación de llamada de funciones
Define las herramientas en tu solicitud para permitir que el modelo devuelva datos estructurados en lugar de texto plano.
Especifica el esquema de la función y establece tool_choice en 'auto' o en el nombre de una función específica.
El modelo responderá con un objeto de llamada a función que puedes ejecutar en tu código. Esto funciona sin problemas con nuestro modelo sin censura.
Gestión de errores y límites
Gestiona los errores HTTP comunes de forma adecuada para mantener una experiencia de usuario fluida. Un estado 401 indica una clave API inválida o ausente. Un estado 402 significa que tu crédito prepagado se ha agotado. Un estado 429 indica que has superado el límite de frecuencia de 300 solicitudes por minuto.
Tu ventana de contexto es de 100.000 tokens para prompt y completado combinados. Las solicitudes que excedan el límite de cuerpo de 8 MB también fallarán.
cURL
curl https://api.claudellmapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What are the current rate limits for large context windows"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.claudellmapi.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.claudellmapi.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Transmisión
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)