Prérequis : configuration du SDK
Installez la bibliothèque cliente officielle pour votre langage préféré avant de configurer la connexion. La bibliothèque gère automatiquement la sérialisation JSON, les nouvelles tentatives et les protocoles de streaming.
Pour Python, installez le package via pip. Pour Node.js, utilisez npm ou yarn pour ajouter la dépendance à votre projet.
Assurez-vous d'utiliser une version récente du SDK pour prendre en charge toutes les fonctionnalités comme l'appel de fonctions et le mode JSON.
Configuration : URL de base & Clé
Pointez votre client SDK vers notre URL de base spécifique et fournissez la clé API que vous avez obtenue lors de l'inscription.
L'URL de base est HTTPS://api.claudellmapi.com/v1. Cela garantit que toutes les requêtes sont envoyées à nos serveurs de modèle sans censure au lieu du fournisseur par défaut.
Définissez la clé API en tant que variable d'environnement ou passez-la directement au constructeur du client. Aucun en-tête supplémentaire n'est requis.
Envoi de votre première requête
Envoyez une simple demande de complétion de chat pour vérifier la connectivité et la qualité de la réponse. Utilisez l'ID de modèle 'uncensored' pour accéder au modèle sans restriction.
La structure de la requête imite le format standard OpenAI, ce qui facilite le remplacement des intégrations existantes.
Attendez une réponse texte contenant la réponse du modèle à votre invite.
Gestion des réponses en streaming
Activez le streaming pour recevoir les jetons au fur et à mesure de leur génération, réduisant la latence perçue pour les sorties longues.
Définissez le paramètre stream sur true dans votre requête. Le SDK restituera des chunks de texte dès qu'ils seront disponibles.
C'est idéal pour les interfaces de chat où les utilisateurs s'attendent à un retour immédiat pendant que le modèle réfléchit encore.
Implémentation de l'appel de fonctions
Définissez les outils dans votre requête pour permettre au modèle de renvoyer des données structurées au lieu de texte brut.
Specify the function schema and set tool_choice to 'auto' or a specific function name.
Le modèle répondra avec un objet d'appel de fonction que vous pouvez exécuter dans votre code. Cela fonctionne seamlessly avec notre modèle uncensored.
Gestion des erreurs & Limites
Gérez couramment les erreurs HTTP avec élégance pour maintenir une expérience utilisateur fluide. Un statut 401 indique une clé API invalide ou manquante. Un statut 402 signifie que votre crédit prépayé est épuisé. Un statut 429 signale que vous avez dépassé la limite de débit de 300 requêtes par minute.
Votre fenêtre de contexte est de 100 000 tokens pour le prompt et la complétion combinés. Les requêtes dépassant la limite de corps de 8 Mo échoueront également.
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);Streaming
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)