inference.eu

Agents de code · OpenCode

Utiliser OpenCode avec des modèles open source hébergés dans l’UE

OpenCode est un agent de code open source pour le terminal. Déclarez inference.eu comme fournisseur personnalisé dans opencode.json et chaque prompt, extrait de fichier et appel d’outil est traité dans des centres de données européens, sur des modèles open-weight, dans le cadre d’un accord de sous-traitance conforme à l’article 28 du RGPD.

  1. 01Format d'API: OpenAI
  2. 02Centres de données dans l'UE
  3. 03Couvert par un seul DPA

Configuré en quelques minutes

  1. 1

    Créez une clé API dans votre compte inference.eu et exportez-la sous le nom INFERENCE_EU_API_KEY dans le profil de votre shell.

  2. 2

    Installez OpenCode avec curl -fsSL https://opencode.ai/install | bash, ou avec npm install -g opencode-ai sous Windows.

  3. 3

    Ajoutez le bloc provider inference-eu dans le fichier opencode.json de votre projet, ou dans ~/.config/opencode/opencode.json pour l’utiliser partout.

  4. 4

    Lancez opencode dans votre dépôt et choisissez un modèle avec /models. Chaque modèle apparaît sous la forme inference-eu/<id du modèle>.

  5. 5

    Demandez une petite modification, par exemple un test unitaire, pour vérifier que les appels d’outils et l’édition de fichiers fonctionnent.

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "inference-eu/qwen3-coder-480b-a35b-instruct",
  "small_model": "inference-eu/gpt-oss-120b",
  "provider": {
    "inference-eu": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "inference.eu",
      "options": {
        "baseURL": "https://api.inference.eu/v1",
        "apiKey": "{env:INFERENCE_EU_API_KEY}"
      },
      "models": {
        "qwen3-coder-480b-a35b-instruct": { "name": "Qwen3 Coder 480B" },
        "gpt-oss-120b": { "name": "gpt-oss-120b" },
        "glm-5.3": { "name": "GLM-5.3" },
        "kimi-k3": { "name": "Kimi K3" }
      }
    }
  }
}

Qu’est-ce qu’OpenCode

OpenCode est un agent de code open source, sous licence MIT, qui s’exécute dans le terminal. Il lit votre dépôt, planifie des modifications, édite les fichiers et lance des commandes shell, en vous demandant l’autorisation si vous le souhaitez. Il n’est lié à aucun fournisseur de modèles : les fournisseurs sont décrits dans un simple fichier JSON, et tout service compatible avec l’API Chat Completions d’OpenAI peut y être ajouté.

C’est donc un bon choix pour travailler avec des modèles open-weight. Vous gardez votre outil et décidez où le modèle s’exécute.

Comment fonctionne la configuration

OpenCode charge les fournisseurs personnalisés via l’AI SDK. Le champ npm sélectionne @ai-sdk/openai-compatible, qui interroge le point d’accès /chat/completions. options.baseURL pointe vers inference.eu et options.apiKey lit votre clé dans l’environnement grâce à la syntaxe {env:...}, si bien que la clé ne se retrouve jamais dans un fichier versionné.

OpenCode ne découvre pas les modèles via /v1/models. Déclarez chaque modèle sous models, avec l’identifiant exact comme clé. Les champs model et small_model définissent les modèles par défaut, au format inference-eu/<id du modèle>. Vous pouvez préciser limit.context et limit.output pour chaque modèle.

Quels modèles choisir

Pour le travail quotidien d’un agent, commencez par qwen3-coder-480b-a35b-instruct. Ce modèle est entraîné pour le code et l’usage d’outils, et il gère bien les modifications longues sur plusieurs fichiers. glm-5.3 et kimi-k3 sont de solides modèles généralistes, fiables pour les appels d’outils, à essayer sur des tâches qui demandent davantage de planification.

Pour small_model, choisissez gpt-oss-120b. OpenCode s’en sert pour les titres de session et d’autres tâches légères, et un modèle rapide garde ces appels courts. Vous pouvez changer de modèle en cours de session avec /models pour les comparer sur votre propre code.

Dépannage

Une erreur 401 signifie que la clé n’est pas parvenue à OpenCode. Vérifiez que INFERENCE_EU_API_KEY est exportée dans le shell depuis lequel vous lancez opencode, puis consultez les identifiants enregistrés avec opencode auth list. Si vous avez ajouté la clé avec /connect, l’identifiant du fournisseur doit être exactement inference-eu.

Une erreur « model not found » indique presque toujours que la clé sous models diffère de l’identifiant du modèle. Si l’agent décrit les modifications au lieu de les effectuer, le modèle ne renvoie pas d’appels d’outils : passez à l’un des modèles de code cités plus haut. baseURL doit se terminer par /v1.

Garder le code et les données dans l’UE

OpenCode s’exécute en local et envoie les requêtes directement depuis votre machine vers le fournisseur configuré. Avec inference.eu comme unique fournisseur, prompts, contenus de fichiers et résultats d’outils sont traités dans des centres de données de l’UE et ne servent jamais à entraîner des modèles. Nous signons avec vous un accord de sous-traitance au titre de l’article 28 du RGPD, fournissons la liste de nos sous-traitants et facturons en euros.

Pour que rien ne parte ailleurs, retirez les autres fournisseurs de la configuration et réglez model comme small_model sur des modèles inference.eu, afin que les tâches de fond restent sur le même point d’accès.

OpenCode : questions fréquentes

Les questions que nous posent le plus les achats, les développeurs et les juristes. Il en manque une ? Posez-la-nous directement.

Poser une question

Faites passer vos charges IA sur une infrastructure européenne

Dites-nous quels modèles vous utilisez et votre volume approximatif. Nous répondons sous un jour ouvré avec un tarif et la suite.

  • Réponse sous un jour ouvré
  • Tarif adapté à votre volume
  • DPA prêt à signer