
Utiliser l’API GPT-6 Astra : premier appel, niveaux d’effort et migration depuis GPT-5.6

gpt-6-astra, sur le même endpoint compatible OpenAI et la même clé API que GPT-5.6, 10 % sous le prix catalogue OpenAI.configuration_update ou de l’option de cache 30m. Chaque fonction doit être vérifiée séparément sur la route EvoLink avant utilisation.Fiche de référence rapide
| Élément | Valeur |
|---|---|
| Model ID | gpt-6-astra (pas d’alias gpt-6 sur OpenAI ni sur EvoLink) |
| Endpoint | https://api.evolink.ai/v1 (compatible OpenAI) |
| Surfaces API (OpenAI) | Responses, Chat Completions (sans appel d’outils), Batch ; prise en charge EvoLink à vérifier séparément |
| Fenêtre de contexte | 1 050 000 tokens partagés entre entrée et sortie ; entrée maximale 922 000 ; sortie maximale 128 000 |
| Entrée / sortie | Texte et image en entrée ; texte en sortie |
| Date de coupure des connaissances | 30 avril 2026 |
| Effort de raisonnement | low, medium, high, xhigh, max ; none et minimal renvoient une erreur 400 |
| Paramètres retirés | temperature, top_p, logprobs |
| Cache de prompt | Pris en charge ; les écritures coûtent 1,25× l’entrée ; l’option TTL est 30m |
| Prix catalogue OpenAI (entrée ≤ 272K) | 10 $ en entrée / 1 $ en cache / 12,50 $ en écriture de cache / 50 $ en sortie par 1M de tokens |
| Tranche de contexte long (entrée > 272K) | Requête entière à 2× les tarifs d’entrée et de cache et 1,5× la sortie |
| Prix EvoLink | 10 % sous le prix catalogue OpenAI ; chiffres actuels sur la page API |
| Non pris en charge | Fine-tuning, Realtime, Assistants, Embeddings, génération d’images ou d’audio |
Installation et première requête
Étape 1 : obtenir une clé API EvoLink
Étape 2 : installer le SDK OpenAI
pip install openai # Python
npm install openai # Node.jsÉtape 3 : envoyer la première requête
Commencez par une requête Responses simple. OpenAI impose Responses pour les appels d’outils ; les fonctions avancées de Responses nécessitent une vérification séparée sur la route EvoLink.
curl https://api.evolink.ai/v1/responses \
-H "Authorization: Bearer $EVOLINK_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6-astra",
"input": "Explique en un paragraphe la différence entre lectures et écritures de cache.",
"reasoning": {"effort": "medium"}
}'from openai import OpenAI
client = OpenAI(
api_key="your-evolink-api-key",
base_url="https://api.evolink.ai/v1",
)
response = client.responses.create(
model="gpt-6-astra",
input="Explique en un paragraphe la différence entre lectures et écritures de cache.",
reasoning={"effort": "medium"},
)
print(response.output_text)
print(response.model, response.usage)import OpenAI from "openai";
const client = new OpenAI({
apiKey: "your-evolink-api-key",
baseURL: "https://api.evolink.ai/v1",
});
const response = await client.responses.create({
model: "gpt-6-astra",
input: "Explique en un paragraphe la différence entre lectures et écritures de cache.",
reasoning: { effort: "medium" },
});
console.log(response.output_text);
console.log(response.model, response.usage);response.model et response.usage au premier appel. La chaîne de modèle retournée doit être gpt-6-astra, et le bloc d’usage montre les tokens d’entrée, en cache, de raisonnement et de sortie, ce dont vous aurez besoin pour rapprocher la facture.Requêtes texte seul sur Chat Completions
temperature, top_p ni tools :response = client.chat.completions.create(
model="gpt-6-astra",
messages=[{"role": "user", "content": "Résume ce changelog en trois points : ..."}],
reasoning_effort="low",
)
print(response.choices[0].message.content)Chat Completions vs API Responses
| Fonctionnalité | Chat Completions | API Responses |
|---|---|---|
| Texte en entrée, texte en sortie | Oui | Oui |
| Entrée image | Oui | Oui |
| Streaming | Oui | Oui |
| Sorties structurées | Oui | Oui |
| Cache de prompt | Oui | Oui |
| Function / tool calling | Non | Oui |
| Appel d’outils asynchrone | Non | Oui |
Pilotage en cours de tour (response.steer via WebSocket) | Non | Oui |
Changer l’effort en cours de conversation en gardant le cache (configuration_update) | Non | Oui |
reasoning.mode: "pro" | Non | Oui |
temperature, top_p, logprobs | Refusés | Refusés |
Si votre boucle d’agent vit aujourd’hui sur Chat Completions, déplacez-la vers Responses ou gardez-la sur GPT-5.6, qui y prend toujours en charge l’appel d’outils.
previous_response_id ne fonctionne pas pour les organisations ayant activé la Zero Data Retention. Envoyez plutôt l’historique de conversation explicitement dans input.Choisir un effort de raisonnement
none ou minimal sur un modèle précédent, commencez à low et comparez. Les développeurs qui ont publié des journaux de migration dans les premiers jours ont convergé vers medium comme point de départ par défaut pour le code ; ce sont des retours communautaires, pas des mesures EvoLink.| Effort | À quoi il convient | Ce qu’il faut surveiller |
|---|---|---|
low | Extraction, classification, réécritures courtes, tout ce qui tournait en none sur GPT-5.6 | Porte encore des tokens de raisonnement ; ce n’est pas un niveau gratuit |
medium | Défaut pour les tâches de code, l’usage d’outils multi-étapes, le travail documentaire | Les exécutions tierces montrent un grand saut de qualité par rapport à low pour un surcoût modéré |
high | Changements à l’échelle du dépôt, longues chaînes de recherche | Le délai au premier token et la dépense en tokens grimpent fortement |
xhigh | Tâches d’agent difficiles quand high échoue au test d’acceptation | Coûteux ; vérifiez avec votre propre jeu d’évaluation |
max | Budget de raisonnement sans contrainte | Les mesures tierces montrent un délai au premier token de l’ordre de la minute ; rarement rentable hors batch hors ligne |
OpenAI documente deux commandes supplémentaires. Leur prise en charge sur EvoLink n’est pas encore vérifiée ; les éléments suivants servent de référence pour l’API du fournisseur :
configuration_updatepermet à une conversation Responses de changer d’effort entre les tours sans invalider le cache de prompt. Commencez àmedium, n’escaladez que les tours qui échouent.reasoning.mode: "pro"est un mode qualité distinct sur l’API Responses ; traitez-le comme un candidat d’évaluation à part, pas comme un sixième niveau d’effort.
Définir l’effort par requête dans Responses :
response = client.responses.create(
model="gpt-6-astra",
input=[{"role": "user", "content": "Refactorise ce module et explique chaque changement."}],
reasoning={"effort": "high"},
max_output_tokens=8000,
)Appel d’outils sur l’API Responses
function_call ; exécutez-le et renvoyez le résultat sous forme de function_call_output.tools = [{
"type": "function",
"name": "get_build_status",
"description": "Renvoie l’état du dernier build CI pour une branche.",
"parameters": {
"type": "object",
"properties": {"branch": {"type": "string"}},
"required": ["branch"],
},
}]
first = client.responses.create(
model="gpt-6-astra",
input=[{"role": "user", "content": "La branche main est-elle verte ? Sinon, résume l’échec."}],
tools=tools,
reasoning={"effort": "medium"},
)
calls = [item for item in first.output if item.type == "function_call"]
outputs = []
for call in calls:
# exécutez votre outil ici
outputs.append({
"type": "function_call_output",
"call_id": call.call_id,
"output": '{"status": "failed", "step": "unit-tests", "log_url": "https://ci.example/123"}',
})
second = client.responses.create(
model="gpt-6-astra",
input=[{"role": "user", "content": "La branche main est-elle verte ? Sinon, résume l’échec."}]
+ list(first.output) + outputs,
tools=tools,
reasoning={"effort": "medium"},
)
print(second.output_text)"async": true sur un outil fonction permet au modèle de poursuivre son raisonnement pendant l’exécution. La prise en charge EvoLink n’est pas encore vérifiée ; une boucle synchrone fonctionnelle ne prouve pas la prise en charge asynchrone.Sorties structurées et streaming
text.format :response = client.responses.create(
model="gpt-6-astra",
input="Extrais le model ID, la fenêtre de contexte et la limite de sortie de ce texte : ...",
text={
"format": {
"type": "json_schema",
"name": "model_spec",
"schema": {
"type": "object",
"properties": {
"model_id": {"type": "string"},
"context_tokens": {"type": "integer"},
"max_output_tokens": {"type": "integer"},
},
"required": ["model_id", "context_tokens", "max_output_tokens"],
"additionalProperties": False,
},
"strict": True,
}
},
reasoning={"effort": "low"},
)
print(response.output_text)stream=True sur l’une ou l’autre surface. Aux niveaux d’effort élevés, le premier token peut prendre plusieurs dizaines de secondes : streamez dans tout parcours interactif et affichez la progression pendant le raisonnement.Migrer depuis GPT-5.6
Le tableau suivant présente les exigences de migration OpenAI. Sur EvoLink, vérifiez chaque champ de requête et chaque fonction optionnelle avant de déplacer le trafic ; changer le model ID ne suffit pas à prouver la compatibilité.
| Changement | GPT-5.6 | GPT-6 Astra |
|---|---|---|
| Model ID | gpt-5.6-sol, gpt-5.6-terra, gpt-5.6-luna | gpt-6-astra |
| Paramètres d’échantillonnage | temperature, top_p acceptés | Retirez-les ; la requête échoue avec une 400 |
Effort de raisonnement none / minimal | Accepté | Convertir en low |
| Surface d’appel d’outils | Chat Completions ou Responses | Responses uniquement |
| Option de cache de prompt | prompt_cache_retention | prompt_cache_options: {"ttl": "30m"} |
| État de conversation avec Zero Data Retention | previous_response_id | Envoyer l’historique dans input |
| Codex CLI | Toute version récente | 0.153.0 ou plus récent |
Le diff pour un appel Chat Completions typique :
response = client.chat.completions.create(
- model="gpt-5.6-sol",
+ model="gpt-6-astra",
messages=messages,
- temperature=0.2,
- reasoning_effort="none",
+ reasoning_effort="low",
)AGENTS.md et préfère les listes et les tableaux. Les premiers utilisateurs ont aussi signalé l’échec inverse : un petit ticket transformé en diff énorme. Gardez l’instruction « changement minimal » explicite dans le prompt système et laissez GPT-5.6 routable pour un rollback.Règles de coût : 272K, cache, Batch et Flex
Règle 1 : au-delà de 272K tokens d’entrée, la requête entière est retarifée
Les tarifs d’entrée et de cache doublent et le tarif de sortie passe à 1,5× pour la requête entière, pas seulement pour les tokens au-delà du seuil.
| Requête | Coût d’entrée | Coût de sortie (20K tokens) | Total |
|---|---|---|---|
| 272 000 tokens d’entrée | 272K × 10 $ = 2,72 $ | 20K × 50 $ = 1,00 $ | 3,72 $ |
| 280 000 tokens d’entrée | 280K × 20 $ = 5,60 $ | 20K × 75 $ = 1,50 $ | 7,10 $ |
Huit mille tokens de plus doublent presque la facture. Comptez les tokens avant d’envoyer, compactez le contexte à l’approche de la tranche, ou routez la requête vers GPT-5.6 Sol, dont le tarif de contexte long est de 8 $ / 30 $.
Règle 2 : le cache est rentable dès la première réutilisation
k fois de plus :- sans cache :
10 × (k + 1)dollars par million de tokens de préfixe - avec cache :
12,50 + 1 × k
k = 1, cela donne 20 $ contre 13,50 $ : le cache gagne dès la première réutilisation et l’écart se creuse ensuite. Placez le contenu stable (prompt système, schémas d’outils, documents de référence) en tête de l’entrée, et notez le TTL de 30 minutes : une session inactive plus longtemps repaie l’écriture.Règle 3 : Batch et Flex coûtent la moitié
Chez OpenAI, Batch et Flex coûtent 50 % du tarif Standard. Ils peuvent convenir aux évaluations hors ligne, aux traitements nocturnes et aux reprises de données. Fast coûte 2×, sans SLA de latence pour Astra, et n’est pas disponible avec la résidence des données dans l’UE. La disponibilité et la facturation de ces modes sur EvoLink restent à vérifier ; n’appliquez pas les remises du fournisseur à une estimation EvoLink sans confirmation propre à la route.
Combiner les règles
configuration_update via EvoLink uniquement après vérification de la fonction sur votre route.| Charge de travail | Configuration la moins chère et sûre |
|---|---|
| Agent de code interactif, contexte de 50K–150K | Responses, medium, cache activé, contexte maintenu sous 272K |
| Analyse nocturne de dépôt | Batch, high, morceaux sous 272K |
| Extraction courte à grande échelle | Chat Completions, low, ou GPT-5.6 Terra / Luna si la qualité le permet |
| Longue chaîne de recherche avec retries | Responses, medium avec escalade par configuration_update, repli vers Sol |
Rate limits et repli
OpenAI publie les rate limits d’Astra par niveau d’usage. Ces chiffres comptent parce qu’une seule requête à contexte plein peut dépasser un budget de tokens par minute.
| Niveau OpenAI | Requêtes par minute | Tokens par minute |
|---|---|---|
| Niveau 1 | 500 | 500 000 |
| Niveau 2 | 5 000 | 1 000 000 |
| Niveau 3 | 5 000 | 2 000 000 |
| Niveau 4 | 10 000 | 4 000 000 |
| Niveau 5 | 15 000 | 40 000 000 |
Sur EvoLink, les limites sont fixées par compte ; consultez votre dashboard avant un test de charge. Trois modes d’échec méritent un traitement explicite :
- 400 sur la forme de la requête.
temperature,top_p, effortnoneou outils sur Chat Completions. Corrigez la requête ; ne réessayez pas. - 429 ou 5xx. Réessayez avec backoff, puis basculez vers
gpt-5.6-solsur la même clé. Le guide timeout, retry et repli décrit le schéma. - Tâche arrêtée par le moniteur de sécurité d’OpenAI. Astra tourne sous une surveillance de désalignement asynchrone ; quand elle se déclenche, la tâche API s’arrête. Journalisez-le, remontez-le à l’opérateur et routez la tâche vers un modèle de repli plutôt que de boucler.
def call_with_fallback(**kwargs):
for model in ("gpt-6-astra", "gpt-5.6-sol"):
try:
return client.responses.create(model=model, **kwargs)
except Exception as err: # à restreindre aux 429/5xx en production
last = err
raise lastFAQ
Quel model ID utiliser pour GPT-6 ?
gpt-6-astra. Il n’existe pas d’alias générique gpt-6 sur OpenAI ni sur EvoLink, et la même chaîne fonctionne sur Chat Completions et Responses.Puis-je utiliser des outils avec GPT-6 Astra sur Chat Completions ?
Non. OpenAI documente les appels d’outils pour ce modèle uniquement sur Responses, tandis que Chat Completions accepte le texte et les images. L’entrée image via EvoLink nécessite encore une vérification de la route.
Par quel effort de raisonnement commencer ?
medium pour le code et les agents, ou à low pour les tâches auparavant en none ou minimal. OpenAI documente l’escalade par tâche avec configuration_update ; utilisez-la via EvoLink uniquement après vérification de la route.GPT-6 Astra accepte-t-il temperature ?
temperature, top_p et logprobs renvoient une erreur 400. Retirez-les de la requête.Comment est facturée une requête au-delà de 272K tokens d’entrée ?
La requête entière passe dans la tranche de contexte long : 2× les tarifs d’entrée et de cache, 1,5× la sortie. Comptez d’abord les tokens et compactez ou découpez à l’approche du seuil.
Qu’est-ce qui change en migrant depuis GPT-5.6 ?
temperature et top_p, remplacez none par low et déplacez les appels d’outils vers Responses. OpenAI documente aussi une option de cache modifiée. L’endpoint et la clé EvoLink restent identiques ; vérifiez les options de cache et les fonctions avancées sur la route avant migration.GPT-6 Astra est-il sur Amazon Bedrock ?
Où trouver le prix EvoLink de GPT-6 Astra ?
Sources
- OpenAI : documentation du modèle GPT-6 Astra
- OpenAI : guide du modèle GPT-6 Astra (migration, paramètres non pris en charge, outils réservés à Responses)
- OpenAI : guide du raisonnement
- OpenAI : guide du cache de prompt
- OpenAI : guide du mode Fast
- OpenAI : guide des rate limits
- Tarifs de l’API OpenAI
- OpenAI : annonce de GPT-6 Astra
- AWS : fiches modèles OpenAI dans Amazon Bedrock
- Shinsuke Kagawa : passer de GPT-5.6 Sol à GPT-6 Astra, commencer par l’effort medium


