AnythingLLM через RouterAI: приватный RAG-ассистент по своим документам
AnythingLLM — open-source приложение (лицензия MIT, около 67 тысяч звёзд на GitHub) для чата со своими документами: PDF, Word, текст и код загружаются в воркспейс, режутся на фрагменты, индексируются, а модель отвечает по найденным фрагментам и показывает источники. Через RouterAI к нему подключаются Claude, GPT, DeepSeek, Gemini и другие модели из каталога: работа из России без VPN, оплата в рублях, один ключ на все модели. Эмбеддинги для поиска по документам тоже можно взять у RouterAI. Статья проверена на AnythingLLM v1.18.0.
Требования
- AnythingLLM Desktop (Windows, macOS, Linux) или Docker для серверной установки; для Docker, по документации, нужно минимум 2 ГБ RAM.
- Ключ RouterAI: создайте его в личном кабинете (раздел «Ключи API») и пополните баланс. Ключ показывается один раз.
Установка
Есть два способа. По сравнению в документации, Desktop — для одного пользователя, ставится в один клик, интерфейс в приложении. Docker — для команды: мультипользовательский режим, права на воркспейсы, доступ из браузера, чат-виджеты для сайта.
Desktop. Скачайте установщик для своей системы на anythingllm.com/desktop и запустите приложение.
Docker (образ mintplexlabs/anythingllm, Linux/macOS):
docker pull mintplexlabs/anythingllm
export STORAGE_LOCATION=$HOME/anythingllm && \
mkdir -p $STORAGE_LOCATION && \
touch "$STORAGE_LOCATION/.env" && \
docker run -d --rm -p 3001:3001 \
--cap-add SYS_ADMIN \
-v ${STORAGE_LOCATION}:/app/server/storage \
-v ${STORAGE_LOCATION}/.env:/app/server/.env \
-e STORAGE_DIR="/app/server/storage" \
mintplexlabs/anythingllm
Без -v данные пропадут при перезапуске контейнера. Откройте http://localhost:3001: запустится мастер первого запуска, в котором уже можно выбрать LLM-провайдера. Команда для Windows и подробности — в документации.

Подключение к RouterAI
LLM
Откройте Settings → AI Providers → LLM Preference (в русском интерфейсе: «Поставщики ИИ» → «Предпочтение LLM»). В списке «Поставщик LLM» выберите Generic OpenAI — это провайдер для любого OpenAI-совместимого API. Документация предупреждает, что он рассчитан на тех, кто понимает назначение каждого поля.

-
Base URL —
https://routerai.ru/api/v1. -
API Key — ваш ключ RouterAI вида
sk-xxxxxxxxxxxxxxxx(на кадре и в примерах ниже показана заглушка). -
Selected Model — id модели из каталога. Когда Base URL и ключ верны, AnythingLLM сам загружает список моделей RouterAI в выпадающий список. Если список не загрузился, поле превращается в текстовое: впишите id вручную, например
anthropic/claude-sonnet-5.5. -
Model context window — размер контекста модели в токенах. Для
anthropic/claude-sonnet-5.5в каталоге указано 1 000 000. - Max Tokens — максимум токенов в одном ответе (по умолчанию 1024; для развёрнутых ответов по документам увеличьте, например, до 8192).
Поля 4 и 5 в форме обязательные, AnythingLLM не подставляет их сам, поэтому для моделей RouterAI их нужно задать вручную. Окно контекста смотрите в каталоге RouterAI, а не угадывайте. Сохраните настройки.
Эмбеддинги
Эмбеддинги превращают фрагменты документов в векторы для поиска. По умолчанию AnythingLLM использует встроенный движок (AnythingLLM Embedder), который работает локально. Можно взять модель эмбеддингов RouterAI: Settings → AI Providers → Embedder Preference («Настройки встраивания»), провайдер Generic OpenAI.

-
Base URL —
https://routerai.ru/api/v1. -
Embedding Model —
qwen/qwen3-embedding-8b(в каталоге контекст 40 960) илиgoogle/gemini-embedding-001(20 000). - Max embedding chunk length — максимальная длина фрагмента в символах (в интерфейсе подсказка 8192).
- API Key — ключ RouterAI (поле помечено optional, для RouterAI он нужен).
Оба id есть в каталоге, запрос к /api/v1/embeddings с qwen/qwen3-embedding-8b и google/gemini-embedding-001 вернул векторы. Embedder задаётся для всей инсталляции, не для воркспейса. После смены эмбеддера документы нужно загрузить и проиндексировать заново, иначе поиск будет работать неверно, поэтому выберите вариант до загрузки документов.
Документы, воркспейсы и цитаты
Воркспейс — отдельное пространство со своими документами, настройками и историей. Модель видит только документы, добавленные в воркспейс.
- Нажмите «Загрузить документ» (Upload a document) и выберите файлы.
- Перенесите их в воркспейс (Move to Workspace) и нажмите Save and Embed. Документ разбивается на фрагменты, и они отправляются эмбеддеру.
- Задайте вопрос в чате. AnythingLLM находит близкие фрагменты и передаёт их модели. Под ответом появляется список «Источники» (Citations) с файлами, из которых взяты фрагменты.
Режим выбирается в настройках воркспейса (значок шестерёнки, вкладка Chat Settings) — описание режимов:
| Режим | Что делает |
|---|---|
| Query | Отвечает только по вашим документам; если ничего не нашёл, сообщает об этом |
| Chat | Использует и документы, и общие знания модели |
| Agent | Сам вызывает навыки и инструменты (по умолчанию для новых воркспейсов) |
Если в Query приходит ответ «No relevant information found», откройте Vector Database Settings воркспейса и смягчите «Document similarity threshold» (вплоть до No restriction) или перефразируйте вопрос словами из документа.

Агенты и Model Router
В режиме Agent модель сама выбирает навыки: поиск по документам, веб-браузинг, SQL, работа с файлами. Набор настраивается в Settings → Agent Skills, а модель для агента можно задать отдельно в настройках воркспейса. Агенты полностью зависят от способности модели вызывать инструменты (tool calling), поэтому для агентных сценариев берите модели с хорошей поддержкой вызова инструментов (см. «Решение проблем»).
Model Router (с версии 1.13.0, Settings → AI Providers → Model Router; в русском интерфейсе пункт называется «Примерный маршрутизатор», а страница — «Модели маршрутизаторов») разводит дешёвые и дорогие модели внутри одного воркспейса. Новый роутер создаётся кнопкой «Новый роутер» (New Router). Роутер состоит из:
-
Fallback Provider & Model («Основной поставщик и модель») — модель по умолчанию; она же классифицирует запросы для LLM-правил, поэтому берите быструю и дешёвую, например
anthropic/claude-haiku-5.5; - Cache Cooldown (seconds) («Время перезагрузки кэша (секунды)», по умолчанию 300) — как долго решение о маршруте запоминается в разговоре (0 — проверять каждое сообщение);
- правил, которые проверяются сверху вниз, первое совпавшее срабатывает. Calculated-правила («Рассчитано») смотрят на само сообщение (например, Prompt Content contains) и не вызывают модель. LLM Classified-правила («Классифицированный LLM») описываются обычным текстом («вопросы про договоры и юридические темы») и добавляют один вызов модели на сообщение.

Правила открываются из списка роутеров (нажмите на число в колонке «Правила»), новое правило добавляется кнопкой «Новое правило» (в списке — «Добавить правило»). В правиле задаются заголовок, тип, условие и поставщик с моделью, куда направить сообщение.
Пример: простые вопросы идут в anthropic/claude-haiku-5.5, а сообщения со словами «договор, юридический, пункт» — в anthropic/claude-sonnet-5.5. Созданный роутер появляется в списке провайдеров как Model Router: выберите его в LLM Preference или в настройках воркспейса. Над каждым ответом показан бейдж с моделью и правилом. Подробности — в документации.

Приватность
Документы, векторная база (по умолчанию LanceDB) и история чатов хранятся в вашей инсталляции: в каталоге Desktop или в томе /app/server/storage контейнера. Что уходит наружу:
- при чате в RouterAI отправляются вопрос, история и найденные фрагменты документов;
- при эмбеддингах через RouterAI в API отправляются фрагменты документов при индексации. Если этого нужно избежать, оставьте встроенный AnythingLLM Embedder: в мастере первого запуска для него написано, что текст документов обрабатывается приватно на вашей инсталляции;
- анонимную телеметрию AnythingLLM можно отключить в настройках или переменной
DISABLE_TELEMETRY="true".
Чтобы полностью стереть документ, удалите его из My Documents: из воркспейса удаляются только векторы.

Выбор модели
| Модель | Контекст (каталог) | Для чего |
|---|---|---|
anthropic/claude-sonnet-5.5 |
1 000 000 | Основная: ответы по документам, агенты |
anthropic/claude-haiku-5.5 |
1 000 000 | Быстрые ответы, fallback-модель роутера |
deepseek/deepseek-v4-flash |
1 048 576 | Дешёвые массовые вопросы |
openai/gpt-5.4-mini |
400 000 | Универсальные задачи, компактная модель |
google/gemini-3.1-pro-preview |
1 048 576 | Длинные документы и сложные вопросы |
Цены в рублях — в каталоге моделей.
Проверка подключения
Загрузите небольшой документ, добавьте его в воркспейс и задайте вопрос, ответ на который есть только в нём. Внизу ответа должны быть имя модели и список «Источники». На проверочном проекте с тремя файлами anthropic/claude-sonnet-5.5 ответил верно и перечислил все три документа как источники. Быстрая проверка ключа без интерфейса:
curl https://routerai.ru/api/v1/chat/completions \
-H "Authorization: Bearer sk-xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"model":"anthropic/claude-sonnet-5.5","messages":[{"role":"user","content":"Привет"}]}'
Решение проблем
-
Список моделей пуст, поле Selected Model текстовое. Проверьте, что Base URL —
https://routerai.ru/api/v1(с/v1, без/chat/completions) и ключ введён без пробелов. Можно вписать id вручную. - Ошибка авторизации (401). Неверный ключ или нулевой баланс: проверьте их в личном кабинете RouterAI.
- Query отвечает «No relevant information found». Снизьте порог «Document similarity threshold» в Vector Database Settings воркспейса, задайте вопрос словами из документа.
- Поиск перестал находить документы после смены эмбеддера. Векторы старой и новой моделей несовместимы: удалите документы из воркспейса и проиндексируйте их заново.
-
Агент не использует навыки. Модель плохо вызывает инструменты: смените её на модель с надёжным tool calling. Если нативные вызовы инструментов у провайдера ведут себя неверно, в документации описана переменная
PROVIDER_DISABLE_NATIVE_TOOL_CALLING.
Что дальше
- Каталог моделей RouterAI — id, контекст и цены.
- Open WebUI через RouterAI и LibreChat через RouterAI — другие self-hosted чаты.
- Flowise через RouterAI — RAG-цепочки без кода.
- Cherry Studio через RouterAI — десктопный клиент.
- Репозиторий AnythingLLM и документация.