Загрузка...

SillyTavern через RouterAI: ролевой чат и любая модель без VPN

SillyTavern — open-source фронтенд для общения с LLM, ориентированный на ролевой чат: карточки персонажей, групповые чаты, персоны, World Info (лорбуки) и расширения вроде суммаризации, векторного хранилища чатов (RAG), перевода и озвучки. Своей модели в нём нет, нужен провайдер API. Через RouterAI к SillyTavern подключаются Claude, GPT, DeepSeek, Gemini и другие модели из каталога по одному ключу: работа из России без VPN, оплата в рублях. Приветственное окно предупреждает, что SillyTavern рассчитана на продвинутых пользователей, поэтому ниже всё расписано по шагам. Статья проверена на SillyTavern 1.19.0.

Требования

  • Node.js 20 или новее (по package.json репозитория) либо Docker.
  • Ключ RouterAI: создайте его в личном кабинете (раздел «Ключи API») и пополните баланс. Ключ показывается один раз.

Установка

Через git и Node.js

По документации для Linux и macOS нужны git и Node.js; релизная ветка ставится так:

git clone https://github.com/SillyTavern/SillyTavern -b release
cd SillyTavern
./start.sh

Установка для Windows описана в документации. Когда сервер запустится, откройте http://127.0.0.1:8000 (то же самое, что http://localhost:8000).

Через Docker

Готовый образ лежит в GitHub Container Registry: ghcr.io/sillytavern/sillytavern. По документации рекомендуется Docker Compose: скачайте docker-compose.yml из репозитория SillyTavern (папка docker) и запустите в каталоге с файлом:

docker compose up -d

Контейнер публикует порт 8000, а конфигурация, данные пользователя, плагины и расширения хранятся в каталогах config, data, plugins и extensions рядом с файлом: без этих томов настройки и персонажи пропадут вместе с контейнером. Интерфейс откроется на http://localhost:8000.

Приветственное окно SillyTavern при первом запуске: выбор языка интерфейса и имя персоны, кнопка «Сохранить»

Запуск на сервере

По умолчанию SillyTavern принимает соединения только с той же машины (listen: false, белый список адресов включён). Чтобы открыть доступ с другого устройства, по документации в config.yaml в корне установки нужно включить прослушивание и задать способ контроля доступа, иначе сервер не запустится:

listen: true
whitelist:
  - ::1
  - 127.0.0.1
  - 192.168.0.0/16

Вместо белого списка можно включить HTTP Basic Authentication (basicAuthMode: true и basicAuthUser с логином и паролем). В Docker те же параметры задаются переменными окружения с префиксом SILLYTAVERN_, например SILLYTAVERN_LISTEN=true, а массивы передаются JSON-строкой. Разработчики прямо предупреждают: не пробрасывайте порт в интернет, а используйте VPN или туннель (Cloudflare Zero Trust, ngrok, Tailscale) и не выставляйте сервер наружу без защиты.

Подключение к RouterAI

RouterAI предоставляет OpenAI-совместимый API, поэтому в SillyTavern используется источник Custom (OpenAI-compatible).

  1. Откройте панель API Connections: значок вилки в верхней панели.
  2. В списке «API» выберите Chat Completion (не Text Completion).
  3. В списке «Источник для Chat Completion» (Chat Completion Source) выберите Кастомный (совместимый с OpenAI), то есть Custom (OpenAI-compatible).
  4. В поле «Кастомный эндпоинт (базовый URL)» впишите https://routerai.ru/api/v1. Суффикс /chat/completions добавлять не нужно: подсказка в форме сообщает, что SillyTavern добавит его сама.
  5. В поле «Ключ от кастомного API» вставьте ключ RouterAI вида sk-xxxxxxxxxxxxxxxx (на кадрах ключ скрыт). В интерфейсе поле помечено «необязательно», но для RouterAI ключ нужен.
  6. Нажмите Подключиться (Connect). SillyTavern запросит у API список моделей и заполнит выпадающий список «Доступные модели» (Available Models); о том, что всё в порядке, говорит статус «Работает».
  7. Выберите модель в списке «Доступные модели», например anthropic/claude-sonnet-5.5. Если список не загрузился, id модели можно вписать вручную в поле «Введите идентификатор модели».

Панель API Connections после подключения к RouterAI: выбрана модель anthropic/claude-sonnet-5.5, статус «Работает»

После подключения SillyTavern запоминает ключ, он скрывается из поля. Кнопка «Тестовое сообщение» (Test Message) отправляет в модель короткий запрос и проверяет, что соединение работает. Если SillyTavern ошибочно предупреждает о неработающем эндпоинте, в «Доп. параметрах» есть опция Bypass API status check.

Профили соединения

Профили (Connection Profiles) встроены в SillyTavern с версии 1.12.6 и находятся в верхней части панели API Connections, в блоке «Профиль соединения». Они позволяют одним кликом переключаться между сохранёнными подключениями, например между дешёвой моделью для рутины и качественной для сцен, где важен характер персонажа.

Как сохранить два профиля:

  1. Подключите модель, которую хотите видеть «качественной», например anthropic/claude-sonnet-5.5.
  2. Нажмите кнопку «Создать» (иконка листа с плюсом) справа от списка профилей. Откроется окно «Создать профиль соединения» с отмеченными настройками: API, адрес сервера, пресет настроек, модель, пресет для прокси, стоп-строки, «Начинать ответ с», шаблон рассуждений, постобработка промпта и ключ. Клик по названию настройки исключает её из профиля.
  3. Введите имя, например «Качественный», и нажмите «Сохранить».
  4. Выберите в «Доступных моделях» дешёвую модель (например z-ai/glm-5.3-flash или deepseek/deepseek-v4.1-flash), создайте второй профиль и назовите его «Дешёвый».
  5. Переключайтесь между профилями выпадающим списком или командой /profile Дешёвый в чате.

Окно «Создать профиль соединения»: отмеченные настройки и поле «Введите название» (ключ закрашен)

Панель API Connections с выбранным профилем «Дешёвый» и моделью z-ai/glm-5.3-flash

Что важно знать, по документации:

  • профиль хранит выбор в выпадающих списках, а не сами пресеты. Если вы поменяли пресет и не сохранили его, при переключении профиля изменения потеряются;
  • для Chat Completion в профиль входят тип API, модель, адрес сервера, ключ, пресет настроек, пресет для прокси, стоп-строки, «Начинать ответ с», шаблон рассуждений и постобработка промпта. Системный промпт и токенизатор профиль сохраняет только для Text Completion;
  • кнопка «Обновить» записывает текущие настройки в выбранный профиль, «Перезагрузить» возвращает сохранённые. Ещё есть команды /profile-create, /profile-list, /profile-update.