Documentation de l'API Chatbot IA sans censure
Commencez avec l'API chatbot IA sans censure en quelques minutes. Ce guide couvre l'authentification, les requêtes de base, le streaming et l'utilisation des outils pour vos applications NSFW ou de jeu de rôle.
URL de base et authentification
Pour utiliser l'API LLM sans censure, configurez votre client avec l'URL de base https://api.uncensoredaichatbot.top/v1. Le service est compatible OpenAI, ce qui signifie que vous pouvez utiliser des SDK standard en mettant à jour le base_url et en fournissant votre clé API.
Inscrivez-vous via Google ou e-mail pour recevoir votre clé immédiatement. Aucun numéro de téléphone n'est requis. Gardez votre clé en sécurité ; elle authentifie toutes les requêtes vers le modèle uncensored. Nous ne facturons que l'utilisation brute des tokens, donc les erreurs sont gratuites.
Première requête
Envoyez une requête standard de complétion de chat pour générer du texte. Le modèle d'IA sans censure répond aux prompts pour adultes légaux et aux prompts de jeu de rôle sans refus de contenu. Utilisez le tableau messages pour structurer l'historique de votre conversation.
- Les tokens d'entrée coûtent 0,25 $ par 1 M.
- Les tokens de sortie coûtent 1,00 $ par 1M.
- Assurez-vous d'avoir un crédit prépayé avant d'envoyer.
Voici un exemple cURL de base pour commencer.
curl https://api.uncensoredaichatbot.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
Intégration SDK Python
Intégrez directement dans votre backend Python en utilisant le SDK OpenAI officiel. Pointez le client vers notre URL de base et définissez votre clé API. Cette approche de chatbot IA sans censure vous permet de gérer efficacement des fenêtres de contexte jusqu'à 100 000 tokens.
N'oubliez pas que l'api llm sans censure ne prend pas en charge la génération d'images ou d'audio. Elle est strictement destinée au texte. Définissez votre paramètre de modèle sur uncensored pour vous assurer que vous atteignez le bon endpoint.
from openai import OpenAI
client = OpenAI(base_url="https://api.uncensoredaichatbot.top/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)
Utilisation SDK Node.js
Pour les environnements JavaScript ou TypeScript, le SDK Node fonctionne de manière identique. Configurez l'agent fetch ou http pour pointer vers notre API. C'est idéal pour les applications web à fort volume ayant besoin de génération de texte sans restriction.
Vous pouvez mélanger les prompts système avec les messages utilisateur pour guider le comportement du modèle. La clé api sans censure vous permet de remplacer les appels OpenAI ou d'autres fournisseurs sans modifier significativement la structure de votre code.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.uncensoredaichatbot.top/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);
Réponses en streaming
Utilisez les Server-Sent Events (SSE) pour la livraison de tokens en temps réel. Cela réduit la latence perçue pour les utilisateurs dans les interfaces de jeu de rôle ou de chat. Le dernier fragment du streaming inclut les statistiques complètes d'utilisation des tokens pour la facturation.
Le streaming est pris en charge via le format standard compatible OpenAI. Gérez les réponses partielles avec élégance dans votre interface utilisateur. L'api ai sans censure garantit que le streaming fonctionne de manière cohérente avec les SDK standard.
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)
Limites, erreurs et contexte
La fenêtre de contexte fait 100 000 tokens au total (prompt + complétion). La sortie maximale est de 32 000 tokens, ou 2 048 si max_tokens n'est pas défini.
Limites de débit
- 300 requêtes par minute par clé.
- 8 requêtes simultanées par clé.
Erreurs courantes
- 401 Non autorisé : Clé API invalide ou manquante.
- 402 Paiement requis : Crédit prépayé insuffisant.
- 429 Trop de requêtes : Vous avez dépassé la limite de débit.
Le contenu impliquant des mineurs est toujours refusé. Les autres contenus adultes sont autorisés.
Questions et réponses
Le crédit prépayé expire-t-il ?
Non, votre crédit prépayé n'expire jamais. Vous pouvez le recharger avec USDT (TRC20) ou USDC (Base) à tout moment. Les erreurs et les refus ne consomment pas votre crédit.
Quelle est la taille de la fenêtre de contexte ?
Le modèle prend en charge une fenêtre de contexte de 100 000 tokens, combinant les tokens du prompt et de la complétion. Le maximum de sortie par requête est de 32 000 tokens.
Puis-je l'utiliser pour l'appel de fonctions ?
Oui, l'api sans censure prend en charge l'appel de fonctions (outils). Vous pouvez définir des outils et utiliser le paramètre <code>tool_choice</code> pour contrôler comment le modèle les utilise.
Votre clé est à un formulaire de vous
Créez un compte, copiez la clé, modifiez l'URL de base. C'est toute la configuration.
Caractéristiques techniques
Toutes les limites et fonctions réelles de l'API au même endroit — vérifiez-les avant de recharger.
| Élément | Valeur |
|---|---|
| Format | compatible OpenAI : tout SDK OpenAI fonctionne en changeant la base URL et la clé |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID du modèle | uncensored |
| Base URL | https://api.uncensoredaichatbot.top/v1 |
| Authentification | Authorization: Bearer YOUR_KEY |
| Fenêtre de contexte | 100 000 tokens (entrée + sortie) |
| Streaming | oui — server-sent events ; le dernier bloc contient l'usage des tokens |
| Appel de fonctions | oui — tools, tool_choice ; réponse avec tool_calls, aussi en streaming ; résultats en role: tool |
| Mode JSON | response_format: {"type": "json_object"} |
| Paramètres | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Sortie max. | jusqu'au reste de la fenêtre de 100 000 tokens ; max_tokens optionnel (pas de plafond distinct) |
| Concurrence | 8 requêtes simultanées par clé |
| Taille | jusqu'à 8 Mo par requête |
| Limite de débit | 300 requêtes par minute et par clé |
| En-têtes | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Bonus | +5 % dès 50 $, +10 % dès 100 $ |
| Facturation | crédit prépayé selon l'usage réel ; erreurs et refus gratuits |
| Prix | 0,25 $ par million de tokens en entrée · 1,00 $ par million en sortie |
| Essai gratuit | 0,50 $ pendant 7 jours, sans carte · Clé d'essai : 2 requêtes parallèles, 60 par minute ; limites complètes (8 et 300) après la 1re recharge |
| Recharge | USDT (TRC20) ou USDC (Base), tout montant entier de 10 $ à 500 $ |
| Validité | le crédit payé n'expire jamais, sans abonnement |
| Connexion | Google ou e-mail et mot de passe |
| Contenu | contenu adulte autorisé ; tout contenu sexuel impliquant des mineurs est refusé |
| Clés | une clé active par compte ; une nouvelle remplace l'ancienne |
Codes d'erreur
Les erreurs arrivent en JSON avec un type stable ; les requêtes échouées ou refusées ne sont pas facturées.
| Code | Type | Signification |
|---|---|---|
400 | bad_request | JSON invalide, messages vides, mauvais paramètre ou contexte trop long |
401 | missing_key · invalid_key · key_revoked | clé absente, erronée ou remplacée |
402 | no_credit | plus de crédit — rechargez, la reprise est immédiate |
403 | content_blocked | contenu sexuel impliquant des mineurs — refusé, non facturé |
404 | not_found | endpoint inconnu |
413 | request_too_large | corps supérieur à 8 Mo |
429 | rate_limited · concurrency | au-delà de 300/min ou 8 en parallèle — patientez |
503 | upstream_busy | modèle occupé — réessayez dans quelques secondes |