# Частые вопросы

> Решения типичных ошибок и проблем настройки LMU AI API — 401 / 403 / 429 / 500, биллинг по токенам, переключение моделей и устранение неполадок Claude Code / Codex CLI.

URL: https://docs.lmuai.com/ru/docs/guide/faq



## Проблема 1: Обрыв потока / таймаут [#issue-1]

**Сообщение об ошибке:**

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

**Причина:** классический обрыв потока, обычно из-за:

* нестабильной локальной сети (частые переключения Wi-Fi / мобильного интернета, слабый сигнал, потери пакетов)
* **включённого VPN / прокси / системного прокси**: прокси меняет выходной IP и рвёт соединение

**Решение:**

1. **Отключите любой VPN / прокси / системный прокси и повторите попытку** — LMU AI подключается напрямую внутри страны и не требует VPN
2. Убедитесь, что ваша локальная сеть стабильна; при необходимости перейдите на более надёжную сеть

<Callout type="info" title="VPN не нужен — прямое подключение внутри Китая работает быстрее всего">
  Шлюз LMU AI размещён **в материковом Китае**, поэтому обращаться к нему можно напрямую из внутренней сети, **без VPN, прокси и каких-либо обходных путей**. Прямое подключение даёт самый быстрый и стабильный результат; и наоборот, VPN или прокси, меняющий выходной IP, как правило приводит к обрывам потока.
</Callout>

***

## Проблема 2: Ошибка повторных попыток 429 [#issue-2]

**Сообщение об ошибке:**

```
exceeded retry limit, last status: 429 Too Many Requests
```

**Причина:** ваша дневная квота израсходована.

**Решение:**

1. Откройте &#x2A;*«Моя подписка»** и проверьте, исчерпана ли дневная квота
2. Если нужно больше, купите тарифный план **другого уровня*&#x2A;, затем переключитесь на группу нового плана в разделе &#x2A;*«API-ключи»** в консоли

<Callout type="warn" title="Продление против добавления квоты">
  * **Не покупайте тот же самый план** — он продлевается, а квота не добавляется
  * Чтобы добавить квоту, купите другой план (например, перейдите с дневного пропуска на месячный)
</Callout>

***

## Проблема 3: 401 Incorrect API key [#issue-3]

**Сообщение об ошибке:**

```
unexpected status 401 Unauthorized: Incorrect API key provided
```

**Причина:** запрос по-прежнему уходит на официальный эндпоинт OpenAI, а не в наш релей.

**Решение:**

1. Убедитесь, что `config.toml` создан или заменён правильно согласно руководству
2. Перезапустите IDE (VS Code / Cursor и т. д.), чтобы файлы конфигурации перезагрузились
3. Если ранее вы входили под официальным аккаунтом или аккаунтом другого провайдера — сначала выйдите из него, затем настройте заново

<Callout type="info" title="Что делать, когда вы столкнулись с ошибкой">
  Сделайте скриншот ошибки и переведите её — обычно это быстро указывает на причину.
</Callout>

***

## Проблема 4: Выполнение сценариев отключено (Windows) [#issue-4]

**Сообщение об ошибке:**

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

**Решение:** выполните в терминале следующее, затем откройте новый терминал:

```powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
```

***

## Проблема 5: Node.js не найден (Windows) [#issue-5]

**Сообщение об ошибке:** `CODEX` не распознан как командлет или аналогичное

**Причина:** Node.js не установлен либо повреждён его PATH.

**Решение:** переустановите Node.js 20+, затем откройте новый терминал.

***

## Проблема 6: 503 No available accounts (переменные окружения переопределяют ключ) [#issue-6]

**Сообщение об ошибке:**

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

**Причина:** в вашем `~/.zshrc` (или `~/.bashrc`) заданы `ANTHROPIC_AUTH_TOKEN` / `ANTHROPIC_BASE_URL` / `ANTHROPIC_MODEL`. После запуска оболочки эти переменные действуют глобально и переопределяют API-ключ, настроенный в вашей IDE (Cursor, VS Code и т. д.), поэтому запрос использует неверный ключ.

**Решение (выберите одно):**

**Вариант A: удалить переменные из `.zshrc`**

Откройте `~/.zshrc` и удалите эти строки:

```bash
export ANTHROPIC_AUTH_TOKEN="..."
export ANTHROPIC_BASE_URL="..."
export ANTHROPIC_MODEL="..."
```

Затем выполните `source ~/.zshrc`, чтобы применить изменения, и перезапустите IDE.

**Вариант B: перенести переменные в отдельный файл, загружаемый только для Claude Code CLI**

1. Создайте `~/.claude_env` с тремя строками:

```bash
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"
```

2. Удалите эти три строки из `~/.zshrc`.

3. Загружайте их вручную при запуске Claude Code:

```bash
source ~/.claude_env && claude
```

Так IDE будет использовать ключ из своего файла конфигурации, а Claude Code CLI — переменные окружения, не мешая друг другу.

***

## Проблема 7: 400 Invalid signature in thinking block (переключение моделей между группами) [#issue-7]

**Сообщение об ошибке:**

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

**Причина:** когда Extended Thinking в Claude генерирует блок `thinking`, он прикрепляет к нему **зашифрованную подпись**, жёстко привязанную к **конкретному вышестоящему аккаунту**, который его создал. Если в рамках одного разговора вы **переключаете модели между группами** (например, с `claude-sonnet-5` в группе «Claude-Pro напрямую» на `claude-fable-5` в группе «Claude-MAX с высоким множителем»), клиент отправляет предыдущую историю (включая подписанный блок thinking) вышестоящему аккаунту новой группы. Разные группы используют **разные вышестоящие аккаунты** и не могут проверить подпись, выданную другим, поэтому возвращается 400.

**Типичные причины срабатывания:**

* Клиент поддерживает переключение моделей посреди разговора и передаёт всю предыдущую историю
* Группы до и после переключения относятся к **разным вышестоящим аккаунтам** (например, «группа напрямую» ↔ «релей / группа MAX с высоким множителем»)

**Решение (любое из):**

1. **Начинайте новый разговор при переключении групп** — не передавать старую историю проще и надёжнее всего.
2. **Используйте одну группу на один разговор** — если нужна совместная работа нескольких моделей, переключайтесь внутри одной группы (один и тот же вышестоящий аккаунт).
3. **Удалите блоки thinking из истории** — если клиент позволяет редактировать историю, удалите блоки `thinking` перед переключением групп.

<Callout type="info" title="Почему повторная попытка не помогает?">
  Это **невосстановимая клиентская ошибка 4xx, вызванная недействительной подписью**. Обнаружив её, шлюз возвращает 400 напрямую клиенту и не повторяет запрос автоматически на другом аккаунте — поскольку любой несоответствующий вышестоящий аккаунт выдаст тот же сбой.
</Callout>

***

## Проблема 8: 400 Unknown parameter: 'tools\[0].n' (tools отправлен на эндпоинт изображений) [#issue-8]

**Сообщение об ошибке:**

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

**Затронутые эндпоинты:** `/v1/images/generations`, `/v1/images/edits` (генерация / редактирование изображений).

**Причина:** клиент поместил массив `tools` в тело запроса на изображение, с полем `n` внутри `tools[0]`. Эндпоинты изображений OpenAI &#x2A;*не принимают `tools`** (вызов инструментов относится к эндпоинтам Chat / Responses, у эндпоинтов изображений такого понятия нет), поэтому вышестоящий сервис отклоняет запрос с кодом 400.

Обычно это следствие ошибочной обёртки клиента / SDK, которая помещает «количество изображений `n`» не туда — вкладывает его в `tools[0].n` или копирует из шаблона запроса Chat.

**Решение:**

1. **Удалите поле `tools` из тела запроса** — `generations` / `edits` для изображений не поддерживают вызов инструментов, уберите поле целиком.
2. **Чтобы сгенерировать несколько изображений, укажите количество в `n` верхнего уровня** — `n` (несколько за один вызов) поддерживает только `/v1/images/generations`; `/v1/images/edits` — нет, поэтому там `n` нужно убрать.
3. **Проверьте версию клиентского SDK** — если обёртка собирает параметры автоматически, обновите или замените её, чтобы она не применяла шаблон Chat к эндпоинтам изображений.

<Callout type="info" title="Почему смена аккаунта / повторная попытка не помогают?">
  Это клиентская ошибка 4xx, вызванная **некорректным телом запроса**, и она не связана с вышестоящим аккаунтом или группой — шлюз передаёт запрос как есть, и любой аккаунт вернёт тот же 400. Нужно исправить параметры запроса, которые отправляет клиент.
</Callout>

***

## Проблема 9: Нужен ли VPN? [#issue-9]

**Нет.** Шлюз LMU AI размещён **в материковом Китае**, и к `api.lmuai.com` можно обращаться напрямую из внутренней сети без VPN, прокси и обходных путей.

И наоборот, VPN или прокси, меняющий выходной IP, как правило приводит к обрывам потока (см. [Проблема 1](#issue-1)). Прямое подключение внутри страны даёт самый быстрый и стабильный результат.

***

## Проблема 10: 401 API\_KEY\_REQUIRED (Codex не отправляет ключ) [#issue-10]

**Сообщение об ошибке:**

```
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: ...
```

**Причина:** в новых версиях Codex изменился механизм аутентификации — учётные данные теперь могут храниться в системном хранилище ключей вместо чтения из `auth.json`. При настройке по старому руководству (`auth.json` + `requires_openai_auth = true`) запрос, который отправляет Codex, уходит **вообще без API-ключа** (не отправляется ни `Authorization`, ни `x-api-key`, ни `x-goog-api-key`), поэтому шлюз не находит ключ и возвращает 401 `API_KEY_REQUIRED`.

Обратите внимание: это не то же самое, что `Incorrect API key provided` из [Проблемы 3](#issue-3): там ключ отправляется, но неверный (обычно потому, что запрос ушёл на официальный эндпоинт OpenAI, а не в релей LMU AI), а здесь ключ **не отправляется вовсе**.

**Решение:** передайте ключ напрямую в заголовке запроса. Откройте `~/.codex/config.toml` (в Windows — `C:\users\your-username\.codex\config.toml`), найдите секцию вашего провайдера моделей `[model_providers.<ID>]` (обычно `[model_providers.codex]`, если вы следовали руководству этого сайта), удалите в ней строку `requires_openai_auth = true` и добавьте соответствующую подтаблицу `http_headers` в **самый конец файла**:

```toml
[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"
```

Сохраните файл, заново откройте терминал и перезапустите Codex.

<Callout type="warn" title="Где легко ошибиться">
  * `codex` в имени подтаблицы должен совпадать с ID в `[model_providers.codex]` выше (например, в руководстве по расширению для VS Code это `[model_providers.OpenAI.http_headers]`)
  * Между `Bearer` и ключом должен быть **один пробел**
  * Подтаблица `http_headers` должна находиться в самом конце файла — любые настройки, записанные после неё, будут восприниматься как заголовки запроса
</Callout>

Все руководства по Codex на этом сайте ([Mac](/ru/docs/tools/codex-cli-mac) / [Windows](/ru/docs/tools/codex-cli-windows) / [Сервер](/ru/docs/tools/codex-cli-server) / [Codex App](/ru/docs/tools/codex-app) / [Расширение для VS Code](/ru/docs/tools/vscode-plugin)) обновлены под эту настройку.

***

## Всё ещё не получается? [#всё-ещё-не-получается]

Если особое окружение по-прежнему мешает установке или настройке, обратитесь в поддержку:

* Добавьте поддержку в WeChat
* Напишите в поддержку на Xianyu (闲鱼)

> Часы удалённой помощи: **после 14:00** (утро уходит на удалённое решение сложных случаев настройки окружения).
>
> Если нужна удалённая помощь, сначала скачайте **NetEase UU Remote** и отправьте его поддержке; технические консультации и удалённая помощь проводятся днём после 14:00.
