API codex OpenAI : Démarrage rapide avec Python
Ce guide montre comment utiliser le LLM sans censure avec les SDK OpenAI standard via notre API compatible OpenAI. Vous pouvez commencer à envoyer des requêtes immédiatement en mettant à jour votre URL de base et votre clé API.
Installer le SDK officiel
Utilisez le SDK officiel pour garantir la compatibilité avec notre API proxy OpenAI. Cette approche fonctionne avec n'importe quelle bibliothèque standard qui prend en charge le protocole OpenAI.
- Installez le package via votre gestionnaire de paquets préféré.
- Vérifiez l'installation en important la bibliothèque.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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.openaicodexapi.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);
Définissez votre URL de base et votre clé
Pointez votre client vers notre point de terminaison de passerelle openai pour accéder au modèle d'IA sans censorship. Remplacez l'URL de base par défaut par notre point de terminaison spécifique.
- Définissez la clé API dans vos variables d'environnement.
- Configurez l'URL de base vers
https://api.openaicodexapi.com/v1.
Cette configuration garantit que vos requêtes sont acheminées correctement vers nos serveurs sans modifier la structure de votre code existant.
curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'
Envoyez votre première demande
Envoyez une simple complétion de texte pour tester la connexion. Utilisez l'ID du modèle uncensored pour la requête.
- Définissez le contenu du message.
- Exécutez la requête.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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.openaicodexapi.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);La réponse retourne le texte généré directement.
Activer le Streaming et le Mode JSON
Diffusez les réponses pour une latence plus faible ou activez le mode JSON pour des données structurées. Définissez stream=true pour la livraison de tokens en temps réel.
- Utiliser
response_formatpour une sortie JSON. - Gérez les chunks dans votre code.
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)curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'Le streaming vous aide à afficher rapidement les résultats partiels.
Gérer les outils et l'appel de fonctions
Définissez les outils dans votre requête pour activer l'appel de fonctions. Spécifiez les définitions des outils et laissez le modèle décider quand les utiliser.
- Définissez le schéma de la fonction.
- Analysez les appels d'outils dans la réponse.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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.openaicodexapi.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);Cette fonctionnalité permet l'intégration avec des systèmes externes.
Limites, Erreurs et Fenêtre de contexte
Surveillez votre utilisation pour éviter les limites de taux ou les erreurs. La fenêtre de contexte prend en charge 100,000 tokens au total.
- Gérez les erreurs 401 pour les clés invalides.
- Gérez les erreurs 402 pour solde insuffisant.
- Gérez les erreurs 429 pour les limites de débit.
curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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.openaicodexapi.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);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)FAQ
Qu'est-ce que l'API Codex OpenAI ?
C'est une API LLM sans censure compatible avec le protocole OpenAI. Vous pouvez l'utiliser avec des SDK standard en mettant à jour l'URL de base.
Comment gérer les erreurs ?
Les erreurs courantes incluent 401 pour les clés invalides, 402 pour l'absence de crédit et 429 pour les limites de débit. Vérifiez le solde de votre compte et la validité de votre clé.
Quelle est la taille de la fenêtre de contexte ?
La fenêtre de contexte est de 100 000 tokens pour l'ensemble de l'invite et de la réponse combinés. La sortie maximale est de 16 000 tokens par requête.
Obtenez votre clé API
Inscrivez-vous, copiez la clé et mettez à jour l'URL de base. C'est tout.