Installez le SDK OpenAI standard
Commencez par installer le SDK officiel pour votre langage préféré. Cette bibliothèque gère l'authentification et le formatage des requêtes automatiquement. Elle fonctionne avec notre API LLM sans censure sans modifications.
- Python :
pip install openai - Node.js :
npm install openai
La version du SDK doit être suffisamment récente pour prendre en charge le base_url paramètre. Cela garantit la compatibilité avec notre structure d'API compatible OpenAI.
Définissez votre URL de base et votre clé API
Configurez le client pour pointer vers nos serveurs. Utilisez l'URL de base https://api.unrestrictedaibot.com/v1 et votre clé API unique. Cette configuration vous permet d'utiliser le même code que vous avez déjà pour d'autres services.
L'authentification est passée via le Authorization header. Le SDK gère automatiquement cette injection d'en-tête lorsque vous fournissez la clé.
curl https://api.unrestrictedaibot.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Find all null values in this JSON response"}]
}'
Envoyez votre première complétion de chat
Faites une demande à /v1/chat/completions avec l'ID du modèle uncensored. Envoyez un message utilisateur et recevez une réponse textuelle. Ce modèle ne refuse pas les sujets adultes légaux ou le contenu controversé.
Définissez le max_tokens paramètre pour contrôler la longueur de la sortie. La valeur par défaut est de 2 048 jetons si vous omettez ce champ. Notre fenêtre de contexte prend en charge jusqu'à 100 000 jetons au total.
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedaibot.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)
Activez les réponses en streaming
Utilisez les Événements envoyés par le serveur (SSE) pour la livraison de tokens en temps réel. Définissez stream=true dans votre requête. Le SDK émet des tokens au fur et à mesure de leur génération. Cela réduit la latence perçue pour les réponses longues.
Gérez les chunks du flux dans votre code. Le dernier chunk contient l'utilisation totale des jetons. Cela est utile pour la transparence de la facturation et le suivi de la consommation.
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)
Utilisez le mode JSON et l'appel de fonctions
Demandez une sortie structurée en définissant response_format à {"type": "json_object"}. Le modèle renvoie du JSON que vous pouvez analyser directement. C'est idéal pour créer des agents ou des pipelines de données.
Définissez les outils dans votre requête pour l'appel de fonctions. Le modèle peut invoquer des fonctions en fonction de l'invite de l'utilisateur. Utilisez tool_choice pour contrôler quand les fonctions sont appelées. Cela ajoute de la puissance à vos applications sans infrastructure supplémentaire.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedaibot.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);
Vérifiez votre utilisation et vos limites de tokens
Surveillez votre utilisation via les en-têtes de réponse de l'API ou le dernier chunk de streaming. Vous êtes facturé par token utilisé. Les erreurs et les refus sont gratuits. Ce modèle de tarification transparent s'applique à toutes les requêtes.
Respectez les limites de débit : 300 requêtes par minute et 8 requêtes concurrentes par clé. Si vous dépassez ces limites, vous recevrez une erreur 429. Planifiez votre concurrence en conséquence.