Connecter OpenHands à CheapTokens : modèle, Base URL, clé
Remplissez trois champs dans OpenHands Settings > LLM (Advanced) pour exécuter l'agent sur un modèle CheapTokens, et apprenez à reconnaître les trois échecs courants.

Sur cette page
Vous pouvez exécuter OpenHands sur un modèle CheapTokens en remplissant trois champs dans Settings > LLM après avoir activé Advanced : Custom Model (openai/), Base URL (https:/) et API Key. C'est toute la configuration. Le reste de cette page explique ce que signifie chaque champ et à quoi cela ressemble quand l'un d'eux est incorrect.
Les noms des champs et la règle de la chaîne de modèle proviennent de la page de documentation OpenHands sur les endpoints compatibles OpenAI (vérifiée le 8 novembre 2026 ; la page n'a ni date ni version). La dernière version d'OpenHands à cette date est la v1.37.0 (6 novembre 2026). Si un libellé de votre build semble légèrement différent, fiez-vous à la position : modèle, base URL, clé.
Avant d'ouvrir Settings#
Trois éléments à portée de main vous éviteront un aller-retour : la clé, l'id du modèle et l'accès à Settings.
Liste de contrôle
Prêt à configurer ?
Nouveau sur les clés et les base URLs ? What base_url is and how to switch couvre le sujet en quelques minutes, et list models with GET /v1/models montre comment retrouver un id vous-même.
Les trois champs#
Ouvrez Settings > LLM et activez Advanced. Le champ Base URL se trouve sous le bouton Advanced.

La documentation décrit la règle du modèle ainsi : Custom Model est openai/ suivi du nom du modèle, et si vous passez par un proxy qui a son propre préfixe, openai/. La partie après openai/ est le nom du modèle. Pour CheapTokens, l'id est deepseek-, donc la chaîne complète est openai/.
Faites défiler le tableau vers la droite →
| Champ | Valeur |
|---|---|
| Custom Model | openai/ |
| Base URL | https:/ |
| API Key | votre clé CheapTokens |
Pourquoi ce modèle pour un agent ? DeepSeek-V4-Flash dispose d'une fenêtre de contexte de 380K et de jusqu'à 32 768 tokens de sortie par réponse, à un prix unique à toute heure, donc une longue session ne coûte pas plus cher aux heures de pointe. Un agent de codage renvoie beaucoup de contexte à chaque étape, et c'est à cela que sert la fenêtre.
Vous préférez GLM ? Utilisez openai/ (contexte de 390K, jusqu'à 8 192 tokens de sortie) dans le même champ et ne changez rien d'autre. Même solde, même clé, même Base URL.
Vérifiez d'abord les éléments en dehors d'OpenHands#
Avant d'accuser l'agent, envoyez une requête avec la même URL, la même clé et le même id. Si cela fonctionne, tout problème restant vient de la saisie des champs.
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"deepseek-ai/DeepSeek-V4-Flash-0731","messages":[{"role":"user","content":"Say ready"}],"max_tokens":20}'Remarquez ce qui manque : il n'y a pas de openai/ dans la valeur model. Ce préfixe est destiné à OpenHands, pas à l'API. La réponse contient un bloc usage avec prompt_tokens et completion_ — les deux mêmes nombres que vous verrez ensuite s'additionner au fil d'une session d'agent.
Comparer
La chaîne de modèle : un préfixe, deux résultats
Id seul
deepseek- — la forme pour curl et l'API.
Avec le préfixe
openai/ — la forme pour le champ Custom Model.
À quoi ressemble un champ incorrect#
Chacun des trois champs peut être en cause :

- Clé incorrecte. L'API répond 401 — la clé est absente, mal saisie ou comporte un espace final dû au copier-coller.
- Base URL incorrecte. La requête part au mauvais endroit et vous obtenez un 404 ou une erreur de connexion. L'adresse doit se terminer par
/v1et ne contenir aucun chemin supplémentaire. - Chaîne de modèle incorrecte. Soit le préfixe est absent, soit l'id qui le suit n'est pas l'id complet (l'API n'accepte que le
gateway_idcomplet, pas un id court commedeepseek-).v4- flash- 0731
Le raisonnement complet sur 401 versus 404 se trouve dans API 401 or 404: wrong key, base URL or model id.
Essayez vous-mêmeEssayez : la clé est correcte, l'URL est correcte, l'agent échoue quand même à la première étape. Quel champ ouvrez-vous ?Afficher la réponse
Le champ Custom Model. Vérifiez qu'il commence par openai/ et que l'id qui suit est orthographié exactement comme dans le tableau ci-dessus. La clé et l'URL sont les plus faciles à vérifier avec curl.
Combien coûte une session#
Un agent facture tout le contexte à chaque étape, pas seulement votre tâche d'une ligne. Supposons qu'OpenHands traite un bug en 40 étapes, avec environ 30 000 tokens envoyés et 1 500 écrits en retour par étape. Une étape sur DeepSeek-V4-Flash coûte $0.0006 ; quarante étapes sont ci-dessous, à côté des autres modèles et d'OpenRouter.
| Modèle | Entrée $/1M | Sortie $/1M | Par requête | 40 requêtes | OpenRouter, 40 requêtes |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.00066 | $0.0264 | $0.0452 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.0006 | $0.024 | $0.0924 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.0017 | $0.069 | $0.828 |
30 000 tokens d'entrée et 1 500 tokens de sortie par requête. Les prix par million de tokens sont actuels et évoluent avec nos tarifs ; la colonne OpenRouter indique des prix de référence pour la même charge de travail.
Au total, en comptant l'entrée et la sortie ensemble, DeepSeek-V4-Flash revient moins cher qu'OpenRouter pour cette charge de travail. Les hypothèses sont à ajuster : un correctif court peut prendre 10 étapes, un gros refactoring 100. Les prix actuels sont sur la page de tarification, et la page du modèle est cheap DeepSeek.
Vous utilisez déjà OpenHands avec un autre fournisseur ?#
Il vous suffit alors d'échanger trois valeurs : Custom Model, Base URL, API Key. Rien d'autre dans le projet ne change, et vous pouvez revenir en arrière de la même façon. La connexion pas à pas pour l'API elle-même se trouve dans la documentation CheapTokens ; une configuration similaire dans un autre outil est connect Aider.



