Этот fork подготовлен под практичный сценарий для видео и демонстраций:
- синхронизация актуального списка моделей Qwen Chat (
qwen3.7-max,qwen3.7-plus,qwen3.6-plus); - локальный OpenAI-совместимый эндпоинт для SDK, Hermes Agent, Open WebUI и LiteLLM;
- быстрая smoke-проверка, чтобы перед записью не гадать, жив ли прокси.
npm install
npm run authНе публикуйте session/, cookies и файлы с токенами.
npm run models:syncКоманда читает публичные prerendered-метаданные моделей с https://chat.qwen.ai/, объединяет их с src/AvailableModels.txt и записывает отчёт сюда:
docs/QWEN_CHAT_MODELS.md
SKIP_ACCOUNT_MENU=true npm startЭндпоинт:
http://localhost:3264/api
В другом терминале:
npm run smokeМодель для проверки по умолчанию:
qwen3.7-max
Можно заменить:
QWEN_PROXY_SMOKE_MODEL=qwen3.7-plus npm run smokecurl http://localhost:3264/api/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.7-max",
"messages": [
{"role": "user", "content": "Ответь одним предложением: что такое локальный endpoint?"}
],
"stream": false
}'custom_providers:
- name: qwen-free
base_url: http://localhost:3264/api
model: qwen3.7-max
api_key: dummy-keyЗапуск:
hermes chat --provider custom:qwen-free --model qwen3.7-maxClaude Code ожидает Anthropic Messages API, а этот прокси отдаёт OpenAI Chat Completions. Используйте LiteLLM как мост:
model_list:
- model_name: qwen3.7-max
litellm_params:
model: openai/qwen3.7-max
api_base: http://localhost:3264/api
api_key: dummy-key
general_settings:
master_key: ***Запустите LiteLLM:
litellm --config qwen_litellm.yaml --host 127.0.0.1 --port 4000Запустите Claude Code:
export ANTHROPIC_BASE_URL="http://127.0.0.1:4000"
export ANTHROPIC_AUTH_TOKEN="***"
export CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1
claude --model qwen3.7-maxМожно говорить так:
Это не локальная модель, которая работает на вашей видеокарте. Это локальный OpenAI-совместимый прокси к Qwen Chat — удобно для экспериментов с AI-агентами и локальными инструментами.
Не обещайте production-стабильность: лимиты Qwen Chat, срок жизни токенов, состояние аккаунта и совместимость API могут меняться.