FR ▾

API textuelle sans censure pour les pipelines vocaux

uncensoredhttps://api.xtts.cc/v1

Guide de démarrage pour les pipelines Xtts

Intégrez notre API textuelle sans censure dans votre pipeline de clonage vocal grâce à ce guide de démarrage. Apprenez à générer des scripts, des sous-titres et des réponses textuelles brutes à l'aide d'endpoints compatibles OpenAI.

Authentification et URL de base

Commencez par accéder à la page Obtenir la clé API et connectez-vous avec Google ou un mot de passe par e-mail. Vous recevrez immédiatement une clé API unique. Utilisez l'URL de base https://api.xtts.cc/v1 pour toutes les requêtes. Cette URL est compatible avec les SDK officiels OpenAI et tout client prenant en charge le format chat-completions OpenAI.

Incluez votre clé dans l'en-tête Authorization sous forme de jeton Bearer. L'identifiant de modèle que vous devez envoyer est uncensored. Ce modèle à poids ouverts est hébergé sur nos serveurs et est optimisé pour répondre sans refus de contenu pour un usage adulte légal, garantissant que votre pipeline vocal reçoit le texte brut dont il a besoin.

Générer du texte sans censure

Envoyez une requête POST à /v1/chat/completions avec vos prompts système et utilisateur. L'API renvoie du JSON structuré contenant le texte généré. Cet endpoint est conçu pour la rédaction de prompts, la génération de scripts et les tâches de post-traitement dans votre workflow de clonage vocal.

Le corps de la requête inclut le nom du modèle, votre historique de messages et des paramètres optionnels comme temperature ou top_p. Vous pouvez contrôler la longueur de la sortie avec le paramètre max_tokens. Si vous ne définissez pas max_tokens, la réponse peut s'étendre jusqu'à la fin de la fenêtre.

curl https://api.xtts.cc/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 du SDK Python

Utilisez le SDK Python officiel OpenAI pour interagir avec notre API. Définissez base_url sur notre endpoint et fournissez votre clé API. Cette approche vous permet de tirer parti des structures de code existantes tout en bénéficiant du comportement de notre modèle sans censure.

Créez une instance de client avec l'URL de base, puis appelez chat.completions.create. Transmettez l'ID de modèle uncensored et vos messages. L'objet de réponse contient le texte généré dans content. Cette méthode est idéale pour les scripts de traitement par lots ou l'intégration de la génération de texte dans de plus grandes applications Python.

from openai import OpenAI

client = OpenAI(base_url="https://api.xtts.cc/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)

Intégration du SDK Node.js

Pour les environnements JavaScript, utilisez le SDK Node.js OpenAI. Configurez le client avec notre URL de base et votre clé API. Cette configuration vous permet de générer du texte directement dans vos applications web ou côté serveur.

Appelez l'endpoint de complétion de chat avec le modèle uncensored. La réponse fournit le texte généré, que vous pouvez ensuite transmettre à votre moteur de synthèse vocale. Cette intégration convient à la génération de texte en temps réel dans les applications web ou les services backend qui préparent des scripts pour le clonage vocal.

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.xtts.cc/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

Activez le streaming en définissant stream sur true dans votre requête. L'API renvoie des Server-Sent Events (SSE) pour chaque token généré. Cette fonctionnalité est utile pour l'affichage en temps réel du texte ou la préparation progressive de la synthèse vocale.

Chaque chunk d'événement contient du texte partiel. Le dernier chunk inclut les statistiques d'utilisation, telles que les comptes de tokens. Le streaming permet à votre application de traiter le texte au fur et à mesure de sa génération, réduisant la latence perçue pour les utilisateurs. Gérez les événements de streaming pour accumuler la réponse complète.

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 de débit et paramètres

Chaque clé API est limitée à 300 requêtes par minute et 8 requêtes simultanées. Le corps de la requête ne doit pas dépasser 8 Mo. Si vous envoyez une clé invalide, vous recevrez une erreur 401. Si votre crédit prépayé est épuisé, vous recevrez une erreur 402. Le dépassement de la limite de débit entraîne une erreur 429.

La fenêtre de contexte prend en charge 100 000 tokens au total, incluant à la fois le prompt et la complétion. Il n'y a pas de limite de sortie séparée, et vous pouvez spécifier un max_tokens inférieur si vous souhaitez une réponse plus courte. Les erreurs et les refus ne consomment pas votre crédit prépayé. Le support de l'appel de fonctions et du mode JSON est disponible pour l'extraction de données structurées.

Fiche technique de l'API

Toutes les limites et fonctions réelles de l'API au même endroit — vérifiez-les avant de recharger.

ÉlémentValeur
Formatcompatible OpenAI : tout SDK OpenAI fonctionne en changeant la base URL et la clé
EndpointsPOST /v1/chat/completions · GET /v1/models
AuthentificationAuthorization: Bearer YOUR_KEY
ID du modèleuncensored
Base URLhttps://api.xtts.cc/v1
Appel de fonctionsoui — tools, tool_choice ; réponse avec tool_calls, aussi en streaming ; résultats en role: tool
Sortie max.jusqu'au reste de la fenêtre de 100 000 tokens ; max_tokens optionnel (pas de plafond distinct)
Paramètrestemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Mode JSONresponse_format: {"type": "json_object"}
Fenêtre de contexte100 000 tokens (entrée + sortie)
Streamingoui — server-sent events ; le dernier bloc contient l'usage des tokens
Taillejusqu'à 8 Mo par requête
Concurrence8 requêtes simultanées par clé
En-têtesX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Limite de débit300 requêtes par minute et par clé
Essai gratuit0,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
Prix0,15 $ par million de tokens en entrée · 0,50 $ par million en sortie
Facturationcrédit prépayé selon l'usage réel ; erreurs et refus gratuits
RechargeUSDT (TRC20) ou USDC (Base), tout montant entier de 20 $ à 500 $
Bonus+5 % dès 50 $, +10 % dès 100 $, +15 % dès 200 $
Validitéle crédit payé n'expire jamais, sans abonnement
ConnexionGoogle ou e-mail et mot de passe
Clésune clé active par compte ; une nouvelle remplace l'ancienne
Contenucontenu adulte autorisé ; tout contenu sexuel impliquant des mineurs est refusé

Erreurs et solutions

Les erreurs arrivent en JSON avec un type stable ; les requêtes échouées ou refusées ne sont pas facturées.

HTTPTypeSignification
400bad_requestJSON invalide, messages vides, mauvais paramètre ou contexte trop long
401missing_key · invalid_key · key_revokedclé absente, erronée ou remplacée
402no_creditplus de crédit — rechargez, la reprise est immédiate
403content_blockedcontenu sexuel impliquant des mineurs — refusé, non facturé
404not_foundendpoint inconnu
413request_too_largecorps supérieur à 8 Mo
429rate_limited · concurrencyau-delà de 300/min ou 8 en parallèle — patientez
503upstream_busymodèle occupé — réessayez dans quelques secondes

Questions et réponses

Comment recharger mon crédit prépayé ?

Vous pouvez recharger en crypto (USDT sur TRC20, USDC sur Base). Les montants acceptés varient de 20 $ à 500 $. Vous bénéficiez d'un bonus de 5 % pour les recharges de 50 $ ou plus, et d'un bonus de 10 % pour 100 $ ou plus. Le crédit n'expire jamais.

L'API génère-t-elle de l'audio ou de la vidéo ?

Non, cette API est strictement dédiée à la génération de texte. Elle fournit une réponse textuelle sans censure que vous pouvez alimenter dans vos propres pipelines de synthèse vocale ou vidéo. Elle ne produit pas directement de fichiers audio, image ou vidéo.

Quelle est l'offre d'essai ?

Les nouveaux utilisateurs reçoivent 0,50 $ de crédit d'essai, une fois par personne, valable 7 jours. Réclamez ce crédit en un clic sur votre page clé API. Aucune carte bancaire n'est requise pour vous connecter. Cela vous permet de tester l'API avant d'acheter du crédit prépayé.

Votre clé n'est qu'à un formulaire d'ici

Créez un compte, copiez la clé, modifiez l'URL de base. C'est toute la configuration.