Documentation de l'API LLM d'AICU
API de chat completions compatible OpenAI. Une clé API (authentification Bearer) est obligatoire. Créez une clé
aicu_live_depuis le tableau de bord.
URL de base
https://api.aicu.ai/v1
Démarrage rapide
curl -X POST https://api.aicu.ai/v1/chat/completions \
-H "Authorization: Bearer $AICU_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v3",
"messages": [{"role": "user", "content": "Hello!"}],
"max_tokens": 100
}'
🖼️ L'entrée d'images (Vision) fonctionne aussi. Faites de
contentun tableau et passez unimage_url→ Guide Vision
POST /v1/chat/completions
Endpoint de chat completions compatible OpenAI.
Requête :
{
"model": "deepseek-v3",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
"max_tokens": 1000,
"temperature": 0.7,
"stream": false
}
Paramètres :
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
| model | string | Oui | Identifiant du modèle |
| messages | array | Oui | Tableau de messages |
| max_tokens | number | Non | Nombre maximal de tokens à générer (par défaut : 4096) |
| temperature | number | Non | Température d'échantillonnage, 0-2 (par défaut : 1) |
| stream | boolean | Non | Réponse en streaming (diffusion en flux) (par défaut : false) |
Réponse :
{
"id": "gen-xxx",
"object": "chat.completion",
"created": 1234567890,
"model": "deepseek-v3",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 15,
"total_tokens": 25
}
}
En-têtes de réponse :
X-AICU-Model: modèle utiliséX-AICU-Provider: fournisseur (openrouter/groq/aicu)X-AICU-Tokens: tokens consommésX-AICU-AP-Cost: AP facturésX-AICU-Latency-Ms: latence
GET /v1/models — tous les modèles, une seule liste
GET /v1/models est la source de vérité unique pour tout ce que la plateforme sert : chat, images, synthèse vocale (tts) et transcription (stt). Chaque entrée a la même forme — type, l'endpoint à appeler, stage, pricing avec une unit explicite, docs_url, pricing_url et updated_at — et l'enveloppe de la liste porte docs, pricing_url et le updated_at le plus récent. GET /v1/models/:id renvoie un seul modèle (récupération à la manière d'OpenAI ; les alias d'images comme flare fonctionnent).
curl https://api.aicu.ai/v1/models # tout
curl https://api.aicu.ai/v1/models/deepseek-v3
{
"object": "list",
"docs": "https://api.aicu.ai/docs",
"pricing_url": "https://api.aicu.ai/docs/pricing",
"updated_at": "2026-09-11",
"data": [
{ "id": "deepseek-v3", "type": "chat", "endpoint": "POST /v1/chat/completions", "stage": "beta",
"pricing": { "unit": "per_1k_tokens", "ap_in_per_1k": 9, "usd_in_per_1k": 0.0009, "ap_out_per_1k": 27, "usd_out_per_1k": 0.0027 },
"docs_url": "https://api.aicu.ai/docs/llm-api", "updated_at": "2026-08-01" },
{ "id": "gpt-image-2.5-flare", "type": "image", "endpoint": "POST /v1/images/generations",
"pricing": { "unit": "per_image", "ap_from": 700, "ap_by_size_quality": { "1024x1024": { "low": 700, "medium": 1600, "high": 6400 } } } }
]
}
stage vaut beta jusqu'au démarrage de la production le 2026-09-23, puis production ; preview signale les modèles que nous pouvons encore modifier.
GET /v1/chat/models
Le même tableau filtré sur type=chat. Conservé pour la compatibilité ; les champs ci-dessous sont inchangés.
curl https://api.aicu.ai/v1/chat/models
Réponse :
{
"object": "list",
"data": [
{
"id": "deepseek-v3",
"owned_by": "openrouter",
"pricing": {"ap_per_1k_tokens": 14, "ap_in_per_1k": 9, "ap_out_per_1k": 27},
"stage": "beta",
"description": "汎用、コスパ良好"
}
]
}
Modèles disponibles
Niveaux de tarification :
- 🟢 Gratuit — gratuit de façon permanente (des limites de débit s'appliquent)
- 🟡 Gratuit pour une durée limitée — stade α / preview. Aucune facturation réelle jusqu'au 2026-10-31 (programme de soutien après le séisme de Kumamoto 2026). Les chiffres en AP du tableau sont les tarifs prévus après la GA
- 💠 Payant (tarifs prévus) — les chiffres en AP sont des tarifs de référence qui s'appliquent à partir de la GA
L'ensemble de la plateforme est actuellement en alpha. Aucun des niveaux ci-dessus ne facture les utilisateurs finaux aujourd'hui (l'utilisation est tout de même enregistrée). Les tarifs sont donnés sous la forme « AP en entrée / en sortie pour 1K tokens ». 1 USD = 10,000 AP (1 AP = $0.0001).
Les chiffres en AP ci-dessous et tous les montants de ce document sont approximatifs (la conversion AP→USD est fixée à 10,000 AP = $1, mais la conversion en yens varie avec le taux de change).
Les tarifs en AP par modèle peuvent faire l'objet de révisions de prix. Ce tableau est tenu à jour à la main : basez toujours
vos estimations et vos factures sur les valeurs actuelles de GET /v1/chat/models.
🟢 Gratuit (Groq — reste gratuit après la GA)
| Modèle | Fournisseur | Tarif | Idéal pour |
|---|---|---|---|
groq-llama-3.3-70b | Groq | Gratuit | Haute qualité, débit limité |
groq-llama-3.1-8b | Groq | Gratuit | Rapide, débit limité |
🟡 Gratuit pour une durée limitée (α / preview — jusqu'au 2026-10-31)
| Modèle | Fournisseur | entrée / sortie (AP/1K) | Idéal pour |
|---|---|---|---|
gpt-4o | OpenAI | 76 / 300 | Multimodal de haute qualité |
gpt-4o-mini | OpenAI | 5 / 18 | Léger et rapide |
gpt-5.6-sol | OpenAI | 150 / 900 | Haut de gamme. Raisonnement difficile, contexte long |
gpt-5.6-terra | OpenAI | 80 / 450 | La moitié du prix de sol. Le cheval de trait du quotidien |
gpt-5.6-luna | OpenAI | 30 / 180 | Léger et rapide. Chat et résumé |
gpt-5.4-mini | OpenAI | 30 / 140 | Peu coûteux. Génération et extraction de routine |
gpt-5.4-nano | OpenAI | 6 / 40 | Le moins cher. Tâches courtes comme la classification et la notation |
sakura-kimi | Sakura AI Engine | 12 / 60 | Kimi-K2.6, inférence au Japon. Vos données ne servent pas à l'entraînement |
kimi-k2.7-code | Sakura AI Engine | 11 / 101 | Spécialisé dans le code. Compatible OpenCode / Cline |
💠 Payant (bêta — tarifs prévus)
Les modèles Gemini sont passés aux tarifs ci-dessous le 2026-08-01 : le
gemini-flashpar défaut correspond désormais au plus léger 2.5 Flash-Lite, et un nouveaugemini-3.6-flashcouvre le modèle le plus récent.
| Modèle | Fournisseur | entrée / sortie (AP/1K) | Idéal pour |
|---|---|---|---|
deepseek-v3 | OpenRouter | 9 / 27 | Polyvalent, bon rapport qualité-prix |
gemini-flash | OpenRouter | 3 / 12 | Léger et bon marché (Gemini 2.5 Flash-Lite). À partir du 2026-08-01 |
gemini-3.6-flash | OpenRouter | 45 / 225 | Le plus récent et de la plus haute qualité (Gemini 3.6 Flash). Ajouté le 2026-08-01 |
llama-3.1-8b | OpenRouter | 1 / 2 | Léger |
llama-3.1-70b | OpenRouter | 4 / 10 | Haute qualité |
qwen3-32b | OpenRouter | 4 / 10 | Grand contexte |
La génération précédente —
gpt-5/gpt-5-mini/gpt-5-nano— reste disponible pour le moment, mais les nouveaux travaux devraient viser les famillesgpt-5.6/gpt-5.4. La liste toujours à jour estGET /v1/chat/models; ce tableau est mis à jour à la main et peut être en retard.
Remarques sur les modèles de raisonnement
Les modèles que GET /v1/chat/models signale avec reasoning: true (la famille gpt-5 et similaires) facturent aussi les tokens de réflexion, et un max_tokens trop petit peut être entièrement consommé par le raisonnement, ce qui laisse un corps vide (content: "").
- Passez
reasoning_effort(minimal/low/medium/high) pour contrôler l'intensité de la réflexion du modèle — il est transmis tel quel, compatible OpenAI. - S'il est omis pour un modèle de la famille
gpt-5, api.aicu.ai applique par défautminimalpour que même les prompts courts reviennent avec un corps. Une valeur explicite l'emporte toujours. - Pour les générations courtes où le coût et la prévisibilité comptent davantage, un modèle sans raisonnement comme
gpt-4o-miniest le choix fiable. - Ce que signifient les niveaux en amont : OpenAI — Reasoning. Avec
toolsdans la requête, l'effort est supprimé, car le raisonnement et l'appel d'outils ne peuvent pas fonctionner ensemble — voir Agents de code.
curl -X POST https://api.aicu.ai/v1/chat/completions \
-H "Authorization: Bearer $AICU_API_KEY" -H "Content-Type: application/json" \
-d '{"model":"gpt-5-mini","messages":[{"role":"user","content":"140字で告知文を書いて"}],"max_tokens":600,"reasoning_effort":"minimal"}'
Compatibilité avec le SDK OpenAI
from openai import OpenAI
client = OpenAI(
base_url="https://api.aicu.ai/v1",
api_key="aicu_live_xxx" # Clé API obligatoire (créez-en une dans le tableau de bord)
)
response = client.chat.completions.create(
model="deepseek-v3",
messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.aicu.ai/v1',
apiKey: 'aicu_live_xxx', // Clé API obligatoire (créez-en une dans le tableau de bord)
});
const response = await client.chat.completions.create({
model: 'deepseek-v3',
messages: [{ role: 'user', content: 'Hello!' }],
});
Où se trouve la spécification amont
api.aicu.ai est compatible OpenAI, ce qui n'est une promesse utile que si vous pouvez voir avec quoi il est compatible. Voici les documents amont que cette API suit. Quand notre page et la page amont divergent sur un paramètre, la page amont décrit le paramètre et ce site décrit ce que nous acceptons — si vous constatez une différence, signalez-la-nous sur aicu.ai/contact.
| Sujet | Référence amont | Nos différences |
|---|---|---|
| Forme de la requête et de la réponse | OpenAI — Create chat completion | Même forme. Des en-têtes de réponse X-AICU-* supplémentaires indiquent le coût en AP, le modèle et la latence |
| Appel d'outils / de fonctions | OpenAI — Function calling | Transmis tel quel. Avec un modèle de raisonnement, nous supprimons l'effort de raisonnement pour que l'appel d'outil réussisse (voir Agents de code) |
Modèles de raisonnement, reasoning_effort | OpenAI — Reasoning | Transmis tel quel. Nous utilisons minimal par défaut si vous l'omettez, pour que les prompts courts renvoient quand même un corps |
| Entrée d'images | OpenAI — Images and vision | Même forme. Les modèles qui acceptent les images sont mesurés de notre côté — voir Vision |
| Modèles hébergés par Groq | Groq — OpenAI compatibility | Les limites propres à Groq s'ajoutent aux nôtres |
Ce qui est à nous, et non en amont : la facturation en AP et l'en-tête X-AICU-AP-Cost, le catalogue
de modèles (GET /v1/chat/models), les scopes des clés, et la facturation par réservation puis règlement décrite dans
Tarifs. Rien de cela ne figure dans un document amont.
Crédits (facturation)
- 10,000 AP = $1 (libellé en USD ; 1 AP = $0.0001. Nos propres coûts sont en USD, l'unité suit donc)
- Les montants en yens sont approximatifs et varient avec le taux de change — considérez chaque montant de cette documentation comme une estimation
- Les tarifs en AP par modèle peuvent faire l'objet de révisions de prix. Voir
GET /v1/chat/modelspour les valeurs actuelles - Modèles Groq : gratuits (des limites de débit s'appliquent)
- Chaque endpoint exige une clé API (authentification Bearer)
Limites de débit
| Fournisseur | Limite |
|---|---|
| Groq | 30 RPM |
| OpenRouter | Dépend de votre offre |
Dépannage
Un 403 concerne votre clé, pas votre client HTTP
Jusqu'au 2026-08-23, les clients qui gardaient leur User-Agent par défaut — urllib, de la bibliothèque
standard de Python, était le suspect habituel — pouvaient être bloqués comme des robots et recevoir un 403 (erreur Cloudflare 1010).
C'est corrigé. api.aicu.ai est exempté de la vérification anti-robots, et une requête urllib par défaut renvoie
désormais 200 (vérifié le 2026-09-22). Vous n'avez pas besoin de définir un User-Agent.
Si vous recevez encore un 403, il concerne la clé elle-même :
| Corps | Signification |
|---|---|
{"error": "API key does not have required scope: llm", "required_scope": "llm", "current_scopes": [...]} | La clé n'a pas accès à cette surface. Ajoutez-la avec 権限変更 (Modifier les autorisations) dans dashboard/keys — pas besoin de recréer la clé |
{"error": {"code": "unauthorized", ...}} | La clé est révoquée ou n'existe pas |
Assistance
- Skill : https://api.aicu.ai/skills/llm
- Tableau de bord : https://api.aicu.ai/dashboard
- Contact : https://aicu.ai/contact
© 2026 AICU Inc.