Accueil → Guides → OpenCode avec une API personnalisée : configuration, Claude, small_model et coûts réels

OpenCode avec une API personnalisée : configuration, Claude, small_model et coûts réels

OpenCode lit ses fournisseurs dans opencode.json, la configuration tient donc dans un seul fichier. Ce qui nous a surpris, c'est la facture : demander un seul mot a produit deux requêtes et plus de 12 000 jetons d'entrée. Nous avons lancé OpenCode 1.19.0 sur notre passerelle avec trois modèles pour montrer où partent les jetons et comment les réduire.

Le fichier de configuration

Placez ceci dans ~/.config/opencode/opencode.json (ou opencode.json dans votre projet) :

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "apiclan": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "APICLAN",
      "options": {
        "baseURL": "https://apiclan.us/v1",
        "apiKey": "{env:APICLAN_GPT_KEY}"
      },
      "models": {
        "gpt-6-astra": {},
        "gpt-6.1-sol": {}
      }
    }
  }
}
  1. Créez une clé dans la console et définissez-la comme variable d'environnement, par exemple APICLAN_GPT_KEY.
  2. Sous models, listez uniquement les modèles du groupe de cette clé. Chaque clé appartient à un seul groupe : GPT, DeepSeek et Claude ont donc chacun leur propre entrée de fournisseur et leur clé.
  3. Lancez opencode, tapez /models et choisissez APICLAN → gpt-6-astra. Dans un script : opencode run -m apiclan/gpt-6-astra "...".
baseURLRésultat
https://apiclan.us/v1✓
https://apiclan.us✗ 404 Not Found

@ai-sdk/openai-compatible n'ajoute que /chat/completions à baseURL, le /v1 doit donc y être déjà. Sans lui, OpenCode s'arrête sur un simple Not Found.

Ajouter Claude

Ajoutez un second fournisseur dans provider, avec le paquet Anthropic et une clé d'un groupe Claude :

"claude": {
  "npm": "@ai-sdk/anthropic",
  "name": "APICLAN Claude",
  "options": {
    "baseURL": "https://apiclan.us/v1",
    "apiKey": "{env:APICLAN_CLAUDE_KEY}"
  },
  "models": { "claude-fable-5-1": {} }
}

Ici aussi, baseURL doit se terminer par /v1 : le paquet Anthropic n'ajoute que /messages, et https://apiclan.us seul a renvoyé 404 dans notre test. C'est l'inverse de Claude Code, dont ANTHROPIC_BASE_URL ne doit pas contenir /v1.

Ce que coûte une réponse courte

Nous avons demandé à OpenCode « Reply with just OK » dans un projet vide. Chaque modèle a envoyé deux requêtes : l'une pour titrer la session, l'autre pour la vraie réponse, qui transporte le prompt système et les définitions d'outils d'OpenCode.

ModèleRequêtesJetons d'entrée (titre + réponse)Durée totaleCoût
gpt-6-astra24,640 + 7,67820.5 s$0.050
deepseek-v4-pro2528 + 5,70834.1 s$0.005
deepseek-v4.1-flash2529 + 3,02721.8 s$0.0006

OpenCode envoie aux modèles GPT un prompt système bien plus long (environ 7 700 jetons) qu'à DeepSeek (environ 3 000), et la seule requête de titre a consommé 4 640 jetons sur GPT. Voilà pourquoi le même « OK » a coûté environ 77 fois plus sur gpt-6-astra que sur deepseek-v4.1-flash. Testé le 12 octobre 2026 avec OpenCode 1.19.0 ; coûts tels que facturés par notre passerelle.

Réduire le surcoût avec small_model

OpenCode utilise small_model pour les tâches annexes comme les titres de session. Pointez-le vers un modèle bon marché dans son propre fournisseur :

"small_model": "apiclan-ds/deepseek-v4.1-flash",
"provider": {
  "apiclan": { ... },
  "apiclan-ds": {
    "npm": "@ai-sdk/openai-compatible",
    "options": {
      "baseURL": "https://apiclan.us/v1",
      "apiKey": "{env:APICLAN_DS_KEY}"
    },
    "models": { "deepseek-v4.1-flash": {} }
  }
}

Avec gpt-6-astra comme modèle principal, la requête de titre est passée de 0,0187 $ à 0,00003 $, et tout l'échange d'un mot de 0,050 $ à 0,031 $ — 38 % de moins à chaque nouvelle session, sans changement des réponses.

Une petite tâche de code

Même tâche pour chaque modèle : écrire fizzbuzz.py et ses tests pytest, sans exécuter de commande. Nous avons ensuite vérifié chaque fonction par rapport à la bonne sortie pour 1 à 30.

ModèleRequêtesDurée totaleCoûtCorrectAssertions de test
gpt-6-astra340 s$0.069✓2
deepseek-v4-pro361 s$0.008✓7
deepseek-v4.1-flash325 s$0.0011✓7

Les trois ont écrit du code correct en trois requêtes. deepseek-v4.1-flash a été le plus rapide et a coûté environ 1/60 de gpt-6-astra ; les deux modèles DeepSeek ont aussi écrit des tests plus complets. deepseek-v4-pro a été le plus lent, car il raisonne avant chaque étape. La durée inclut quelques secondes de démarrage d'OpenCode lui-même.

Erreurs courantes

Autres outils de code : Cline avec une API personnalisée · Codex avec une API personnalisée.

Commencer

Pas d'abonnement, pas de minimum mensuel, pas de rendez-vous commercial. Rechargez en USDT et dépensez ce que vous consommez — 1 USDT vous donne 2 crédits de solde API.

Lire le démarrage rapide en 30 secondes

Langue: English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Deutsch · Français · Español · Türkçe · Português · Italiano · Bahasa Indonesia · Tiếng Việt · Bahasa Melayu · Polski · Čeština · فارسی · Русский

Les prix de cette page sont remplis automatiquement à partir des données de facturation réelles. Les conditions de tiers sont citées de leur propre documentation.