Routeur Claude Code : Utilisez n'importe quel backend modèle avec les outils MCP et l'exécution sandbox

Routeur Claude Code : Utilisez n'importe quel backend modèle avec les outils MCP et l'exécution sandbox

Claude Code achemine toutes ses requêtes vers le point de terminaison API compatible Anthropic que vous lui indiquez. Changez une variable d’environnement et vous exécutez Qwen, DeepSeek, GLM ou MiniMax via le workflow agent complet de Claude Code — incluant l’appel d’outils MCP, l’édition de fichiers et l’exécution bash — sans toucher au reste de votre configuration.

Ce guide explique comment fonctionne le routage, comment configurer le point de terminaison de Novita AI comme backend, comment les appels d’outils MCP transitent par une configuration routée, et comment exécuter les outils en toute sécurité dans le Novita Agent Sandbox.

Qu’est-ce qu’un routeur Claude Code ?

Dans le langage de Claude Code, un « routeur » est tout point de terminaison compatible avec l’API Anthropic vers lequel Claude Code envoie ses requêtes. Par défaut, ce point de terminaison est l’API d’Anthropic à api.anthropic.com. En définissant ANTHROPIC_BASE_URL, vous redirigez ces requêtes vers un autre fournisseur — qui accepte le même format d’API et renvoie des réponses dans la même structure.

Il est important de comprendre ceci : Claude Code ne sait pas et ne se soucie pas de savoir quel fournisseur se trouve derrière son point de terminaison configuré. Il envoie une requête de message au format Anthropic, lit une réponse au format Anthropic, et continue. Le routeur — que ce soit Novita AI, un proxy auto-hébergé ou un agrégateur tiers — gère la sélection du modèle, l’inférence et le formatage de la réponse de manière transparente.

Trois raisons pratiques d’utiliser un routeur :

  • Accès aux modèles : Les modèles à poids ouverts comme Qwen3-Coder, MiniMax M2.7 et GLM-4.7 ne sont pas disponibles sur le point de terminaison d’Anthropic. Le routage via Novita AI vous donne accès à tous ces modèles dans le même workflow Claude Code.
  • Gestion des coûts : Les modèles à poids ouverts via des fournisseurs comme Novita coûtent généralement beaucoup moins cher par million de tokens que les modèles fermés d’Anthropic. Pour les sessions agentiques à fort volume où le modèle effectue des centaines d’appels d’outils, cette différence s’accumule.
  • Capacités spécialisées : Certains modèles à poids ouverts sont spécifiquement entraînés pour l’appel de fonctions et l’utilisation d’outils en plusieurs étapes, ce qui est exactement ce que nécessite l’intégration MCP de Claude Code. Choisir un modèle optimisé pour la précision des appels d’outils plutôt qu’un modèle généraliste peut réduire les appels d’outils échoués ou mal formés dans les workflows complexes.

Comment fonctionne le routage Claude Code

Trois variables d’environnement contrôlent le routage :

Variable Rôle
ANTHROPIC_BASE_URL Le point de terminaison API. Modifiez-le pour router via un autre fournisseur.
ANTHROPIC_AUTH_TOKEN La clé API pour l’authentification sur le point de terminaison cible.
ANTHROPIC_MODEL L’identifiant du modèle à utiliser. Doit correspondre à la convention de nommage du fournisseur cible.

Lorsque ANTHROPIC_BASE_URL est défini, Claude Code envoie toutes les requêtes d’inférence à cette URL au lieu de https://api.anthropic.com. Le point de terminaison cible doit implémenter le format de l’API message d’Anthropic — la même structure de requête et de réponse que celle utilisée par les modèles natifs de Claude.

Un détail important : les alias de modèle d’Anthropic (sonnet, opus, haiku) ne se résolvent correctement qu’avec le point de terminaison d’Anthropic lui-même. Lorsque vous utilisez un routeur tiers, définissez ANTHROPIC_MODEL avec l’identifiant spécifique du modèle du fournisseur plutôt qu’un alias. Un alias comme sonnet passé à un point de terminaison non-Anthropic échouera ou retournera un modèle inattendu.

ANTHROPIC_SMALL_FAST_MODEL est un second emplacement de modèle pour les tâches internes en arrière-plan de Claude Code : résumé, compression du contexte et raisonnement léger entre les étapes. Diriger cela vers un modèle plus rapide et moins cher réduit les coûts de session sans affecter la qualité des réponses de votre modèle principal.

Configurer Novita AI comme routeur

Le point de terminaison compatible Anthropic de Novita AI se trouve à https://api.novita.ai/anthropic. Il accepte le même format de requête que celui envoyé nativement par Claude Code et prend en charge une large gamme de modèles à poids ouverts, y compris des spécialistes du codage et des variantes optimisées pour l’appel d’outils.

Étape 1 : Obtenez votre clé API Novita

  1. Inscrivez-vous sur novita.ai — des crédits d’essai gratuits sont inclus lors de l’inscription.
  2. Ouvrez Key Management dans votre tableau de bord.
  3. Cliquez sur Create New Key, copiez la clé immédiatement (elle n’est affichée qu’une fois) et conservez-la en lieu sûr.

Étape 2 : Configurez l’environnement

macOS / Linux :

export ANTHROPIC_BASE_URL="https://api.novita.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="<votre-clé-api-novita>"
export ANTHROPIC_MODEL="qwen/qwen3-coder-480b-a35b-instruct"
export ANTHROPIC_SMALL_FAST_MODEL="deepseek/deepseek-v4-flash"

Windows (PowerShell) :

$env:ANTHROPIC_BASE_URL = "https://api.novita.ai/anthropic"
$env:ANTHROPIC_AUTH_TOKEN = "<votre-clé-api-novita>"
$env:ANTHROPIC_MODEL = "qwen/qwen3-coder-480b-a35b-instruct"
$env:ANTHROPIC_SMALL_FAST_MODEL = "deepseek/deepseek-v4-flash"

Windows (Invite de commandes) :

set ANTHROPIC_BASE_URL=https://api.novita.ai/anthropic
set ANTHROPIC_AUTH_TOKEN=<votre-clé-api-novita>
set ANTHROPIC_MODEL=qwen/qwen3-coder-480b-a35b-instruct
set ANTHROPIC_SMALL_FAST_MODEL=deepseek/deepseek-v4-flash

Étape 3 : Lancez Claude Code

claude .

Claude Code démarre dans le répertoire courant et achemine toutes les inférences via Novita AI. Les outils MCP, l’édition de fichiers et l’exécution bash se comportent de manière identique à une configuration native Anthropic.

Modèles disponibles sur Novita AI

Modèle ID du modèle Novita Point fort principal
Qwen3-Coder 480B qwen/qwen3-coder-480b-a35b-instruct Génération de code, raisonnement long contexte
MiniMax M2.7 minimax/minimax-m2.7 Précision de l’appel d’outils agentique
DeepSeek V4 Flash deepseek/deepseek-v4-flash Itération rapide, efficacité des coûts
GLM-4.7 zai-org/glm-4.7 Codage et tâches agentiques multi-étapes
Kimi K2 Instruct moonshotai/kimi-k2-instruct Utilisation d’outils, bases de code mathématiques

Ces modèles à poids ouverts fonctionnent sur une infrastructure GPU moderne, mais leur coût par token est généralement bien inférieur. Pour des tâches comme des sessions de refactoring étendues ou la génération automatisée de tests — où Claude Code effectue des dizaines d’appels d’outils — cette différence de coût par token a un impact pratique.

Consultez novita.ai/llm-api pour la liste actuelle des modèles et les identifiants vérifiés avant de finaliser votre configuration. La disponibilité et les identifiants des modèles peuvent changer à mesure que les fournisseurs ajoutent ou mettent à jour leur offre.

Routage des appels d’outils via MCP

La couche d’appel d’outils de Claude Code est MCP — le Model Context Protocol. Lorsque vous ajoutez un serveur MCP avec claude mcp add, Claude Code s’y connecte au début de la session et charge les outils qu’il expose. Pendant une session, le LLM routé décide quand appeler ces outils, quels arguments passer et comment agir sur les résultats.

La séparation du routage est importante : le backend LLM (votre routeur Novita AI) gère tout le raisonnement — quels outils invoquer, dans quel ordre et avec quels arguments. Le serveur MCP gère l’exécution — il reçoit les appels d’outils, exécute l’action sous-jacente et renvoie les résultats. Claude Code coordonne entre eux.

En pratique, cela signifie que la qualité du support des appels d’outils de votre routeur détermine la fiabilité avec laquelle les tâches complexes en plusieurs étapes sont accomplies. Un modèle qui génère des arguments d’appel de fonction mal formés ou qui ne parvient pas à continuer après des erreurs d’outil se bloquera au milieu d’une tâche. Les modèles spécifiquement ajustés pour les workflows d’appel de fonctions — comme Qwen3-Coder et MiniMax M2.7 — gèrent ces séquences plus systématiquement.

Ajouter un serveur MCP à une configuration routée

# Serveur local (périmètre du projet) — Claude Code lance le processus
claude mcp add mon-serveur -- python mon_serveur.py

# Serveur HTTP distant — se connecte à un serveur déjà en cours d'exécution
claude mcp add serveur-distant --transport http https://votre-serveur.example.com/mcp

L’option HTTP distante se connecte à un serveur fonctionnant indépendamment. C’est l’architecture pour laquelle Novita Agent Sandbox est conçu : le serveur MCP reste en cours d’exécution et génère des instances sandbox à la demande à mesure que les appels d’outils arrivent.

Exécution d’outils dans Agent Sandbox

Lorsque vos outils MCP impliquent l’exécution de code, le traitement de fichiers ou l’appel de systèmes externes, vous souhaitez que cette exécution se produise dans un environnement isolé plutôt que sur votre machine de développement. Le Novita Agent Sandbox fournit cela en tant que service cloud géré.

Une instance Sandbox est un conteneur isolé de courte durée que votre serveur MCP crée lorsque Claude Code déclenche un outil d’exécution de code. Chaque conteneur fournit :

  • Système de fichiers isolé : séparé de l’hôte, rien ne circule entre les sessions
  • Environnement préinstallé : Python avec les packages courants de science des données et de scripting
  • Démarrage rapide : démarrage à froid inférieur à 200 ms, adapté aux séquences d’appels d’outils à faible latence
  • Facturation à la seconde : vous ne payez que pour le temps d’exécution actif
  • Exécution Shell et Python : accès complet à la ligne de commande pour les workflows multi-langages

Le flux de données dans une configuration Claude Code routée avec Sandbox ressemble à ceci :

Claude Code
  → envoie des requêtes de raisonnement à l'API LLM Novita (le routeur)
  → reçoit les décisions d'appel d'outils du modèle
  → transmet les appels d'outils au serveur MCP
    → le serveur MCP crée une instance Novita Sandbox
    → Sandbox exécute le code et renvoie la sortie
    → le serveur MCP renvoie les résultats à Claude Code
  → l'API LLM Novita raisonne sur les résultats, décide de l'étape suivante

Cette séparation maintient l’exécution de code non fiable contenue tout en donnant au routeur LLM une visibilité complète sur les résultats pour un raisonnement en plusieurs étapes.

Pour utiliser Novita Sandbox depuis un gestionnaire d’outils MCP, installez le SDK :

pip install novita-sandbox

Créez ensuite et utilisez une instance sandbox dans votre implémentation d’outil :

from novita_sandbox.code_interpreter import Sandbox

def run_code_tool(code: str, api_key: str) -> dict:
    sandbox = Sandbox.create(
        template="code-interpreter-v1",
        api_key=api_key,
        domain="sandbox.novita.ai",
        timeout=300,
    )
    result = sandbox.run_code(code, language="python")
    sandbox.kill()
    return {
        "output": result.logs,
        "error": result.error,
    }

Le modèle code-interpreter-v1 est préinstallé avec pandas, numpy, matplotlib et d’autres packages couramment utilisés, de sorte que la plupart des tâches d’analyse de données et de scripting s’exécutent sans étapes de configuration supplémentaires.

Choisir un modèle pour les workflows à forte utilisation d’outils

Le choix du modèle affecte deux choses dans une configuration Claude Code routée : la qualité du raisonnement pour décider quoi faire, et la fiabilité des appels d’outils pour l’exécuter correctement. Ces deux aspects ne sont pas toujours corrélés — un modèle qui raisonne bien sur des tâches ouvertes peut générer des schémas d’appel de fonction incohérents lorsque les outils ont des types d’arguments complexes.

Qwen3-Coder 480B fonctionne bien sur les tâches de codage de longue durée où Claude Code doit lire plusieurs fichiers, planifier une approche et exécuter une séquence d’édition en plusieurs étapes. Sa gestion des longs contextes signifie qu’il est moins susceptible de perdre la trace des résultats d’outils précédents au milieu d’une tâche complexe.

MiniMax M2.7 est optimisé pour la précision agentique — spécifiquement, il est conçu pour minimiser les invocations d’outils incorrectes et gérer les séquences d’outils multi-tours où chaque étape s’appuie sur le résultat précédent. Pour les configurations MCP avec plusieurs outils interdépendants, cette précision réduit le nombre de boucles de récupération nécessaires.

DeepSeek V4 Flash est le choix pratique pour ANTHROPIC_SMALL_FAST_MODEL. Il est rapide et bon marché, et les tâches que Claude Code sous-traite au petit modèle — résumé de session, compression de contexte — ne nécessitent pas la même profondeur de raisonnement que les tâches de codage principales.

Une observation pratique : si vous construisez un serveur MCP personnalisé avec des outils comportant de nombreux paramètres optionnels ou des schémas imbriqués, testez la précision des appels du modèle avec des exemples représentatifs avant de le déployer dans une session de longue durée. Les erreurs d’appel d’outils sont moins perturbatrices lorsqu’elles sont détectées tôt.

FAQ

Puis-je utiliser n’importe quel routeur LLM avec Claude Code, pas seulement Novita AI ?

Oui. Tout service qui implémente l’API message Anthropic à son URL de base fonctionne. Cela inclut LiteLLM configuré avec le format Anthropic, les proxys auto-hébergés ou d’autres services de routage commerciaux. Définissez ANTHROPIC_BASE_URL sur ce point de terminaison, ANTHROPIC_AUTH_TOKEN sur la clé appropriée, et ANTHROPIC_MODEL sur l’identifiant du modèle que ce point de terminaison reconnaît.

Les outils MCP fonctionnent-ils lors du routage via un fournisseur non-Anthropic ?

Oui. MCP opère au niveau de Claude Code, pas au niveau de l’API. Le routeur n’affecte que le modèle qui effectue le raisonnement sur l’utilisation des outils. Tant que le modèle prend en charge l’appel de fonction dans le format de message Anthropic, les outils MCP fonctionnent de la même manière quel que soit le fournisseur.

Pourquoi l’alias sonnet ne fonctionne-t-il pas lors du routage via Novita AI ?

Les alias de modèles d’Anthropic (sonnet, opus, haiku) sont résolus par le point de terminaison d’Anthropic, pas par Claude Code. Lorsque vous acheminez via un fournisseur tiers, la résolution d’alias d’Anthropic n’est pas impliquée. Définissez plutôt ANTHROPIC_MODEL sur un identifiant de modèle spécifique de votre fournisseur.

Comment revenir aux modèles natifs d’Anthropic ?

Désactivez les variables de routage pour la session en cours :

unset ANTHROPIC_BASE_URL
unset ANTHROPIC_AUTH_TOKEN
unset ANTHROPIC_MODEL
unset ANTHROPIC_SMALL_FAST_MODEL

Claude Code revient à ce qui se trouve dans votre fichier de paramètres ou à la valeur par défaut de l’API Anthropic lors du prochain lancement.

Y a-t-il une surcharge de latence liée à l’utilisation d’un routeur tiers ?

Il y a un petit saut réseau supplémentaire. Pour les sessions interactives, cela n’est généralement pas perceptible. Pour les pipelines automatisés sensibles à la latence, vérifiez les chiffres de latence publiés par le fournisseur avant de vous engager. Novita AI publie des métriques de latence d’inférence et de débit via sa console LLM Metrics.

L’Agent Sandbox nécessite-t-il une clé API distincte du routeur LLM ?

Non. La clé API de Novita AI fonctionne à la fois pour l’API LLM et l’Agent Sandbox. La même clé que vous utilisez pour ANTHROPIC_AUTH_TOKEN est celle que vous transmettez à Sandbox.create() dans votre implémentation d’outil MCP.

Articles recommandés


Sources vérifiées le 16 juillet 2026 : Documentation des variables d’environnement Claude Code, API LLM Novita AI, Novita Agent Sandbox.