Guide de l'utilisateur

FAQ

Solutions aux erreurs et problèmes de configuration courants de l'API LMU AI — 401 / 403 / 429 / 500, facturation des tokens, changement de modèle et dépannage de Claude Code / Codex CLI.

Problème 1 : Flux déconnecté / délai dépassé

Message d'erreur :

stream disconnected before completion: error sending request for url
(https://api.lmuai.com/responses)

Cause : une coupure de flux classique, provenant généralement de :

  • un réseau local instable (bascules fréquentes Wi-Fi / données mobiles, signal faible, perte de paquets)
  • un VPN / proxy / proxy système est activé : le proxy change d'IP de sortie et rompt la connexion

Solution :

  1. Désactivez tout VPN / proxy / proxy système et réessayez — LMU AI est une connexion domestique directe et ne nécessite aucun VPN
  2. Vérifiez que votre réseau local est stable ; basculez vers un réseau plus fiable si nécessaire

Aucun VPN nécessaire — l'accès direct en Chine est le plus rapide

La passerelle LMU AI est hébergée en Chine continentale, elle peut donc être appelée directement depuis un réseau domestique sans VPN, proxy ni contournement. Une connexion directe donne les résultats les plus rapides et les plus stables ; à l'inverse, un VPN ou un proxy qui change d'IP de sortie tend à provoquer des coupures de flux.


Problème 2 : Erreur de réessai 429

Message d'erreur :

exceeded retry limit, last status: 429 Too Many Requests

Cause : votre quota quotidien est épuisé.

Solution :

  1. Ouvrez Mon abonnement et vérifiez si le quota quotidien est épuisé
  2. Si vous avez besoin de plus, achetez un forfait d'un palier différent, puis basculez vers le groupe du nouveau forfait dans la section Clés API de la console

Renouvellement vs. ajout de quota

  • N'achetez pas le même forfait — le même forfait se renouvelle, il n'ajoute pas de quota
  • Pour ajouter du quota, achetez un forfait différent (par exemple, passez d'un pass journalier à un pass mensuel)

Problème 3 : 401 Incorrect API key

Message d'erreur :

unexpected status 401 Unauthorized: Incorrect API key provided

Cause : la requête est toujours partie vers le point de terminaison officiel d'OpenAI au lieu de notre relais.

Solution :

  1. Vérifiez que config.toml a bien été créé ou remplacé conformément au guide
  2. Redémarrez l'IDE (VS Code / Cursor, etc.) pour recharger les fichiers de configuration
  3. Si vous vous étiez connecté auparavant avec un compte officiel ou celui d'un autre fournisseur, déconnectez-vous d'abord, puis reconfigurez

Que faire face à une erreur

Faites une capture d'écran de l'erreur et traduisez-la — cela permet généralement d'identifier rapidement la cause.


Problème 4 : Les scripts sont désactivés (Windows)

Message d'erreur :

codex: cannot be loaded because running scripts is disabled on this system.

Solution : exécutez ce qui suit dans le terminal, puis ouvrez un nouveau terminal :

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Problème 5 : Node.js introuvable (Windows)

Message d'erreur : CODEX n'est pas reconnu comme cmdlet, ou équivalent

Cause : Node.js n'est pas installé ou son PATH est cassé.

Solution : réinstallez Node.js 20+, puis ouvrez un nouveau terminal.


Problème 6 : 503 No available accounts (des variables d'environnement remplacent la clé)

Message d'erreur :

Error code: 503 - {'error': {'message': 'No available accounts: no available accounts', 'type': 'api_error'}}

Cause : votre ~/.zshrc (ou ~/.bashrc) définit ANTHROPIC_AUTH_TOKEN / ANTHROPIC_BASE_URL / ANTHROPIC_MODEL. Dès le démarrage du shell, ces variables s'appliquent globalement et remplacent la clé API configurée dans votre IDE (Cursor, VS Code, etc.), la requête utilise donc la mauvaise clé.

Solution (choisissez-en une) :

Option A : supprimer les variables de .zshrc

Ouvrez ~/.zshrc et supprimez ces lignes :

export ANTHROPIC_AUTH_TOKEN="..."
export ANTHROPIC_BASE_URL="..."
export ANTHROPIC_MODEL="..."

Exécutez ensuite source ~/.zshrc pour appliquer, puis redémarrez l'IDE.

Option B : déplacer les variables dans un fichier séparé, chargé uniquement pour la CLI Claude Code

  1. Créez ~/.claude_env avec les trois lignes :
export ANTHROPIC_AUTH_TOKEN="sk-your-lmu-ai-api-key"
export ANTHROPIC_BASE_URL="https://api.lmuai.com"
export ANTHROPIC_MODEL="the-model-you-use"
  1. Supprimez ces trois lignes de ~/.zshrc.

  2. Chargez-les manuellement au démarrage de Claude Code :

source ~/.claude_env && claude

Ainsi, l'IDE utilise la clé de son fichier de configuration et la CLI Claude Code utilise les variables d'environnement, sans interférence mutuelle.


Problème 7 : 400 Invalid signature in thinking block (changement de modèle entre groupes)

Message d'erreur :

upstream error: 400 messages.<index>.content.<index>:
Invalid `signature` in `thinking` block

Cause : lorsque l'Extended Thinking de Claude génère un bloc thinking, il y attache une signature chiffrée étroitement liée au compte amont précis qui l'a produit. Si vous changez de modèle entre groupes au sein d'une même conversation (par exemple de claude-sonnet-5 dans un groupe « Claude-Pro direct » vers claude-fable-5 dans un groupe « Claude-MAX multiplicateur élevé »), le client envoie l'historique précédent (y compris le bloc thinking signé) au compte amont du nouveau groupe. Des groupes différents utilisent des amonts différents et ne peuvent pas vérifier une signature émise par un autre, d'où le renvoi d'une erreur 400.

Déclencheurs typiques :

  • Le client permet de changer de modèle en cours de conversation et transporte tout l'historique précédent
  • Les groupes avant et après le changement proviennent de comptes amont différents (par exemple « groupe direct » ↔ « groupe relais / MAX multiplicateur élevé »)

Solution (l'une au choix) :

  1. Démarrez une nouvelle conversation lorsque vous changez de groupe — ne transporter aucun ancien historique est la solution la plus simple et la plus fiable.
  2. Conservez un seul groupe par conversation — si vous avez besoin d'une collaboration multi-modèles, changez au sein du même groupe (même amont).
  3. Retirez les blocs thinking de l'historique — si le client permet de modifier l'historique, supprimez les blocs thinking avant de changer de groupe.

Pourquoi réessayer ne sert à rien ?

Il s'agit d'une erreur client 4xx irrécupérable causée par une signature invalide. Dès que la passerelle la détecte, elle renvoie l'erreur 400 directement au client et ne réessaie pas automatiquement sur un autre compte — car tout amont non correspondant échouerait de la même façon.


Problème 8 : 400 Unknown parameter: 'tools[0].n' (tools envoyé à un point de terminaison image)

Message d'erreur :

400 - {'error': {'code': 'unknown_parameter', 'message': "Unknown parameter: 'tools[0].n'.", 'param': 'tools[0].n', 'type': 'invalid_request_error'}}

Points de terminaison concernés : /v1/images/generations, /v1/images/edits (génération / édition d'images).

Cause : le client a inséré un tableau tools dans le corps de la requête d'image, avec un champ n à l'intérieur de tools[0]. Les points de terminaison image d'OpenAI n'acceptent pas tools (les appels d'outils relèvent des points de terminaison Chat / Responses ; les points de terminaison image n'ont pas cette notion), l'amont le rejette donc avec une erreur 400.

Cela provient généralement d'un client / wrapper SDK bogué qui place le « nombre d'images n » au mauvais endroit — imbriqué dans tools[0].n, ou copié depuis un modèle de requête Chat.

Solution :

  1. Supprimez le champ tools du corps de la requête — generations / edits d'images ne prennent pas en charge les appels d'outils ; retirez entièrement le champ.
  2. Pour générer plusieurs images, indiquez le nombre dans le paramètre n de premier niveau — seul /v1/images/generations prend en charge n (plusieurs par appel) ; /v1/images/edits non, retirez donc n dans ce cas.
  3. Vérifiez la version du SDK client — si un wrapper construit les paramètres automatiquement, mettez-le à jour ou remplacez-le pour qu'il n'applique pas un modèle Chat aux points de terminaison image.

Pourquoi changer de compte / réessayer ne sert à rien ?

Il s'agit d'une erreur client 4xx causée par un corps de requête invalide, sans rapport avec le compte amont ou le groupe — la passerelle transmet la requête telle quelle, et n'importe quel compte renvoie la même erreur 400. Vous devez corriger les paramètres de requête envoyés par le client.


Problème 9 : Ai-je besoin d'un VPN ?

Non. La passerelle LMU AI est hébergée en Chine continentale, et api.lmuai.com peut être appelée directement depuis un réseau domestique sans VPN, proxy ni contournement.

À l'inverse, un VPN ou un proxy qui change d'IP de sortie tend à provoquer des coupures de flux (voir Problème 1). Une connexion domestique directe donne les résultats les plus rapides et les plus stables.


Problème 10 : 401 API_KEY_REQUIRED (Codex n'envoie aucune clé)

Message d'erreur :

unexpected status 401 Unauthorized: {"code":"API_KEY_REQUIRED","message":"API key is required in Authorization header (Bearer scheme), x-api-key header, or x-goog-api-key header"}, url: https://api.lmuai.com/responses, request id: ...

Cause : les versions récentes de Codex ont modifié le fonctionnement de l'authentification — les identifiants peuvent désormais être stockés dans le trousseau du système au lieu d'être lus depuis auth.json. Avec la configuration de l'ancien guide (auth.json + requires_openai_auth = true), la requête envoyée par Codex ne transporte alors aucune clé API (ni Authorization, ni x-api-key, ni x-goog-api-key n'est envoyé), la passerelle ne trouve donc aucune clé et renvoie une erreur 401 API_KEY_REQUIRED.

Notez que c'est différent de l'erreur Incorrect API key provided du Problème 3 : dans ce cas, une clé est envoyée mais elle est erronée (généralement parce que la requête est partie vers le point de terminaison officiel d'OpenAI au lieu du relais LMU AI), tandis qu'ici aucune clé n'est envoyée.

Solution : placez la clé directement dans un en-tête de requête. Ouvrez ~/.codex/config.toml (sous Windows, C:\users\your-username\.codex\config.toml), trouvez la section de votre fournisseur de modèle [model_providers.<ID>] (généralement [model_providers.codex] si vous avez suivi le guide de ce site), supprimez la ligne requires_openai_auth = true qu'elle contient, et ajoutez la sous-table http_headers correspondante tout à la fin du fichier :

[model_providers.codex]
name = "codex"
base_url = "https://api.lmuai.com"
wire_api = "responses"

[model_providers.codex.http_headers]
Authorization = "Bearer your sk- key generated in the console"

Enregistrez, réouvrez le terminal et redémarrez Codex.

Erreurs faciles à commettre

  • Le codex dans le nom de la sous-table doit correspondre à l'ID de [model_providers.codex] ci-dessus (dans le guide de l'extension VS Code, par exemple, c'est [model_providers.OpenAI.http_headers])
  • Conservez un espace entre Bearer et la clé
  • La sous-table http_headers doit se trouver tout à la fin du fichier — tout paramètre écrit après elle est traité comme un en-tête de requête

Tous les guides Codex de ce site (Mac / Windows / Serveur / Application Codex / Extension VS Code) ont été mis à jour avec la configuration ci-dessus.


Toujours bloqué ?

Si un environnement particulier vous bloque encore pendant l'installation ou la configuration, contactez le support :

  • Ajoutez le support sur WeChat
  • Contactez le support sur Xianyu (闲鱼)

Horaires d'assistance à distance : après 14 h (les matinées sont consacrées à la résolution à distance de configurations d'environnement complexes).

Si vous avez besoin d'une aide à distance, téléchargez d'abord NetEase UU Remote et envoyez-le au support ; les conseils techniques et l'assistance à distance ont lieu l'après-midi après 14 h.

Dernière mise à jour :

京ICP备2020034311号-7

Sur cette page