URL de base et authentification
Connectez-vous à l'API en utilisant l'URL de base fournie et une clé de jeton prépayée. Vous vous authentifiez en transmettant votre clé API dans l'en-tête de la requête, garantissant que seul votre compte accède à vos crédits. Inscrivez-vous via Google ou e-mail pour recevoir votre clé immédiatement sans vérification par téléphone.
curl https://api.kimicodeapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current rate limit for free tier users?"}]
}'Vos requêtes ciblent le point de terminaison standard compatible OpenAI. Cette conception vous permet de remplacer notre service sans réécrire votre code client existant, à condition de mettre à jour l'URL de base et les identifiants.
Point de terminaison Chat Completions
Envoyez des messages au modèle en utilisant le POST /v1/chat/completions endpoint. Vous devez spécifier l’ID du modèle comme uncensored pour accéder au modèle de langage large optimisé exécuté sur nos serveurs. Le système accepte les rôles de message standard comme utilisateur ou assistant pour les conversations multi-tours.
from openai import OpenAI
client = OpenAI(base_url="https://api.kimicodeapi.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)Ce point de terminaison gère l'entrée texte et retourne du texte généré. Il ne prend pas en charge les embeddings, les images ou l'audio. Concentrez-vous sur la structure de votre invite pour obtenir les meilleurs résultats du modèle sans censure.
Réponses en streaming (SSE)
Activez la livraison de jetons en temps réel en définissant le paramètre stream sur true dans votre requête. L'API renvoie des chunks Server-Sent Events (SSE), permettant à votre application d'afficher le texte au fur et à mesure de sa génération. Le dernier chunk contient les statistiques complètes d'utilisation des jetons pour la facturation.
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)Le streaming réduit la latence perçue pour les utilisateurs finaux. Vous pouvez traiter chaque token à mesure qu'il arrive, ce qui est idéal pour les interfaces de chat. N'oubliez pas que le streaming ne modifie pas le comportement sous-jacent du modèle ni le prix des tokens.
Appel de fonction et outils
Définissez les outils dans votre requête pour permettre au modèle de générer des appels de fonctions structurés. L'API prend en charge les paramètres tool_choice, vous permettant de forcer le modèle à utiliser un outil spécifique ou de lui laisser une autonomie décisionnelle. Cette fonctionnalité fonctionne avec les formats d'outils OpenAI standard, ce qui rend l'intégration simple.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.kimicodeapi.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);Utiliser l'appel de fonctions pour extraire des données ou déclencher des actions dans vos applications. Le modèle interprète les définitions d'outils et renvoie des objets JSON contenant les arguments nécessaires. Cette capacité étend l'API au-delà de la simple génération de texte.
Mode JSON et paramètres
Imposer une sortie JSON stricte en définissant response_format à {"type": "json_object"}. Cela garantit que le modèle renvoie du JSON, ce qui est crucial pour l'analyse programmatique. Vous pouvez également ajuster des paramètres comme la température, top_p et les séquences d'arrêt pour contrôler la créativité et la longueur de la sortie.
Le modèle prend en charge une fenêtre de contexte de 100 000 tokens. Cela vous permet de transmettre de grandes quantités de contexte en une seule requête. La sortie maximale est de 16 000 tokens par requête, ou 2 048 si vous ne spécifiez pas max_tokens.
Limites, Erreurs et Contexte
Surveillez vos limites de requêtes pour éviter les interruptions de service. L'API autorise 300 requêtes par minute par clé et jusqu'à 8 requêtes simultanées. Votre corps de requête doit rester inférieur à 8 Mo. Si vous dépassez ces limites, vous recevrez une erreur de limite de débit 429.
Les échecs d'authentification retournent une erreur 401 si la clé est invalide. Une erreur 402 indique un crédit prépayé insuffisant. Les erreurs lors de la génération ne consomment pas vos jetons. La fenêtre de contexte inclut les jetons de prompt et de complétion. Le crédit inutilisé n'expire jamais, garantissant que votre solde prépayé reste disponible pour les projets futurs.