Аутентификация
Qwen Code поддерживает два метода аутентификации. Выберите тот, который соответствует способу запуска CLI:
- Qwen OAuth (рекомендуется): войдите в свою учетную запись
qwen.aiв браузере. - API-ключ: используйте API-ключ для подключения к любому поддерживаемому провайдеру. Более гибкий — поддерживает OpenAI, Anthropic, Google GenAI, Alibaba Cloud Bailian и другие совместимые конечные точки.

👍 Вариант 1: Qwen OAuth (рекомендуется и бесплатно)
Используйте этот способ, если вы хотите получить самую простую настройку и используете модели Qwen.
- Как это работает: при первом запуске Qwen Code открывает страницу входа в браузере. После завершения входа учетные данные кэшируются локально, поэтому вам обычно больше не придется входить повторно.
- Требования: аккаунт
qwen.ai+ доступ к интернету (по крайней мере для первого входа). - Преимущества: нет необходимости управлять API-ключами, автоматическое обновление учетных данных.
- Стоимость и квоты: бесплатно, с квотой 60 запросов в минуту и 1000 запросов в день.
Запустите CLI и следуйте инструкциям в браузере:
qwenВ неинтерактивных или безголовых средах (например, CI, SSH, контейнеры) вы обычно не можете завершить процесс входа через OAuth в браузере.
В этих случаях используйте метод аутентификации по API-ключу.
🚀 Вариант 2: API-KEY (гибкий)
Используйте этот вариант, если вы хотите большей гибкости в выборе поставщика и модели. Поддерживает несколько протоколов и поставщиков, включая OpenAI, Anthropic, Google GenAI, Alibaba Cloud Bailian, Azure OpenAI, OpenRouter, ModelScope или собственный совместимый эндпоинт.
Вариант 1: План кодирования (Aliyun Bailian)
Используйте этот вариант, если вы хотите предсказуемых затрат с более высокими квотами использования для модели qwen3-coder-plus.
- Принцип работы: Подпишитесь на План кодирования с фиксированной ежемесячной платой, затем настройте Qwen Code на использование специальной конечной точки и вашего ключа API подписки.
- Требования: Получите активную подписку на План кодирования на Alibaba Cloud Bailian .
- Преимущества: Более высокие квоты использования, предсказуемые ежемесячные расходы, доступ к последней модели qwen3-coder-plus.
- Стоимость и квоты: См. документацию по Плану кодирования Alibaba Cloud Bailian .
Введите qwen в терминале для запуска Qwen Code, затем введите команду /auth и выберите API-KEY

После ввода выберите Coding Plan:

Введите ваш ключ sk-sp-xxxxxxxxx, затем используйте команду /model, чтобы переключаться между всеми поддерживаемыми моделями Coding Plan Bailian:

Вариант 2: Сторонний API-ключ
Используйте этот вариант, если вы хотите подключиться к сторонним поставщикам, таким как OpenAI, Anthropic, Google, Azure OpenAI, OpenRouter, ModelScope или собственный хостинговый эндпоинт.
Ключевая концепция — это Поставщики моделей (modelProviders): Qwen Code поддерживает несколько API-протоколов, не только OpenAI. Вы настраиваете доступных поставщиков и модели, редактируя файл ~/.qwen/settings.json, а затем переключаетесь между ними во время выполнения с помощью команды /model.
Поддерживаемые протоколы
| Протокол | Ключ modelProviders | Переменные окружения | Поставщики |
|---|---|---|---|
| Совместимый с OpenAI | openai | OPENAI_API_KEY, OPENAI_BASE_URL, OPENAI_MODEL | OpenAI, Azure OpenAI, OpenRouter, ModelScope, Alibaba Cloud Bailian, любой совместимый с OpenAI API |
| Anthropic | anthropic | ANTHROPIC_API_KEY, ANTHROPIC_BASE_URL, ANTHROPIC_MODEL | Anthropic Claude |
| Google GenAI | gemini | GEMINI_API_KEY, GEMINI_MODEL | Google Gemini |
| Google Vertex AI | vertex-ai | GOOGLE_API_KEY, GOOGLE_MODEL | Google Vertex AI |
Шаг 1: Настройте modelProviders в ~/.qwen/settings.json
Определите, какие модели доступны для каждого протокола. Каждая запись модели требует как минимум id и envKey (название переменной окружения, в которой хранится ваш API-ключ).
Рекомендуется определять modelProviders в пользовательском файле ~/.qwen/settings.json, чтобы избежать конфликтов слияния между настройками проекта и пользователя.
Отредактируйте ~/.qwen/settings.json (создайте, если не существует):
{
"modelProviders": {
"openai": [
{
"id": "gpt-4o",
"name": "GPT-4o",
"envKey": "OPENAI_API_KEY",
"baseUrl": "https://api.openai.com/v1"
}
],
"anthropic": [
{
"id": "claude-sonnet-4-20250514",
"name": "Claude Sonnet 4",
"envKey": "ANTHROPIC_API_KEY"
}
],
"gemini": [
{
"id": "gemini-2.5-pro",
"name": "Gemini 2.5 Pro",
"envKey": "GEMINI_API_KEY"
}
]
}
}Вы можете смешивать несколько протоколов и моделей в одной конфигурации. Поля ModelConfig:
| Поле | Обязательное | Описание |
|---|---|---|
id | Да | ID модели, отправляемый в API (например, gpt-4o, claude-sonnet-4-20250514) |
name | Нет | Отображаемое имя в выборке /model (по умолчанию id) |
envKey | Да | Название переменной окружения для API-ключа (например, OPENAI_API_KEY) |
baseUrl | Нет | Переопределение конечной точки API (полезно для прокси или пользовательских конечных точек) |
generationConfig | Нет | Тонкая настройка timeout, maxRetries, samplingParams и т.д. |
Учетные данные никогда не сохраняются в settings.json. Среда выполнения считывает их из переменной окружения, указанной в envKey.
Для получения полной схемы modelProviders и дополнительных параметров, таких как generationConfig, customHeaders и extra_body, см. Справочник настроек → modelProviders.
Шаг 2: Установка переменных окружения
Qwen Code считывает ключи API из переменных окружения (указанных в параметре envKey в конфигурации вашей модели). Существует несколько способов их предоставления, перечисленные ниже в порядке от самого высокого к самому низкому приоритету:
1. Окружение оболочки / export (наивысший приоритет)
Установите непосредственно в профиле вашей оболочки (~/.zshrc, ~/.bashrc и т.д.) или в строке перед запуском:
# Alibaba Dashscope
export DASHSCOPE_API_KEY="sk-..."
# OpenAI / совместимые с OpenAI
export OPENAI_API_KEY="sk-..."
# Anthropic
export ANTHROPIC_API_KEY="sk-ant-..."
# Google GenAI
```bash
export GEMINI_API_KEY="AIza..."2. Файлы .env
Qwen Code автоматически загружает первый найденный файл .env (переменные не объединяются из нескольких файлов). Загружаются только переменные, которые еще не присутствуют в process.env.
Порядок поиска (начиная с текущей директории и поднимаясь вверх к /):
.qwen/.env(предпочтительно — изолирует переменные Qwen Code от других инструментов).env
Если ничего не найдено, используется домашняя директория:
~/.qwen/.env~/.env
Рекомендуется использовать .qwen/.env вместо .env, чтобы избежать конфликтов с другими инструментами. Некоторые переменные (например, DEBUG и DEBUG_MODE) исключаются из файлов .env на уровне проекта, чтобы не мешать работе Qwen Code.
3. settings.json → поле env (наименьший приоритет)
Вы также можете определить переменные окружения непосредственно в ~/.qwen/settings.json под ключом env. Они загружаются как резервный вариант с наименьшим приоритетом — применяются только когда переменная еще не установлена системным окружением или файлами .env.
{
"env": {
"DASHSCOPE_API_KEY":"sk-...",
"OPENAI_API_KEY": "sk-...",
"ANTHROPIC_API_KEY": "sk-ant-...",
"GEMINI_API_KEY": "AIza..."
},
"modelProviders": {
...
}
}Это полезно, когда вы хотите хранить всю конфигурацию (провайдеры + учетные данные) в одном файле. Однако имейте в виду, что settings.json может быть общим или синхронизироваться — для чувствительных секретов предпочтительнее использовать файлы .env.
Сводка приоритетов:
| Приоритет | Источник | Поведение переопределения |
|---|---|---|
| 1 (высший) | Флаги CLI (--openai-api-key) | Всегда побеждает |
| 2 | Системное окружение (export, inline) | Переопределяет .env и settings.env |
| 3 | Файл .env | Устанавливает только если нет в системном окружении |
| 4 (низший) | settings.json → env | Устанавливает только если нет в системном окружении или .env |
Шаг 3: Переключение моделей с помощью /model
После запуска Qwen Code используйте команду /model, чтобы переключаться между всеми настроенными моделями. Модели группируются по протоколам:
/modelВ окне выбора будут отображены все модели из вашей конфигурации modelProviders, сгруппированные по их протоколу (например, openai, anthropic, gemini). Ваш выбор сохраняется между сессиями.
Вы также можете переключать модели напрямую с помощью аргумента командной строки, что удобно при работе в нескольких терминалах.
# В одном терминале
qwen --model "qwen3-coder-plus"
# В другом терминале
qwen --model "qwen3-coder-next"Примечания по безопасности
- Не добавляйте ключи API в систему контроля версий.
- Предпочтительно использовать
.qwen/.envдля локальных проектных секретов (и не добавляйте его в git). - Считайте вывод в терминал конфиденциальным, если он содержит учетные данные для проверки.