Agents et développement d'applications
Construire des agents sur l'API compatible OpenAI
Chaque étape d'un agent est un appel, et le modèle doit renvoyer de façon fiable appels d'outils, flux et JSON. EasyAPI transmet ces capacités sans réécrire les requêtes. Changez base_url et votre code tourne.
Modèles recommandés disponibles
Choisis pour les agents : appels d'outils fiables, sortie structurée, contexte qui tient de nombreux tours. Le coût des boucles croît avec les étapes : faites marcher le flux sur un modèle bon marché, puis montez en gamme pour comparer.
Tarifs plateforme par million de tokens, facturés à l'usage réel. La liste suit l'API de tarification en direct ; les modèles retirés n'y apparaissent jamais. Choisissez un modèle : la configuration et le coût ci-dessous s'adaptent.
Configuration exacte
L'adresse de l'API et le modèle sélectionné qwen3.8-max sont déjà renseignés. Remplacez la clé par la vôtre.
from openai import OpenAI
client = OpenAI(base_url="https://token.easyapi.com/v1", api_key="sk-your-key")
tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get current weather for a city",
"parameters": {"type": "object", "properties": {"city": {"type": "string"}}, "required": ["city"]},
},
}]
resp = client.chat.completions.create(
model="qwen3.8-max",
messages=[{"role": "user", "content": "What is the weather in Shanghai today?"}],
tools=tools,
tool_choice="auto",
)
call = resp.choices[0].message.tool_calls[0]
print(call.function.name, call.function.arguments)Faites d'abord passer une requête
Remplacez la clé et exécutez tel quel. Un 200 signifie que l'adresse, la clé et le modèle sont corrects ; sinon comparez l'erreur à la liste ci-dessous.
curl https://token.easyapi.com/v1/chat/completions \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{"model":"qwen3.8-max","messages":[{"role":"user","content":"Hello"}]}'À savoir
- tools, tool_choice, stream et response_format sont transmis tels quels en amont. Le support varie selon le modèle ; la table des paramètres de chaque fiche indique ce qui s'applique.
- Les agents multi-tours accumulent les messages. La fenêtre de contexte est une limite dure : une requête qui la dépasse échoue au lieu d'être tronquée.
- Attention au 429 en forte concurrence sur une clé. La limitation de débit de la plateforme comme un solde épuisé renvoient 429 ; le message précise lequel.
- La liste de repli models et provider.sort permettent de déclarer dans la requête des modèles de secours et une préférence de routage, avec bascule automatique en cas de panne amont. Voir la doc API.
Erreurs fréquentes
- tool_calls est vide et le modèle a répondu en prose
- Le modèle ne gère sans doute pas les appels d'outils, ou tool_choice n'est pas défini. Prenez un modèle de la liste recommandée et mettez tool_choice à auto ou à une fonction précise.
- Aucun delta n'arrive en streaming
- Vérifiez que stream vaut true et que le client ne met pas en tampon. curl avec -N montre le SSE brut et localise vite le problème.
- Le JSON renvoyé ne se parse pas
- Utilisez response_format avec json_object ou json_schema et dites « JSON uniquement » dans le prompt système. Sans response_format, un modèle ne s'appuie que sur le prompt, sans garantie.
- 429 Too Many Requests
- Lisez le message : insufficient quota signifie recharger ; rate limit signifie trop de concurrence, ralentissez ou répartissez sur plusieurs clés.
Exemple de coût
Au tarif actuel de qwen3.8-max, une requête type de 6,000 tokens en entrée + 800 en sortie, 2,000 fois par jour :
Vous ne payez que les tokens réellement consommés. Ni frais de plateforme, ni frais de routage, ni minimum mensuel. L'usage réel est listé requête par requête dans les journaux de la console.
Connectez-vous maintenant
Après l'inscription, l'accueil de la console affiche un guide qui génère une configuration prête à copier pour votre clé et votre modèle, jusqu'à votre premier appel réussi.
Autres solutions : Connecter Claude Code, Cursor et Codex à l'API · Utiliser les modèles dans Dify, n8n et FastGPT