Authentifier et configurer l'URL de base
Votre clé API vous donne un accès immédiat au point de terminaison des complétions de chat. Générez une clé via Google ou e-mail sur le tableau de bord et collez-la dans vos variables d'environnement. L'URL de base est https://api.cheapaiapikeys.com/v1 qui fonctionne avec n'importe quel client SDK OpenAI standard.
- Définir
OPENAI_API_KEYà votre chaîne générée. - Remplacer
base_urlpour pointer vers notre serveur hébergé. - Vérifiez la connectivité en appelant
GET /v1/modelspour lister les modèles disponibles.
curl https://api.cheapaiapikeys.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three common regex patterns for validating email addresses"}]
}'
Envoyez votre première demande de complétion de chat
Envoyez une entrée textuelle et recevez du texte généré en utilisant la structure standard de complétion de chat. Notre modèle uncensored unique traite les requêtes sans refuser les sujets adultes licites ou controversés. Vous pouvez ajuster des paramètres comme temperature et top_p pour contrôler l'aléatoire.
from openai import OpenAI
client = OpenAI(base_url="https://api.cheapaiapikeys.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)
Activer le Streaming et Gérer les Événements SSE
Activer la livraison de jetons en temps réel en définissant stream: true dans votre requête. Le serveur retourne des Server-Sent Events (SSE) que vous devez analyser de manière incrémentale. Les détails d'utilisation des tokens apparaissent dans le dernier chunk du flux. Cette approche réduit la latence perçue pour les réponses longues.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.cheapaiapikeys.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);
Utilisez l'appel de fonction et le mode JSON
Définissez les outils dans le corps de votre requête pour activer la sortie structurée ou l'exécution de fonctions externes. Utilisez response_format: {type: "json_object"} pour forcer une conformité JSON stricte. Le modèle prend en charge tool_choice pour un contrôle précis des fonctions qu'il invoque. Cela garantit un analyse fiable pour la logique de votre application.
Comprendre les limites de tokens et la tarification
La tarification est transparente à 0,15 $ par million de jetons d'entrée et 0,50 $ par million de jetons de sortie. Les erreurs et les refus ne consomment pas de crédit. La fenêtre de contexte prend en charge 100 000 jetons au total. Les requêtes dépassant cette limite retournent une erreur de limite de taux 429. Assurez-vous que vos charges utiles restent sous 8 Mo pour éviter les erreurs de corps.
Gérer les erreurs et les cas limites
Les erreurs courantes incluent 401 pour les clés invalides et 402 pour le crédit insuffisant. Un statut 429 indique que vous avez dépassé 300 requêtes par minute. Utilisez une temporisation exponentielle lors des nouvelles tentatives après les limites de débit. Vérifiez le error objet dans la réponse JSON pour des détails spécifiques. Les remboursements ne sont pas émis, surveillez donc votre utilisation de près.
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)