Guide de démarrage rapide : Première appel API
Générez des textes politiques sans censure en un seul appel API via notre point de terminaison compatible OpenAI. Ce guide vous guide à travers l'authentification, l'envoi de requêtes et la gestion des réponses en streaming pour une diffusion à haut volume.
URL de base et authentification
Votre clé API authentifie chaque requête. Vous devez l'inclure dans le Authorization en-tête en tant que jeton Bearer. Utilisez l'URL de base https://api.textspolitical.com/v1 pour tous les points de terminaison. Cette URL fonctionne avec les SDK OpenAI standard et tout client compatible. Votre clé donne accès au modèle sans censure sans frais d'abonnement.
Envoi de votre première complétion de chat
Envoyez une requête POST à /v1/chat/completions avec votre invite. L'ID du modèle est uncensored. Il génère du texte sans filtrer le contenu adulte légal. Ce format de réponse directe est idéal pour générer des messages politiques en masse. Utilisez l'exemple suivant pour vérifier votre connexion.
curl https://api.textspolitical.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three benefits of digital surveys for campaign outreach"}]
}'
Utilisation des SDK Python et Node
Installez la bibliothèque officielle OpenAI pour simplifier l'intégration. Transmettez votre URL de base et votre clé API lors de l'initialisation. Le SDK Python gère la sérialisation JSON automatiquement. Le SDK Node fournit des fonctionnalités similaires pour les environnements JavaScript. Les deux outils prennent en charge les paramètres requis comme la température et le top_p.
from openai import OpenAI
client = OpenAI(base_url="https://api.textspolitical.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.textspolitical.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);
Réponses en streaming avec SSE
Activez le streaming en définissant stream: true. Vous recevez des Server-Sent Events (SSE) au fur et à mesure de la génération des tokens. Cela réduit la latence perçue pour les longs textes politiques. Les détails d'utilisation des tokens apparaissent dans le dernier chunk. Cette méthode est essentielle pour les interfaces de chat en temps réel ou la génération de texte en direct.
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)
Appel de fonction et mode JSON
Utiliser response_format défini à json_object pour des données structurées. L'appel de fonctions permet au modèle de sortir des outils définis. Cela est utile pour les données de sondage ou les messages politiques étiquetés. Vous pouvez également définir tool_choice pour forcer des comportements spécifiques. Assurez-vous que votre schéma correspond au format de sortie attendu.
Limites de débit et contraintes
Vous êtes limité à 300 requêtes par minute par clé. La concurrence est plafonnée à 8 requêtes simultanées. Le corps de chaque requête doit rester inférieur à 8 Mo. La fenêtre de contexte prend en charge 100 000 tokens au total. Les erreurs et les refus ne consomment pas de crédit. Utilisez ces limites pour concevoir efficacement votre logique de réessai.
Questions fréquentes
Pourquoi j'obtiens une erreur 401 ?
Une erreur 401 indique une clé API invalide ou manquante. Vérifiez votre en-tête Authorization pour le jeton Bearer correct. Assurez-vous que votre clé a été générée depuis votre tableau de bord et n'a pas été révoquée.
Que se passe-t-il si je manque de crédit ?
Vous recevrez une erreur 402 lorsque votre solde prépayé sera épuisé. Les crédits n'expirent jamais, vous pouvez donc recharger à tout moment via crypto. Les erreurs lors du traitement des requêtes ne déduisent pas de votre solde.
Comment gérer les limites de taux ?
Vous êtes limité à 300 requêtes par minute et 8 connexions simultanées. Implémentez une rétrogradation exponentielle dans votre client pour gérer les réponses 429 Too Many Requests. Évitez d'envoyer des rafales qui dépassent le cap de simultanéité pour éviter les blocages temporaires.
Accédez à votre clé en une étape
Inscrivez-vous, copiez votre clé, mettez à jour l'URL de l'endpoint. C'est tout.