Points clés
- Utilisez Chat Completion, source Personnalisée (compatible OpenAI), endpoint https://api.ornith.top/v1, ID du modèle uncensored.
- Testez la clé avec curl d'abord pour distinguer un problème de clé d'un problème de configuration de SillyTavern.
- Définissez la taille de la fenêtre de contexte pour correspondre à vos discussions ; le modèle prend en charge jusqu'à 100 000 tokens.
- Les chats de groupe peuvent envoyer plusieurs requêtes simultanément, ce qui est limité à 2 par une clé d'essai.
Ce dont vous avez besoin avant de commencer
Vous avez besoin de trois choses : une installation de SillyTavern en cours d'exécution, une clé API et les détails de l'endpoint. SillyTavern est une interface de chat auto-hébergée pour les conversations de personnages et de jeu de rôle, et elle peut communiquer avec tout service suivant le format de chat OpenAI. Ce site fournit un tel service pour une utilisation adulte légale : fiction, jeux de rôle et applications de compagnons pour adultes. Il ne produira pas de contenu sexuel impliquant des mineurs, et aucun réglage ne modifie cela.
Rassemblez ces valeurs :
- URL de base :
https://api.ornith.top/v1 - ID de modèle :
uncensored - Clé API : créée sur la page clé API après vous être connecté avec Google ou avec e-mail et mot de passe.
Les nouveaux comptes peuvent réclamer 0,50 $ de crédit d'essai en un clic sur cette page. Aucune carte n'est nécessaire, c'est un par personne, et cela dure 7 jours. C'est largement suffisant pour tester une carte de personnage, car un tour de discussion typique coûte une fraction de centime (les calculs sont plus bas).
Testez la clé avec curl d'abord
Avant de toucher à SillyTavern, envoyez une requête depuis un terminal. Si cela fonctionne, tout échec ultérieur est un problème de configuration de l'interface ; si cela échoue, le problème vient de la clé ou du réseau.
curl https://api.ornith.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Say hello in one short sentence."}]
}'
Vous devriez obtenir du JSON avec un tableau choices. Regardez également les en-têtes de réponse : X-Balance-USD affiche votre crédit restant, et X-Request-Id est ce que vous devez citer si vous contactez le support. Vous pouvez également lister les modèles avec GET /v1/models :
curl https://api.ornith.top/v1/models \
-H "Authorization: Bearer $API_KEY"
La liste montre l'ID du modèle à utiliser dans SillyTavern, qui est uncensored.
Connectez SillyTavern étape par étape
- Ouvrez SillyTavern et cliquez sur l'icône de prise en haut pour ouvrir Connexions API.
- Dans le menu déroulant API, choisissez Chat Completion.
- Dans le menu déroulant Source Chat Completion, choisissez Personnalisé (compatible OpenAI).
- Dans Endpoint Personnalisé (URL de base), saisissez
https://api.ornith.top/v1. Arrêtez-vous à/v1. N'ajoutez pas/chat/completions, car l'application cliente ajoute ce chemin elle-même. - Collez votre clé dans le champ Clé API Personnalisée.
- Dans ID du modèle, tapez
uncensored. - Appuyez sur Connect. Un statut vert avec le nom du modèle signifie que la poignée de main a réussi.
Les libellés du menu varient légèrement entre les versions de SillyTavern, donc si un nom diffère sur votre version, cherchez la même idée : une source compatible OpenAI personnalisée, un champ endpoint, un champ clé et un champ modèle. Si la connexion échoue, répétez le test curl. Une erreur d'authentification de curl signifie que la clé est incorrecte ; un curl fonctionnel avec une connexion échouée signifie généralement une faute de frappe dans l'URL, comme un /v1 manquant ou un chemin supplémentaire.
Une fois connecté, ouvrez n'importe quelle fiche de personnage et envoyez un message. Si vous voyez une réponse, l'intégration fonctionne. Le reste relève du réglage.
Paramètres importants pour le jeu de rôle
Taille du contexte
Le modèle dispose d'une fenêtre de contexte de 100 000 tokens, comptant le prompt et la réponse ensemble. Dans SillyTavern, le curseur de taille de fenêtre de contexte contrôle la quantité d'historique, de fiche de personnage et de texte de lorebook envoyés à chaque tour. Plus la valeur est élevée, plus le personnage se souvient de choses et plus chaque requête coûte cher, car vous payez pour les tokens d'entrée à chaque tour. Un bon point de départ est une valeur modérée telle que 16 000 à 32 000 tokens, augmentée uniquement si vos conversations sont suffisamment longues pour en avoir besoin. Le paramètre de longueur de réponse correspond à max_tokens, qui est optionnel sur cette API ; définissez une valeur si vous souhaitez des réponses plus courtes.
Diffusion en continu
Activez le streaming dans les paramètres de Chat Completion. L'API prend en charge le SSE avec stream: true, donc le texte apparaît au fur et à mesure de sa génération et vous pouvez arrêter une mauvaise réponse plus tôt. L'utilisation est signalée à la fin du flux.
Échantillonnage
La température, le top_p, les séquences d'arrêt, la graine et les pénalités de fréquence et de présence sont transmis au modèle. Pour le chat créatif, une température autour de 0,8 à 1,0 avec un top_p proche de 0,9 est un point de départ courant. Si les réponses divaguent ou se répètent, baissez un peu la température et ajoutez une petite pénalité de fréquence. Modifiez un paramètre à la fois pour en voir l'effet.
Votre prompt système et votre carte
Le modèle est ajusté pour répondre sans refus de contenu, donc la qualité de la scène dépend de votre prompt et de la fiche de personnage. Un rôle clair, un cadre, un ton et quelques lignes d'exemple de dialogue font plus qu'un simple réglage d'échantillonnage. Si vous écrivez pour un public adulte, précisez explicitement les âges dans le cadre : chaque personnage doit être un adulte.
Coût par message, calculé
Le prix est de 0,15 $ par 1 M de tokens d'entrée et de 0,50 $ par 1 M de tokens de sortie, prélevé sur le crédit prépayé sans abonnement. Comme SillyTavern renvoie la fiche et l'historique à chaque tour, l'entrée domine.
Supposons qu'un tour de chat envoie 6 000 tokens de contexte et reçoive 400 tokens :
- Entrée : 6 000 à 0,15 $ par 1M fait 0,0009 $.
- Sortie : 400 à 0,50 $ par 1M fait 0,0002 $.
- Total : 0,0011 $ par tour.
Une session de 200 tours coûte 0,22 $. Le crédit d'essai de 0,50 $ couvre environ 450 tours de ce type. Les requêtes échouées ou refusées ne sont pas facturées. Lorsque vous ajoutez du crédit, tout montant entier compris entre 20 $ et 500 $ est accepté, avec +5 % à partir de 50 $, +10 % à partir de 100 $ et +15 % à partir de 200 $, par carte (Visa, Mastercard, Apple Pay, Google Pay) ou crypto (USDT sur TRC20, USDC sur Base). Le crédit n'expire jamais. La page tarification contient les détails.
Correction des erreurs courantes
| Symptôme | Cause probable | Correction |
|---|---|---|
| La connexion échoue immédiatement | URL de base ou clé incorrecte | Utilisez https://api.ornith.top/v1 sans chemin de fin ; répétez le test curl |
HTTP 429, code rate_limited | Trop de requêtes par minute | Ralentissez ; les clés d'essai permettent 60 requêtes par minute, les clés complètes 300 |
HTTP 429, code concurrency | Trop de requêtes à la fois | Attendez que la réponse en cours se termine ; les clés d'essai permettent 2 requêtes simultanées, les clés complètes 8 |
HTTP 429 avec Retry-After: 5 | Surcharge temporaire | Réessayez après 5 secondes |
| Requête trop volumineuse | Corps de plus de 8 MB | Réduisez la taille de la fenêtre de contexte ou réduisez la taille du lorebook |
| Fenêtre de contexte trop longue | Prompt plus réponse sur 100 000 tokens | Réduisez la taille de la fenêtre de contexte ou la longueur de la réponse |
Un détail piège les utilisateurs dans les chats de groupe et avec des fonctionnalités qui effectuent des appels supplémentaires en arrière-plan : une requête streaming occupe son slot de concurrence jusqu'à la fin du flux. Si SillyTavern déclenche une réponse, une récapitulation et une tâche de légende d'image en même temps, une clé d'essai avec 2 slots rejettera la troisième. Une clé complète permet 8. Désactivez les extras dont vous n'avez pas besoin, ou espacez-les.
Pour tous les paramètres et les formes d'erreur exactes, lisez la documentation de l'API.
