# AnythingLLM через RouterAI: приватный RAG-ассистент по своим документам

AnythingLLM — open-source приложение (лицензия MIT, около 67 тысяч звёзд на GitHub) для чата со своими документами: PDF, Word, текст и код загружаются в воркспейс, режутся на фрагменты, индексируются, а модель отвечает по найденным фрагментам и показывает источники. Через RouterAI к нему подключаются Claude, GPT, DeepSeek, Gemini и другие модели из [каталога](/models): работа из России без VPN, оплата в рублях, один ключ на все модели. Эмбеддинги для поиска по документам тоже можно взять у RouterAI. Статья проверена на AnythingLLM v1.18.0.

## Требования {#trebovaniya}

* AnythingLLM Desktop (Windows, macOS, Linux) или Docker для серверной установки; для Docker, по документации, нужно минимум 2 ГБ RAM.
* Ключ RouterAI: [создайте его в личном кабинете](https://routerai.ru/settings/keys) (раздел «Ключи API») и пополните баланс. Ключ показывается один раз.

## Установка {#ustanovka}

Есть два способа. По [сравнению в документации](https://docs.useanything.com/installation-desktop/overview), Desktop — для одного пользователя, ставится в один клик, интерфейс в приложении. Docker — для команды: мультипользовательский режим, права на воркспейсы, доступ из браузера, чат-виджеты для сайта.

**Desktop.** Скачайте установщик для своей системы на [anythingllm.com/desktop](https://anythingllm.com/desktop) и запустите приложение.

**Docker** (образ `mintplexlabs/anythingllm`, Linux/macOS):

```bash
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 и подробности — в [документации](https://docs.useanything.com/installation-docker/local-docker).

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/b09680090f44e70ccb1c23952cc379e9.png)

## Подключение к RouterAI {#podklyuchenie-k-routerai}

### LLM {#llm}

Откройте Settings → AI Providers → LLM Preference (в русском интерфейсе: «Поставщики ИИ» → «Предпочтение LLM»). В списке «Поставщик LLM» выберите **Generic OpenAI** — это провайдер для любого OpenAI-совместимого API. [Документация](https://docs.useanything.com/setup/llm-configuration/cloud/openai-generic) предупреждает, что он рассчитан на тех, кто понимает назначение каждого поля.

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/474a7725b4bf68a0063f04e0cb036f3d.png)

1. **Base URL** — `https://routerai.ru/api/v1`.
2. **API Key** — ваш ключ RouterAI вида `sk-xxxxxxxxxxxxxxxx` (на кадре и в примерах ниже показана заглушка).
3. **Selected Model** — id модели из каталога. Когда Base URL и ключ верны, AnythingLLM сам загружает список моделей RouterAI в выпадающий список. Если список не загрузился, поле превращается в текстовое: впишите id вручную, например `anthropic/claude-sonnet-5.5`.
4. **Model context window** — размер контекста модели в токенах. Для `anthropic/claude-sonnet-5.5` в каталоге указано 1 000 000.
5. **Max Tokens** — максимум токенов в одном ответе (по умолчанию 1024; для развёрнутых ответов по документам увеличьте, например, до 8192).

Поля 4 и 5 в форме обязательные, AnythingLLM не подставляет их сам, поэтому для моделей RouterAI их нужно задать вручную. Окно контекста смотрите в каталоге RouterAI, а не угадывайте. Сохраните настройки.

### Эмбеддинги {#embeddings}

Эмбеддинги превращают фрагменты документов в векторы для поиска. По умолчанию AnythingLLM использует встроенный движок (AnythingLLM Embedder), который работает локально. Можно взять модель эмбеддингов RouterAI: Settings → AI Providers → Embedder Preference («Настройки встраивания»), провайдер **Generic OpenAI**.

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/880c5475aaf82e839ed1601d1183e36c.png)

1. **Base URL** — `https://routerai.ru/api/v1`.
2. **Embedding Model** — `qwen/qwen3-embedding-8b` (в каталоге контекст 40 960) или `google/gemini-embedding-001` (20 000).
3. **Max embedding chunk length** — максимальная длина фрагмента в символах (в интерфейсе подсказка 8192).
4. **API Key** — ключ RouterAI (поле помечено optional, для RouterAI он нужен).

Оба id есть в каталоге, запрос к `/api/v1/embeddings` с `qwen/qwen3-embedding-8b` и `google/gemini-embedding-001` вернул векторы. Embedder задаётся для всей инсталляции, не для воркспейса. После смены эмбеддера документы нужно загрузить и проиндексировать заново, иначе поиск будет работать неверно, поэтому выберите вариант до загрузки документов.

## Документы, воркспейсы и цитаты {#dokumenty-i-citaty}

Воркспейс — отдельное пространство со своими документами, настройками и историей. Модель видит только документы, добавленные в воркспейс.

1. Нажмите «Загрузить документ» (Upload a document) и выберите файлы.
2. Перенесите их в воркспейс (Move to Workspace) и нажмите Save and Embed. Документ разбивается на фрагменты, и они отправляются эмбеддеру.
3. Задайте вопрос в чате. AnythingLLM находит близкие фрагменты и передаёт их модели. Под ответом появляется список «Источники» (Citations) с файлами, из которых взяты фрагменты.

Режим выбирается в настройках воркспейса (значок шестерёнки, вкладка Chat Settings) — [описание режимов](https://docs.useanything.com/features/chat-modes):

| Режим | Что делает                                                                  |
| ----- | --------------------------------------------------------------------------- |
| Query | Отвечает только по вашим документам; если ничего не нашёл, сообщает об этом |
| Chat  | Использует и документы, и общие знания модели                               |
| Agent | Сам вызывает навыки и инструменты (по умолчанию для новых воркспейсов)      |

Если в Query приходит ответ «No relevant information found», откройте Vector Database Settings воркспейса и смягчите «Document similarity threshold» (вплоть до No restriction) или перефразируйте вопрос словами из документа.

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/a2854b695499bba6eaf6cced8b050e91.png)

## Агенты и Model Router {#agenty-i-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») описываются обычным текстом («вопросы про договоры и юридические темы») и добавляют один вызов модели на сообщение.

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/182130be536d9840fffe7a185b720812.png)

Правила открываются из списка роутеров (нажмите на число в колонке «Правила»), новое правило добавляется кнопкой «Новое правило» (в списке — «Добавить правило»). В правиле задаются заголовок, тип, условие и поставщик с моделью, куда направить сообщение.

Пример: простые вопросы идут в `anthropic/claude-haiku-5.5`, а сообщения со словами «договор, юридический, пункт» — в `anthropic/claude-sonnet-5.5`. Созданный роутер появляется в списке провайдеров как **Model Router**: выберите его в LLM Preference или в настройках воркспейса. Над каждым ответом показан бейдж с моделью и правилом. Подробности — в [документации](https://docs.useanything.com/model-router/setup).

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/eeb14a905ddbce7bc4071e51e8d6943a.png)

## Приватность {#privacy}

Документы, векторная база (по умолчанию LanceDB) и история чатов хранятся в вашей инсталляции: в каталоге Desktop или в томе `/app/server/storage` контейнера. Что уходит наружу:

* при чате в RouterAI отправляются вопрос, история и найденные фрагменты документов;
* при эмбеддингах через RouterAI в API отправляются фрагменты документов при индексации. Если этого нужно избежать, оставьте встроенный AnythingLLM Embedder: в мастере первого запуска для него написано, что текст документов обрабатывается приватно на вашей инсталляции;
* анонимную телеметрию AnythingLLM можно отключить в настройках или переменной `DISABLE_TELEMETRY="true"`.

Чтобы полностью стереть документ, удалите его из My Documents: из воркспейса удаляются только векторы.

![1.00](https://b51bc417-3ee0-451a-a83b-8a681d027a96.selstorage.ru/public/96352d35d3411b65902727e91b597824.png)

## Выбор модели {#vybor-modeli}

| Модель                          | Контекст (каталог) | Для чего                                |
| ------------------------------- | ------------------ | --------------------------------------- |
| `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          | Длинные документы и сложные вопросы     |

Цены в рублях — в [каталоге моделей](/models).

## Проверка подключения {#proverka}

Загрузите небольшой документ, добавьте его в воркспейс и задайте вопрос, ответ на который есть только в нём. Внизу ответа должны быть имя модели и список «Источники». На проверочном проекте с тремя файлами `anthropic/claude-sonnet-5.5` ответил верно и перечислил все три документа как источники. Быстрая проверка ключа без интерфейса:

```bash
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":"Привет"}]}'
```

## Решение проблем {#problemy}

* **Список моделей пуст, поле 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. Если нативные вызовы инструментов у провайдера ведут себя неверно, в [документации](https://docs.useanything.com/features/chat-modes) описана переменная `PROVIDER_DISABLE_NATIVE_TOOL_CALLING`.

## Что дальше {#chto-dalshe}

* [Каталог моделей RouterAI](/models) — id, контекст и цены.
* [Open WebUI через RouterAI](/pages/open-webui-routerai) и [LibreChat через RouterAI](/pages/librechat-routerai) — другие self-hosted чаты.
* [Flowise через RouterAI](/pages/flowise-routerai) — RAG-цепочки без кода.
* [Cherry Studio через RouterAI](/pages/cherry-studio-routerai) — десктопный клиент.
* [Репозиторий AnythingLLM](https://github.com/Mintplex-Labs/anything-llm) и [документация](https://docs.useanything.com/).
