SillyTavern с Zukko: подключение Claude и GPT через свой API
SillyTavern подключает сторонние API через источник Custom (OpenAI-compatible). Пошаговая настройка, расчёт стоимости длинных чатов и разбор ошибок.
5 мин · · разработка
SillyTavern — интерфейс для ролевых диалогов, интерактивных историй и работы с персонажами. Подключить в SillyTavern Claude и GPT через API можно с помощью источника Custom (OpenAI-compatible), и Zukko подключается именно так: адрес https://api.zukko.pro/v1 и ключ fetch_.... Ниже — настройка по официальной документации SillyTavern, параметры, от которых зависит стоимость, расчёт для длинных чатов и разбор ошибок.
Как подключить SillyTavern к Zukko
По документации SillyTavern подключение к OpenAI-совместимому API выглядит так:
- Откройте панель API Connections (значок вилки в верхнем меню).
- В поле API выберите Chat Completion.
- В поле Chat Completion Source выберите Custom (OpenAI-compatible).
- Укажите адрес эндпоинта:
https://api.zukko.pro/v1. - Введите API-ключ
fetch_.... - Выберите модель. Если API отдаёт список моделей через
/v1/models, SillyTavern покажет выпадающий список; Zukko этот список отдаёт. Модель можно и вписать вручную в текстовое поле. - Нажмите Connect, а затем Test Message, чтобы отправить пробное сообщение.
| Параметр | Значение |
|---|---|
| API | Chat Completion |
| Chat Completion Source | Custom (OpenAI-compatible) |
| Адрес эндпоинта | https://api.zukko.pro/v1 |
| API-ключ | fetch_ваш_ключ |
| Модель | claude-sonnet-5, gpt-5.6-sol, glm-5.3-flash и т.д. |
Документация SillyTavern прямо предупреждает: суффикс /chat/completions добавлять не нужно, а при проблемах с подключением стоит попробовать добавить /v1 в конец адреса. Для Zukko правильный адрес — ровно https://api.zukko.pro/v1. Опция Bypass API status check нужна для API, которые не отдают статус; с Zukko её можно не включать.
Актуальный список моделей — GET https://api.zukko.pro/v1/models (см. документацию по моделям) или страница «Модели» в кабинете.
Настройки, от которых зависит стоимость
В панели настроек ответа (AI Response Configuration) есть два главных параметра:
- Context (tokens) — сколько токенов SillyTavern отправляет модели в каждом запросе: карточка персонажа, системный промпт, история чата и прочее;
- Response (tokens) — максимальная длина ответа.
Главное, что нужно понимать: при каждой генерации SillyTavern заново отправляет весь контекст. Когда история чата заполнила окно Context, каждый запрос стоит примерно одинаково, и основная часть цены приходится на входные токены. Каждый свайп (повторная генерация ответа) — это отдельный полный запрос с тем же контекстом.
Расчёт стоимости длинного чата
Допустим, Context = 16 000 токенов и Response = 400. Когда окно заполнено, одна генерация — это 16 400 токенов:
| Модель | Цена вход / выход за 1M | Одна генерация | 200 генераций |
|---|---|---|---|
claude-opus-5-5, claude-sonnet-5, gpt-5.6-sol | $0.3 / $0.3 | 16 400 × 0.3 / 1 000 000 = $0.00492 | $0.984 |
gpt-5.6-luna, glm-5.3 | $0.1 / $0.1 | 16 400 × 0.1 / 1 000 000 = $0.00164 | $0.328 |
glm-5.3-flash | $0.04 / $0.04 | 16 400 × 0.04 / 1 000 000 = $0.000656 | $0.1312 |
Если увеличить Context до 32 000, одна генерация на claude-sonnet-5 будет стоить 32 400 × 0.3 / 1 000 000 = $0.00972, а 200 генераций — $1.944. Поэтому размер контекста — главный рычаг экономии: держите его таким, какой реально нужен персонажу и сюжету.
Оговорка про кэш. У вендоров повторно отправляемый контекст может читаться из кэша промптов примерно за 10% входной цены, а в Zukko кэшированные токены оплачиваются по обычной входной цене. В длинных чатах с большим повторяющимся контекстом реальная разница с официальными ценами поэтому меньше, чем при сравнении прайсов в лоб. Подробнее — в документации о лимитах ключей и кэше.
Temperature и Top P для моделей Claude
SillyTavern отправляет параметры сэмплирования с каждым запросом. Модели claude-sonnet-5 и claude-opus-5-5 могут отклонять запрос с ошибкой 400, если temperature отличается от 1, а top_p меньше 0.99. Для этих моделей оставьте Temperature = 1 и Top P = 1. Разнообразие ответов у Claude лучше регулировать промптом и карточкой персонажа. Для моделей GPT и GLM настраивайте сэмплеры как обычно и проверяйте результат на тестовых сообщениях.
Как выбрать модель
Какая модель лучше подходит для вашего стиля и персонажей, заранее сказать нельзя — проверьте сами. Возьмите одну карточку персонажа и 5–10 одинаковых стартовых ситуаций, прогоните их на двух-трёх моделях (модель можно переключать в API Connections и генерировать ответ заново) и сравните ответы. Расход по каждой модели видно в разделе «Использование» кабинета.
Частые ошибки
Подключение не устанавливается
Проверьте адрес: https://api.zukko.pro/v1, без /chat/completions на конце. Ключ должен начинаться с fetch_ и быть скопирован целиком.
400 на моделях Claude
Скорее всего, изменены Temperature или Top P. Верните Temperature = 1 и Top P = 1 (см. раздел выше).
Ошибка о формате сообщений
Некоторые API требуют, например, только одно системное сообщение или строгое чередование ролей. В SillyTavern для этого есть настройка Prompt Post-Processing с режимами от Merge до Single user message. Начните с наименее строгого режима.
401, 402, 403
401 — неверный ключ или ключ удалён в кабинете. 402 — закончился баланс. 403 model_not_allowed_for_key — модели нет в списке разрешённых для ключа.
413 или ответ обрезается
413 — запрос слишком большой: уменьшите Context. Если обрезается ответ, увеличьте Response (tokens).
Частые вопросы
Почему расход растёт, хотя я пишу короткие сообщения?
Цена определяется не длиной вашего сообщения, а всем контекстом, который уходит в каждом запросе: карточка, история, системный промпт. Короткая реплика в длинном чате стоит почти столько же, сколько длинная.
Можно ли переключать модели внутри одного чата?
Да, модель выбирается в API Connections и применяется к следующей генерации. История чата при этом сохраняется.
Как ограничить расходы?
Задайте ключу дневной и месячный лимит в кабинете: когда лимит исчерпан, запросы перестанут проходить. Дополнительно держите разумным Context (tokens) и следите за количеством свайпов.
Где взять ключ?
Создайте его в кабинете Zukko и вставьте в API Connections. Если вы впервые работаете с API, начните с быстрого старта.
zukko
Платите в 25×
меньше
за Claude Code & ChatGPT
Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.
Похожие статьи
- Промпт-инъекция: что это и как защитить бота и агентаОбъясняем, как работает промпт-инъекция через пользовательский ввод и чужие документы, и какие меры снижают ущерб: изоляция данных, права инструментов, лимиты ключа.
- Свой прокси к нейросети на Node.js: не показывать API-ключ во фронтендеНебольшой сервер на Express между вашим фронтендом и API нейросети: ключ остаётся на сервере, а модели, длина запроса и частота ограничены.
- DeepSeek API на Python: запросы, стриминг, JSON и обработка ошибокГотовый код для DeepSeek V4.1 Flash и V4 Pro на OpenAI SDK: запрос, стриминг, разбор JSON и аккуратная обработка ошибок.
- Промпт-инжиниринг: примеры и 12 готовых шаблонов для работыДвенадцать шаблонов промптов для рабочих задач: что в них написано, почему именно так и сколько стоит один вызов по API.