API Ollama : changez votre client en trois lignes
Commencez avec notre API de chat sans censure, compatible OpenAI, en quelques minutes. Modifiez la configuration de votre client pour utiliser un seul modèle disposant d'une fenêtre de contexte de 100 000 tokens et commencez à générer du contenu immédiatement.
- URL de base
https://api.ollamaapi.com/v1- Modèle
uncensored
Commencez avec le crédit d'essai
E-mail et mot de passe, la clé s'affiche tout de suite à l'écran.
Obtenir une clé APIPrérequis et URL de base
Pour utiliser cette API LLM sans censure, vous devez disposer d'un compte avec une clé API et avoir installé un SDK compatible OpenAI dans votre environnement. L'URL de base pour toutes les requêtes est https://api.ollamaapi.com/v1. Cet endpoint est conçu comme un remplacement prêt à l'emploi pour les clients OpenAI existants, ce qui signifie que vous devez uniquement mettre à jour l'URL de base et la clé API dans votre configuration. L'API prend en charge les complétions texte en entrée et texte en sortie avec streaming via Server-Sent Events (SSE) et l'appel de fonctions. Elle ne prend pas en charge les embeddings, la génération d'images ou le fine-tuning. Assurez-vous que la version de votre SDK prend en charge ces fonctionnalités pour une expérience optimale. Vous utiliserez l'ID de modèle uncensored pour toutes les complétions.
Authentification et première requête
L'authentification s'effectue via un token Bearer dans l'en-tête Authorization. Inscrivez-vous sur le site pour recevoir votre clé immédiatement ; aucune carte bancaire n'est requise pour l'essai. Utilisez la commande cURL suivante pour envoyer votre premier message. Remplacez YOUR_API_KEY par votre clé réelle. La requête cible l'endpoint standard de complétion de chat. En cas de succès, vous recevrez une réponse textuelle du modèle sans censure. Assurez-vous de définir le champ model sur uncensored pour utiliser le modèle de langage spécifique.
curl https://api.ollamaapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
N'oubliez pas que les prompts ne sont pas utilisés pour entraîner vos données. L'API impose une limite stricte sur le contenu sexuel impliquant des mineurs, mais autorise par ailleurs les sujets adultes et controversés sans refus.
Intégration du SDK Python
L'utilisation du SDK Python officiel d'OpenAI est le moyen le plus simple d'intégrer. Installez la bibliothèque via pip, puis initialisez le client avec l'URL de base personnalisée et votre clé API. Cette configuration vous permet d'utiliser le même code client que vous pourriez utiliser pour GPT-4, mais dirigé vers notre modèle sans censure. Le code ci-dessous illustre une requête simple de complétion de chat. Vous pouvez ajuster les paramètres max_tokens et temperature selon vos besoins. L'objet de réponse contiendra le texte généré dans response.choices[0].message.content.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaapi.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)
Cette approche fonctionne car notre API est entièrement compatible OpenAI. Vous n'avez pas besoin d'une bibliothèque cliente séparée spécifiquement pour notre service.
Configuration du SDK Node.js
Pour les projets JavaScript ou TypeScript, le SDK Node.js OpenAI fonctionne parfaitement avec notre endpoint. Installez le package et configurez le client avec l'URL de base baseURL pointant vers notre domaine. Indiquez votre clé API dans le champ apiKey. La structure de la requête correspond exactement au format OpenAI. Cela vous permet d'intégrer notre API dans vos applications Node.js existantes sans refonte majeure. L'ID de modèle reste uncensored. Vous pouvez gérer votre clé API via le tableau de bord si vous devez en régénérer une.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaapi.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);
Assurez-vous que vos variables d'environnement sont correctement définies pour éviter d'exposer votre clé dans le dépôt de code. La clé API est affichée immédiatement après l'inscription.
Réponses en streaming
Pour les applications nécessitant une génération de tokens en temps réel, l'API prend en charge les Server-Sent Events (SSE). Définissez le paramètre stream sur true dans votre requête. Le serveur enverra une série de blocs, chacun contenant un delta partiel de la réponse. C'est idéal pour les interfaces de chat où vous souhaitez afficher le texte au fur et à mesure de sa génération. Le comportement du streaming est identique à celui de l'API de streaming OpenAI, donc la logique de streaming existante devrait fonctionner avec des modifications minimales. Gérez le flux jusqu'à ce que le dernier bloc indique que la réponse est terminée.
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 n'affecte pas la tarification par token ni les limites de la fenêtre de contexte.
Limites, erreurs et contexte
L'API dispose d'une fenêtre de contexte de 100 000 tokens, combinant prompt et complétion. Cela permet de traiter de longs documents ou d'avoir des conversations étendues. Les limites de débit sont fixées à 300 requêtes par minute par clé. Si vous dépassez cette limite, vous recevrez une erreur 429. Les erreurs d'authentification retournent un statut 401, généralement dû à une clé invalide ou révoquée. Un solde insuffisant entraîne une erreur 402. Les corps de requête sont limités à 8 Mo. Il n'y a pas d'abonnement ; vous payez à l'usage avec des crédits prépayés qui n'expirent jamais. Vous pouvez recharger à partir de 20 $. Les crédits n'expirent pas, vous pouvez donc suspendre l'utilisation indéfiniment sans perdre votre solde.
Questions et réponses
Cette API prend-elle en charge la génération d'images ou d'audio ?
Non, cette API est strictement destinée aux complétions de texte. Elle ne prend pas en charge les embeddings, la génération d'images, l'audio ou la vidéo. Elle se concentre sur un seul modèle de langage large sans censure pour les interactions texte-à-texte.
Comment fonctionne la tarification ?
La tarification est au paiement à l'usage avec des crédits prépayés qui n'expirent jamais. Les tokens d'entrée coûtent 0,15 $ par million, et les tokens de sortie coûtent 0,50 $ par million. Vous pouvez recharger avec des cryptomonnaies (USDT ou USDC), et des crédits bonus sont disponibles pour les dépôts plus importants.
Mes données sont-elles utilisées pour l'entraînement ?
Non, les prompts envoyés à l'API ne sont pas utilisés pour l'entraînement. Le service est conçu pour la confidentialité, ne nécessitant qu'une adresse e-mail et un mot de passe pour la création de compte.
Votre clé est à un formulaire de vous
Créez un compte, copiez la clé, modifiez l'URL de base. C'est toute la configuration.
Caractéristiques techniques
Toutes les limites et fonctions réelles de l'API au même endroit — vérifiez-les avant de recharger.
| Élément | Valeur |
|---|---|
| Format | compatible OpenAI : tout SDK OpenAI fonctionne en changeant la base URL et la clé |
| Authentification | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.ollamaapi.com/v1 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| ID du modèle | uncensored |
| Paramètres | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Fenêtre de contexte | 100 000 tokens (entrée + sortie) |
| Streaming | oui — server-sent events ; le dernier bloc contient l'usage des tokens |
| Sortie max. | jusqu'au reste de la fenêtre de 100 000 tokens ; max_tokens optionnel (pas de plafond distinct) |
| Mode JSON | response_format: {"type": "json_object"} |
| Appel de fonctions | oui — tools, tool_choice ; réponse avec tool_calls, aussi en streaming ; résultats en role: tool |
| Limite de débit | 300 requêtes par minute et par clé |
| Taille | jusqu'à 8 Mo par requête |
| En-têtes | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concurrence | 8 requêtes simultanées par clé |
| Essai gratuit | 0,50 $ pendant 7 jours, sans carte · Clé d'essai : 2 requêtes parallèles, 60 par minute ; limites complètes (8 et 300) après la 1re recharge |
| Bonus | +5 % dès 50 $, +10 % dès 100 $, +15 % dès 200 $ |
| Prix | 0,15 $ par million de tokens en entrée · 0,50 $ par million en sortie |
| Facturation | crédit prépayé selon l'usage réel ; erreurs et refus gratuits |
| Validité | le crédit payé n'expire jamais, sans abonnement |
| Recharge | USDT (TRC20) ou USDC (Base), tout montant entier de 20 $ à 500 $ |
| Contenu | contenu adulte autorisé ; tout contenu sexuel impliquant des mineurs est refusé |
| Clés | une clé active par compte ; une nouvelle remplace l'ancienne |
| Connexion | Google ou e-mail et mot de passe |
Codes d'erreur
Les erreurs arrivent en JSON avec un type stable ; les requêtes échouées ou refusées ne sont pas facturées.
| Code | Type | Signification |
|---|---|---|
400 | bad_request | JSON invalide, messages vides, mauvais paramètre ou contexte trop long |
401 | missing_key · invalid_key · key_revoked | clé absente, erronée ou remplacée |
402 | no_credit | plus de crédit — rechargez, la reprise est immédiate |
403 | content_blocked | contenu sexuel impliquant des mineurs — refusé, non facturé |
404 | not_found | endpoint inconnu |
413 | request_too_large | corps supérieur à 8 Mo |
429 | rate_limited · concurrency | au-delà de 300/min ou 8 en parallèle — patientez |
503 | upstream_busy | modèle occupé — réessayez dans quelques secondes |