Intégrez l'API Venice AI en quelques minutes
Intégrez l’API Venice AI dans votre pile existante et obtenez des réponses uncensored sans les refus de contenu habituels.
- URL de base
https://api.veniceaiapi.com/v1- Modèle
uncensored
Configuration de l'URL de base et de l'authentification
L'API vit à l'adresse https://api.veniceaiapi.com/v1. Vous vous authentifiez à l'aide d'une clé API unique passée dans le Authorization header.
Inscrivez-vous via Google ou adresse e-mail pour obtenir votre clé instantanément. Aucun numéro de téléphone n'est requis. Utilisez la clé avec n'importe quel SDK compatible OpenAI en définissant l'URL de base.
Chaque compte détient une clé active. La génération d'une nouvelle clé révoque immédiatement l'ancienne. Cela garantit un contrôle d'accès simple sans scopes de permissions complexes.
L'ID du modèle que vous devez envoyer est "uncensored". Il s'agit d'un modèle à poids ouverts optimisé pour répondre sans refus de contenu pour une utilisation adulte légale.
- URL de base :
https://api.veniceaiapi.com/v1 - En-tête Auth :
Authorization: Bearer YOUR_API_KEY - Modèle :
uncensored
Vous pouvez tester la connectivité avec une simple requête GET à /v1/models. Cela confirme que votre clé fonctionne avant d'envoyer des charges lourdes.
Le point de terminaison /v1/chat/completions
Envoyez des prompts textuels à POST /v1/chat/completions et recevoir des réponses textuelles. Ce point de service gère toutes les interactions de chat standard.
Incluez votre tableau de messages avec les champs role et content. Le modèle traite l'entrée et renvoie une complétion. Vous pouvez contrôler la longueur de la sortie en utilisant le max_tokens paramètre.
Le max_output par défaut est de 2 048 tokens. Vous pouvez l'augmenter jusqu'à 16 000 tokens par requête. La fenêtre de contexte totale permet 100 000 tokens pour la combinaison de l'invite et de la complétion.
Les erreurs et les refus ne consomment pas votre crédit prépayé. Cela signifie que vous ne payez que pour la génération de jetons réussie.
Paramètres du modèle : Température, Top-P et Seed
Contrôlez l’aléatoire de la sortie à l’aide des paramètres LLM standards. Définissez temperature pour ajuster la créativité. Des valeurs plus basses rendent les réponses plus déterministes et ciblées.
Utiliser top_p pour l'échantillonnage par noyau. Cela limite le modèle à considérer le pourcentage supérieur de la masse de probabilité. Cela aide à prévenir les sorties répétitives ou non sensées.
Définir seed pour des résultats reproductibles. Cela est utile pour le débogage ou le test de variations spécifiques de prompts. Vous pouvez également utiliser stop séquences pour interrompre la génération prématurément.
D'autres paramètres pris en charge incluent presence_penalty et frequency_penalty. Ceux-ci aident à gérer la diversité des tokens dans les longues conversations.
Ajustez ces paramètres pour les adapter à votre cas d'usage. Le jeu de rôle bénéficie d'une température plus élevée. La génération de code peut nécessiter des valeurs plus basses.
Réponses en streaming avec les événements envoyés par le serveur
Activez le streaming en définissant stream: true dans votre requête. L'API renvoie des événements envoyés par le serveur (SSE) au lieu d'un seul objet JSON.
Chaque chunk contient du texte partiel. Cela vous permet d'afficher les résultats en temps réel à vos utilisateurs. Cela améliore considérablement la latence perçue pour les réponses longues.
Le dernier chunk inclut les statistiques d'utilisation totale des jetons. Vous pouvez suivre précisément la consommation de votre crédit en temps réel.
Gérer les erreurs de flux de manière élégante. Les interruptions réseau peuvent tronquer la réponse. Vous pouvez reprendre ou réessayer la requête si nécessaire.
Appel de fonction et mode JSON
Utiliser l'appel de fonctions pour intégrer l'API à la logique de votre backend. Définissez les outils dans votre requête et le modèle renverra des arguments JSON structurés.
Définir response_format: {"type": "json_object"} pour forcer une sortie JSON stricte. C'est idéal pour analyser des données dans votre application.
L'appel de fonctions fonctionne en parallèle du streaming. Vous pouvez recevoir des données structurées en temps réel. Cela permet des interactions complexes en plusieurs étapes.
Le modèle comprend les définitions d'outils et les exécute en conséquence. Vous gérez la logique d'exécution des outils dans votre code.
Cette fonctionnalité rend l'API adaptée à la création d'agents ou à l'automatisation des workflows.
Limites de débit et contraintes de jetons
Chaque clé API est limitée à 300 requêtes par minute. Vous pouvez avoir 8 requêtes simultanées en même temps. Cela empêche les pics soudains de submerger le système.
La taille maximale du corps de la requête est de 8 Mo. Assurez-vous que vos charges utiles tiennent dans cette limite. Les grandes fenêtres de contexte consomment ce quota rapidement.
Les erreurs courantes incluent 401 pour les clés invalides et 402 pour le crédit insuffisant. Une erreur 429 indique que vous avez atteint la limite de débit.
Les remboursements ne sont pas disponibles pour le crédit. Cependant, les erreurs comme les doubles facturations sont corrigées via le Support. Votre crédit n'expire jamais.
La tarification est de 0,15 $ par 1M de tokens d'entrée et de 0,50 $ par 1M de tokens de sortie. Les recharges sont exclusivement en cryptomonnaies, de 20 $ à 500 $.
cURL
curl https://api.veniceaiapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Return status as json"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.veniceaiapi.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.veniceaiapi.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);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)Questions fréquemment posées
Quelle est la fenêtre de contexte de l'API Venice AI et comment affecte-t-elle les performances ?
La fenêtre de contexte est de 100 000 tokens, combinant prompt et complétion. Cela permet des conversations longues ou le traitement de documents. La sortie maximale par requête est de 16 000 tokens. Vous pouvez ajuster cela avec le paramètre max_tokens.
Comment gérer les erreurs et les refus dans l'API ?
Les erreurs ne consomment pas votre crédit. Les refus pour contenu illicite comme la pédophilie sont gratuits. Les autres refus dépendent du réglage du modèle. Vérifiez le code d'état pour les erreurs 401, 402 ou 429.
Puis-je utiliser l'API avec Vercel ou d'autres plateformes serverless ?
Oui, l'API est compatible avec OpenAI. Vous pouvez l'intégrer avec n'importe quel SDK ou framework. Définissez l'URL de base et la clé API dans vos variables d'environnement. Elle fonctionne bien avec les modèles Vercel et autres fonctions serverless.
Sécurisez votre clé API
Créez un compte, récupérez votre clé, mettez à jour le point de terminaison. Un effort minimal requis.