Skip to content

Cloud LLM Providers

shaerware edited this page May 27, 2026 · 4 revisions

Cloud LLM Providers (Облачные провайдеры)

Настройка и использование облачных LLM провайдеров.

Workspace-фильтрация: Провайдеры фильтруются по workspace_id из JWT. CRUD-эндпоинты используют workspace_context() для изоляции данных между workspace. Системные методы (default provider, first enabled) остаются без фильтрации.

Поддерживаемые провайдеры

Провайдер Тип Бесплатные модели
OpenRouter Агрегатор ✅ Есть
Google Gemini Прямой
OpenAI Прямой
Anthropic Прямой
DeepSeek Прямой
Kimi (Moonshot) Прямой

OpenRouter

Описание

OpenRouter — агрегатор, предоставляющий доступ к множеству моделей через единый API. Используется в проекте как дефолтный бесплатный backend после окончания триала Claude: цепочка моделей от мощных к слабым, при недоступности первой (rate-limit или 5xx) — автоматический переход к следующей. Работа ассистента не прерывается.

Бесплатная цепочка по умолчанию (Май 2026)

В порядке от мощных к слабым — таким же его прописывает сидер scripts/seed_openrouter_provider.py:

# Модель ID
1 DeepSeek R1 (reasoning) deepseek/deepseek-r1:free
2 DeepSeek V3.1 (671B MoE) deepseek/deepseek-chat-v3.1:free
3 Llama 3.3 70B Instruct meta-llama/llama-3.3-70b-instruct:free
4 Qwen 2.5 72B Instruct (multilingual) qwen/qwen-2.5-72b-instruct:free
5 NVIDIA Nemotron 70B nvidia/llama-3.1-nemotron-70b-instruct:free
6 Gemini 2.0 Flash Experimental google/gemini-2.0-flash-exp:free
7 Llama 3.2 11B Vision Instruct meta-llama/llama-3.2-11b-vision-instruct:free
8 Mistral Nemo (12B) mistralai/mistral-nemo:free
9 Llama 3.1 8B Instruct meta-llama/llama-3.1-8b-instruct:free

Free-модели на OpenRouter приходят/уходят — переоценивай этот список раз в квартал.

Автоматический fallback

Триггеры переключения на следующую модель (в cloud_llm_service.py:_RETRIABLE_STATUSES):

HTTP Что значит
402 Payment Required — модель стала платной для текущего account tier
404 Not Found — модель удалена с OpenRouter
429 Rate-limit (free-модели ограничены ~20 req/min на аккаунт)
500, 502, 503 Серверная ошибка провайдера модели

fallback_models хранится в config провайдера (JSON), читается OpenAICompatibleProvider.__init__ и строит _model_chain = [primary] + fallback_models. При срабатывании retriable-кода переходим к следующей и так далее.

Настройка (сидер)

Идемпотентный одноразовый скрипт прописывает цепочку в БД и создаёт провайдер openrouter-default:

venv/bin/python scripts/seed_openrouter_provider.py

Что делает:

  • Создаёт CloudLLMProvider(id="openrouter-default", provider_type="openrouter", enabled=False) с цепочкой из 9 моделей в config.fallback_models
  • Если провайдер уже есть — только обновляет fallback_models + model_name, API key и флаги enabled / is_default сохраняет

После сидера остаётся:

  1. Зарегистрироваться на openrouter.ai, получить API key
  2. В админке /admin/llm вставить ключ в провайдер openrouter-default и включить
  3. Опционально — сделать default или выбрать в Telegram-ботах / виджетах через llm_backend = cloud:openrouter-default

Настройка вручную (без сидера)

  1. Зарегистрируйтесь на openrouter.ai
  2. Получите API ключ
  3. Создайте провайдера в админке:
    • Тип: OpenRouter
    • API Key: ваш ключ
    • Модель: первая из цепочки
    • В JSON config добавьте "fallback_models": [...] с нужным порядком

Google Gemini

Модели

Модель Контекст Скорость
gemini-2.0-flash 1M токенов Быстрая
gemini-2.5-pro 1M токенов Средняя

VLESS прокси

Для регионов с ограничениями доступа к Google API:

  1. В настройках провайдера найдите секцию "VLESS Proxy"
  2. Вставьте VLESS URL
  3. Протестируйте подключение
  4. Сохраните

Подробнее: VLESS-Proxy

Настройка

  1. Получите API ключ в Google AI Studio
  2. Создайте провайдера:
    • Тип: Gemini
    • API Key: ваш ключ
    • Модель: gemini-2.0-flash

OpenAI

Модели

Модель Описание
gpt-4o Флагманская модель
gpt-4o-mini Быстрая и дешёвая

Настройка

  1. Получите API ключ на platform.openai.com
  2. Создайте провайдера:
    • Тип: OpenAI
    • API Key: ваш ключ
    • Модель: gpt-4o-mini

Anthropic (Claude)

Модели

Модель Описание
claude-opus-4-7 Флагман (1M контекст) — лучшее качество reasoning
claude-sonnet-4-6 Баланс скорости и качества
claude-haiku-4-5 Быстрая и дешёвая

На триале новых пользователей по умолчанию работает именно Claude (Anthropic) — это основное УТП проекта.

Альтернатива: Claude Bridge (без API key)

Тип провайдера claude_bridge — использует локально установленный Claude Code CLI (через subprocess) вместо API Anthropic. Не требует API key, работает на учётке Claude CLI пользователя. Подробнее: Claude-Code.

Настройка

  1. Получите API ключ на console.anthropic.com
  2. Создайте провайдера:
    • Тип: Anthropic
    • API Key: ваш ключ
    • Модель: claude-sonnet-4-6 (универсальный выбор)

DeepSeek

Модели

Модель Описание
deepseek-chat Чат-модель
deepseek-coder Код и программирование

Настройка

  1. Получите API ключ на platform.deepseek.com
  2. Создайте провайдера с типом DeepSeek

Kimi (Moonshot)

Модели

Модель Контекст
kimi-k2 200K токенов
moonshot-v1-128k 128K токенов

Настройка

  1. Получите API ключ на platform.moonshot.cn
  2. Создайте провайдера с типом Kimi

Конфиденциальность данных

Внимание: При использовании любого облачного провайдера все данные из промптов передаются третьим лицам: системные инструкции, RAG-контекст из базы знаний, сообщения пользователей. При большом трафике провайдер со временем получит практически всю вашу базу данных через RAG-фрагменты. Подробнее: Data-Privacy

Если конфиденциальность данных критична (каталоги товаров, клиентская база, know-how), используйте локальный LLM (LLM_BACKEND=vllm).

Использование

В админ-панели

  1. Перейдите на вкладку LLM
  2. Выберите бэкенд "Cloud AI"
  3. Выберите провайдера из списка
  4. Провайдер будет использоваться для всех запросов

В чате

  1. В заголовке чата есть выпадающий список LLM
  2. Выберите конкретного провайдера
  3. Сообщения будут обрабатываться выбранным провайдером

В Telegram ботах

В настройках бота:

  • llm_backend: cloud:{provider_id}
  • Или выберите из выпадающего списка

VLESS-Proxy | API-Reference

Clone this wiki locally