Ключевые моменты
- Используйте Chat Completion, источник Custom (OpenAI-compatible), эндпоинт https://api.ornith.top/v1, ID модели uncensored.
- Сначала протестируйте ключ с помощью curl, чтобы отличить проблему с ключом от проблемы с настройкой SillyTavern.
- Установите размер контекста в соответствии с вашими чатами; модель поддерживает до 100 000 токенов.
- Групповые чаты могут отправлять несколько запросов одновременно, что пробный ключ ограничивает до 2.
Что вам нужно перед началом
Вам нужны три вещи: установленный SillyTavern, API-ключ и данные эндпоинта. SillyTavern — это самохостинговый чат-интерфейс для диалогов с персонажами и ролевых игр, и он может работать с любым сервисом, поддерживающим формат чата OpenAI. Этот сайт предоставляет такой сервис для законного использования взрослыми: художественная литература, ролевые игры и приложения-компаньоны для взрослых. Он не будет генерировать сексуальный контент с участием несовершеннолетних, и никакие настройки этого не меняют.
Соберите эти значения:
- Базовый URL:
https://api.ornith.top/v1 - Идентификатор модели:
uncensored - API-ключ: создается на странице API-ключей после входа через Google или по электронной почте и паролю.
Новые аккаунты могут получить $0,50 пробного кредита в один клик на этой странице. Карта не нужна, выдаётся один раз на человека и действует 7 дней. Этого достаточно для тестирования карточки персонажа, так как один ход чата стоит доли цента (расчёты приведены ниже).
Сначала протестируйте ключ с помощью curl
Прежде чем настраивать SillyTavern, отправьте один запрос из терминала. Если он работает, любая последующая ошибка — в настройках интерфейса; если не работает, проблема в ключе или сети.
curl https://api.ornith.top/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Say hello in one short sentence."}]
}'
Вы должны получить JSON с массивом choices. Также посмотрите на заголовки ответа: X-Balance-USD показывает ваш оставшийся баланс, а X-Request-Id — это то, что нужно указать при обращении в поддержку. Вы также можете получить список моделей с помощью GET /v1/models:
curl https://api.ornith.top/v1/models \
-H "Authorization: Bearer $API_KEY"
Список показывает ID модели для использования в SillyTavern, который равен uncensored.
Подключение SillyTavern шаг за шагом
- Откройте SillyTavern и нажмите на значок штекера вверху, чтобы открыть API Connections.
- В выпадающем списке API выберите Chat Completion.
- В выпадающем списке Chat Completion Source выберите Custom (OpenAI-compatible).
- В поле Custom Endpoint (Base URL) введите
https://api.ornith.top/v1. Остановитесь на/v1. Не добавляйте/chat/completions, так как клиентское приложение добавит этот путь само. - Вставьте ваш ключ в поле Custom API Key.
- В поле Model ID введите
uncensored. - Нажмите Подключить. Зелёный статус с именем модели означает успешное рукопожатие.
Названия в меню немного меняются от версии к версии, поэтому если название отличается в вашей версии, ищите тот же смысл: пользовательский источник, совместимый с OpenAI, поле эндпоинта, поле ключа и поле модели. Если подключение не удалось, повторите тест curl. Ошибка аутентификации от curl означает, что ключ неверный; работающий curl с ошибкой подключения обычно означает опечатку в URL, например, пропущенный /v1 или лишний путь в конце.
После подключения откройте любую карточку персонажа и отправьте сообщение. Если вы видите ответ, интеграция работает. Остальное — настройка.
Настройки, важные для ролевой игры
Размер контекста
Модель имеет контекстное окно на 100 000 токенов, считая промпт и ответ вместе. В SillyTavern ползунок размера контекста управляет тем, сколько истории, карточки персонажа и текста из книги лора отправляется каждый ход. Большее значение означает, что персонаж помнит больше, а каждый запрос стоит дороже, так как вы платите за входные токены каждый ход. Хорошая начальная точка — умеренное значение от 16 000 до 32 000 токенов, увеличиваемое только если ваши чаты достаточно длинные, чтобы требовать этого. Настройка длины ответа соответствует max_tokens, что является опциональным параметром в этом API; установите значение, если хотите более короткие ответы.
Потоковая передача
Включите потоковую передачу в настройках Chat Completion. API поддерживает SSE с stream: true, поэтому текст появляется по мере генерации, и вы можете остановить плохой ответ раньше. Данные об использовании передаются в конце потока.
Сэмплирование
Temperature, top_p, стоп-последовательности, seed и штрафы за частоту и присутствие передаются модели. Для творческого чата температура около 0,8–1,0 с top_p около 0,9 является распространенной начальной точкой. Если ответы получаются расплывчатыми или повторяются, немного снизьте температуру и добавьте небольшой штраф за частоту. Изменяйте по одному параметру за раз, чтобы видеть его эффект.
Ваш системный промпт и карточка
Модель настроена так, чтобы отвечать без отказов по контенту, поэтому качество сцены зависит от вашего промпта и карточки персонажа. Чёткая роль, сеттинг, тон и несколько примерных реплик диалога дают больше, чем любая настройка сэмплирования. Если вы пишете для взрослой аудитории, убедитесь, что сеттинг явно указывает на возраст: каждый персонаж должен быть взрослым.
Во сколько обходится сообщение: расчёт
Цены: $0,15 за 1M входных токенов и $0,50 за 1M выходных токенов, списывается с предоплаченного баланса без подписки. Поскольку SillyTavern отправляет карточку и историю каждый ход, входные данные преобладают.
Предположим, ход чата отправляет 6 000 токенов контекста и получает 400 токенов обратно:
- Вход: 6 000 по $0,15 за 1M составляет $0,0009.
- Выход: 400 по $0,50 за 1M составляет $0,0002.
- Итого: $0,0011 за ход.
Сессия на 200 ходов стоит $0,22. Пробного баланса $0,50 хватит примерно на 450 таких ходов. Неудачные или отклонённые запросы не оплачиваются. При пополнении баланса подходят любые суммы от $20 до $500, с +5% от $50, +10% от $100 и +15% от $200, картой (Visa, Mastercard, Apple Pay, Google Pay) или криптовалютой (USDT на TRC20, USDC на Base). Баланс не сгорает. На странице тарифов есть подробности.
Исправление распространенных ошибок
| Симптом | Вероятная причина | Исправление |
|---|---|---|
| Подключение не удается сразу | Неверный базовый URL или ключ | Используйте https://api.ornith.top/v1 без завершающего пути; повторите тест curl |
HTTP 429, код rate_limited | Слишком много запросов в минуту | Замедлитесь; пробные ключи позволяют 60 в минуту, полные ключи — 300 |
HTTP 429, код concurrency | Слишком много запросов одновременно | Подождите, пока завершится текущий ответ; пробные ключи позволяют 2 одновременных запроса, полные ключи — 8 |
HTTP 429 с Retry-After: 5 | Временная перегрузка | Повторите попытку через 5 секунд |
| Запрос слишком большой | Тело запроса более 8 МБ | Снизьте размер контекста или сократите лорбук |
| Контекст слишком длинный | Промпт плюс ответ более 100 000 токенов | Снизьте размер контекста или длину ответа |
Одна деталь, которая часто ловит пользователей в групповых чатах и при использовании функций, выполняющих фоновые вызовы: потоковый запрос удерживает слот параллельных запросов до конца потока. Если SillyTavern отправляет ответ, сводку и задание по описанию изображения одновременно, пробный ключ с 2 слотами отклонит третий. Полный ключ позволяет 8. Отключите ненужные дополнительные функции или распределите их по времени.
По всем параметрам и точным структурам ошибок читайте документацию API.
