Подключение 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-сервер