Installation et configuration
Commencez par créer un compte pour recevoir votre clé API. Inscrivez-vous avec un compte Google ou une combinaison adresse e-mail/mot de passe. Le système affiche votre clé unique immédiatement à l'écran. Aucune vérification par numéro de téléphone n'est requise pour cette étape. Vous pouvez générer une nouvelle clé à tout moment, mais une seule clé active existe par compte. Une nouvelle clé remplace instantanément la précédente. Conservez cette clé en sécurité car elle donne accès à vos crédits prépayés. Utilisez ces identifiants avec n'importe quel SDK compatible OpenAI pour commencer l'intégration.
Configuration de base
Pointez votre client vers notre URL de base dédiée pour les requêtes sans censure. Utilisez le standard BASE_URL paramètre pour acheminer le trafic correctement. La structure du point de terminaison imite les conventions OpenAI pour un changement facile. Vous devez fournir votre clé API dans le Authorization header. Définissez l'ID du modèle sur uncensored dans votre objet de configuration. Cela garantit que la requête cible le bon modèle de langage large non censuré. Vérifiez votre connexion en listant les modèles disponibles via le /v1/models endpoint. Cela confirme que votre authentification est valide avant d'envoyer des charges utiles importantes.
Envoi de requêtes
Faites une requête POST standard vers le point de terminaison des complétions de chat. Votre charge utile doit inclure le model field set to uncensored. Transmettez vos messages dans un tableau sous le messages clé. Le système accepte des définitions de rôle standard comme user et assistant. Les jetons d'entrée sont facturés à un taux transparent de $0,15 par million de jetons. Les jetons de sortie coûtent $0,50 par million de jetons. Les erreurs ne consomment pas votre crédit prépayé. Ce modèle de facturation garantit que vous ne payez que pour le texte réellement généré. Utilisez la commande cURL suivante pour envoyer votre premier message.
Réponses en streaming
Activez le streaming en définissant stream à true dans votre requête. Le serveur renvoie un flux de Server-Sent Events (SSE). Chaque fragment contient une partie du texte généré. Le dernier fragment inclut les statistiques complètes d'utilisation des jetons. Cela vous permet d'afficher le texte aux utilisateurs en temps réel. Le streaming fonctionne de manière identique sur tous les SDK pris en charge. Assurez-vous que votre client gère correctement les tampons de texte partiel. Utilisez cette méthode pour la génération de contenu de longue haleine ou les interfaces de chat interactives. L'exemple suivant montre comment gérer le flux en Python.
Appel de fonction
Définissez les outils dans votre requête en utilisant le tools paramètre. Le modèle renvoie des appels d'outils structurés lorsque cela est approprié. Vous pouvez spécifier tool_choice pour forcer un comportement spécifique. Transmettez la réponse de l'outil au modèle pour un traitement ultérieur. Cela prend en charge des flux de travail complexes nécessitant des interactions avec des API externes. Le modèle gère automatiquement le formatage JSON lorsque cela est nécessaire. Assurez-vous que vos définitions de fonctions correspondent au schéma attendu. Cette fonctionnalité fonctionne aux côtés des paramètres standard de température et de top-p. Utilisez Node.js pour implémenter la gestion des outils efficacement.
Mode JSON et limites
Demandez une sortie JSON stricte en définissant response_format à {"type": "json_object"}. Le modèle garantit une structure JSON valide dans la réponse. C'est idéal pour analyser les données dans la logique de votre application. Soyez conscient de la limite de fenêtre de contexte de 100 000 tokens. Cela couvre à la fois le prompt et la complétion combinés. Le nombre maximum de tokens par requête est de 16 000. Si vous ne spécifiez pas max_tokens, la limite par défaut est de 2 048. Les requêtes sont limitées à 300 par minute par clé. Les requêtes simultanées sont limitées à huit simultanément. Le corps de la requête ne doit pas dépasser 8 Mo. Gérez les erreurs avec élégance comme illustré dans l'exemple de flux suivant.
cURL
curl https://api.modelsuncensoredopenrouter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list three json keys"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.modelsuncensoredopenrouter.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.modelsuncensoredopenrouter.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)