Подключение SillyTavern к vLLM и OpenAI-совместимому API

OpenAI-совместимый API описывает формат запросов; это не означает, что модель предоставлена OpenAI. SillyTavern умеет работать с custom endpoint для Chat Completion. Здесь нужен уже запущенный vLLM с доступным API, моделью и, если настроена авторизация, API-ключом.

Выберите endpoint

Для собственной модели используйте руководство по vLLM на арендованном GPU. Установка сервера и настройка доступа описаны там; ради подключения нового клиента не запускайте второй vLLM на той же видеокарте.

Существующее приложение coding-agent тоже выдаёт endpoint vLLM. Текущий пресет обслуживает qwen2.5-coder-32b — модель для программирования. Это доступный вариант проверки подключения, не специальный roleplay-пресет и не новый выбор моделей в кабинете. Используйте имя, которое действительно указано у вашего инстанса.

Для ручного сервера с доступом только через SSH пробросьте API-порт по инструкции установки и используйте локальный URL туннеля. Для готового HTTPS endpoint скопируйте адрес и ключ из параметров подключения. У сторонних managed API свои модели, тарификация и хранение данных; это отдельная услуга, не аренда GPU.

Проверьте три значения

Значение Что это Частая ошибка
Base URL Префикс API, например https://YOUR_ENDPOINT/v1Адрес кабинета или полный путь /chat/completions
API key Ключ именно этого endpoint Пароль от сайта или ключ другого сервиса
Model ID Точное имя из ответа /modelsНазвание репозитория Hugging Face вместо alias, заданного сервером

Добавляйте /v1, только если его ещё нет в предоставленном базовом URL. Не отправляйте настоящий ключ на адрес-заглушку из примера.

Сначала метаданные, затем генерация

Скачайте check-connection.py и запустите через Python 3.10+ на компьютере с SillyTavern. До выполнения замените URL-заглушку. При вводе ключа символы не отображаются:

python check-connection.py --base-url https://YOUR_ENDPOINT/v1 --ask-key

Команда получает список моделей без генерации. Скопируйте точный ID из результата и явно запустите:

python check-connection.py --base-url https://YOUR_ENDPOINT/v1 --ask-key --model YOUR_SERVED_MODEL_ID --generate

Вторая команда отправляет одну настоящую генерацию без streaming, запрашивая не более 64 выходных токенов. Повторных попыток нет; таймаут не гарантирует остановку обработки на сервере. Перед ручным повтором проверьте backend. Ключ также можно передать через CHAT_API_KEY; скрипт не принимает его аргументом командной строки, не следует редиректам и не выводит сырые ответы с ошибками. Переменные HTTP-прокси игнорируются: нужен прямой endpoint или SSH-туннель.

Настройте SillyTavern

Выберите Chat Completion → Custom (OpenAI-compatible). Введите тот же базовый URL, API-ключ и ID модели. Оставьте проверку статуса включённой. Начните с обычного текста без tools, изображений и дополнительных параметров тела запроса. Затем отдельно проверьте streaming в клиенте: скачиваемый скрипт не тестирует потоковые ответы и весь браузерный сценарий.

Если сервер сообщает об отсутствии chat template, проверьте модель и конфигурацию vLLM. В Chat Completion шаблон ролей применяет backend; instruct-пресет для Text Completion в SillyTavern не исправляет отсутствующий шаблон сервера. Используйте рекомендованный шаблон именно этой модели, а не другого семейства.

Контекст и хранение

Сумма входа и ответа должна помещаться в настроенный предел сервера. Размер контекста в model card может быть больше лимита работающего vLLM. Начните с короткого диалога и умеренной длины ответа; перед увеличением прочитайте распределение контекста.

История хранится в локальном SillyTavern, а API получает сообщения, включённые в очередной запрос. Существующий coding-agent использует сторонний HTTPS-туннель, поэтому такой путь нельзя описывать как передачу без посредников. Адрес может измениться вместе с инстансом: обновляйте подключение и удаляйте неиспользуемые ключи.

Источники: custom endpoint SillyTavern, документация сервера vLLM. Далее — выбор модели и резервные копии.

Все руководства по персональному чату.

Готовы запустить?

Запустить GPU-сервер