URL de base et authentification
L'API Chatterbot se trouve à https://api.chatterbotapi.com/v1. Vous vous authentifiez à l'aide d'un jeton Bearer dans le Authorization header. Votre clé apparaît immédiatement après l'inscription via Google ou par e-mail.
- URL de base :
https://api.chatterbotapi.com/v1 - En-tête :
Authorization: Bearer YOUR_API_KEY
Une clé par compte remplace l'ancienne instantanément. Gardez-la en sécurité.
Première demande
Envoyez une requête POST à /v1/chat/completions avec le modèle uncensored. L'API renvoie du texte généré sans les refus standards pour le contenu adulte licite.
Voici un exemple cURL minimal :
curl https://api.chatterbotapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the capital city of France"}]
}'Vérifiez que la réponse inclut le texte généré dans choices[0].message.content.
Intégration du SDK Python
Utilisez la bibliothèque Python officielle d'OpenAI. Pointez-la vers notre URL de base et injectez votre clé. Le client gère automatiquement la sérialisation JSON.
from openai import OpenAI
client = OpenAI(base_url="https://api.chatterbotapi.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)Cette approche fonctionne pour les appels en streaming et non streaming. L'ID du modèle reste uncensored.
Installation du SDK Node.js
Initialisez le package npm OpenAI avec l'URL de base personnalisée. Cela garantit la compatibilité avec les clients OpenAI existants.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chatterbotapi.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);Configurez la variable d'environnement ou transmettez la clé directement. L'API se comporte comme n'importe quel endpoint standard de chat-completions.
Réponses en streaming
Activez le streaming en définissant stream: true. L'API envoie des événements envoyés par le serveur (SSE). Les données d'utilisation des jetons n'apparaissent que dans le dernier fragment.
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)Traitez chaque chunk à mesure qu'il arrive. Cela réduit la latence perçue pour les sorties longues jusqu'à 16 000 jetons.
Limites et erreurs
Attendez une erreur 401 si la clé est invalide. Une erreur 402 signifie que votre crédit prépayé est épuisé. Les erreurs et les refus ne consomment pas de jetons. Vous êtes limité à 300 requêtes par minute. La fenêtre de contexte contient 100 000 jetons au total. Les corps de requête doivent rester inférieurs à 8 Mo.