October 9

SillyTavern Setup Guide (kinda..) v0.2

Плейлист, под который это все писалось
(200 треков только показывает, через встроенный в ТГ браузер вряд ли будет работать; и сразу VPN включайте если слушать будете)

Моя мусорка в ТГ:
https://t.me/+LjmOBBF055RmNTky

Так-так.. Писать буду наверное в формате размышлений, без тугодумий по поводу оформления, мне так проще будет.
И сразу скажу - прям супер разжевывать не буду (только если в шутку), надоест писать быстро, СДВГ, все дела.. Так что, если будут вопросы - @qwertyplop, или где меня еще найдете.


Ну, начнем наверное с того, что вообще такое этот ваш "Great and Powerful" SillyTavern (Таверна) - это, по сути, фронт, обложка, видимая часть сайта, если хотите.
Фронтов много, Janitor (буду Jan использовать для сравнения, ибо большинство им и пользуется), например, один из них.
Что отличает Таверну от подавляющего большинства фронтов? Как бы это описать.. Свобода, от оков, от ограничений.. Что-то такое. Очень много всего можно сделать, используя Таверну, инструменты все предоставлены, здесь все будет зависеть только от ваших личных умений A) Находить информацию, Б) Думать самостоятельно - Таверна точно НЕ подойдет для тех, кто не хочет особо париться (только если у вас и потребности тоже невысокие, знай себе пишет, и ладно).

Что конкретно, а то это пресловутое "всё" ничего не объясняет. Так, нуу..
Перечислю, что вспомню и что сам при желании смогу сделать - генерация изображений прямо в чате, генерация скриптов, сайтов/страничек, симуляция выборов/исходов/вероятностей и подобных, озвучка реплик/текста (вполне может быть даже и поролевая, тут надо повспоминать), вставка сообщений за кого бы то ни было (за себя, за бота, системные сообщения,..), групповые чаты (несколько персонажей сразу), симуляция визуальных новелл(вытекает из верхних конечно, тем не менее), ведение сюжета (выставление глобальных целей), экономия на платных моделях (кэширование), 1001 способ создания памяти для бота.. И туда дальше

А, ну и конечно, некоторые прокси могут не работать Janitor, но спокойно в Таверне (наоборот, из моего понимания, быть не может) - конкретные примеры:
1)оф. API LongCat не работает на Janitor (либо я не допер, как я его только не пихал, он квадратный видимо, в круглую дырку не лезет)
2)Локальные модели (запущенные на компе/телефоне непосредственно) намного проще загнать в Таверну, чем куда то на сайт (но возможно).


Так, с тем, что это, somewhat разобрались, теперь к тому, как мы это ставить будем. Буду наверное по этапам делить, мб потом еще прикручу план, чтобы ориентироваться.

1. Installation (First step is always the hardest):

Устройств у нас 3 вида получается - ПК, Андроид, iOS (iOS по большей части это "Остальные", потому как напрямую сделать.. Ну не также просто, а остальные способы подойдут любому устройству с доступом к браузеру)
По этому, буду писать отдельно под каждое.
Требований к устройствам нет как таковых, очень легковесное все.
Также, поставить вполне спокойно можно только одним способом, и потом иметь доступ с любого устройства (об этом напишу, если не забуду)

Также, сразу: напрямую на iOS, без обходных путей (либо способом 1.3, либо с JailBreak - по идее можно, но как сам JB поставить, я не буду объяснять, вообще левая тема) поставить Таверну НЕ ПРЕДСТАВЛЯЕТСЯ ВОЗМОЖНЫМ (по крайней мере, in my book)

Если есть те, у кого уже поставлен JB и вы хотите поставить Таверну - @qwertyplop, помогу и в гайд заодно добавлю

1.0)Linux / MacOS - вот инструкция как поставить, непонятно - пишите, будем решать

1.1) ПК с Windows (поздравляю):

Так давно все это ставил, что уже сам не помню ч там, пойду смотреть. И вот еще, пока не забыл. Мне будет чуть проблематично все углядеть, потому что у меня многое установлено уже, могу пропустить.. Что-то идет не так, пишите, объясню и допишу сюда.

Есть в две стороны дорога: для всех и для "особенных". Я особенный, люблю идти через лес, так интереснее. Но способ писать буду для всех, он универсальный.

Скипайте, если понимаете что тут написано, просто сделайте, как указано:

Для всех остальных, объясняю, что написано сверху:

  • Зашли в компьютер (серьезно?), нажимаем комбинацию клавиш WIN + R (красивая кнопочка с символом, похожим на ⊞, в левой нижней части клавиатуры обычно +(то есть жмем одновременно, можно сначала зажать Win) русская К)
  • Туда вставляем вот это добро:
cmd /c winget install -e --id Git.Git

Откроется консоль:

на вопрос отвечаем Y (то есть нажимаем куда угодно в консоли, вписываем Y и нажимаем Enter/Return )

Консоль после установки закроется (тут я не уверен, надо будет потестить с теми, у кого ничего не установлено).

  • Далее, нажимаем комбинацию WIN + E (по той же схеме, только теперь русская буква будет У), откроется Проводник (А так можно было его открыть?)
  • Тут в любом месте создаем папку пустую, главное правило, чтобы русских символов в пути не было (Может Users переводить в пути как Пользователи, не ведемся, система видит именно на английском). Верный Вариант - либо не на системном диске (если два диска/ два раздела), либо прям в корне системного (C: обычно)
  • Тут кликаем по пустому месту в адресной строке, и вписываем cmd

Нажимаем Enter, откроется консоль:

  • Тут вписываем (Копипаста должна работать, вставить это Ctrl+V/Shift+Insert):
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat

Откроется вторая консоль, первую можно закрыть, или оставить, и потом закрыть

  • Как доходим до этого момента, нажимаем Enter:

Несутся буквы цифры, цифры буквы, проценты растут чиселки бегут - процесс запущен.

  • Дошли до этого момента, вписываем Y и нажимаем Enter:
  • Доходим до второго вопроса, закрываем консоль. Все, на этом этапе. у нас должны были появиться два ярлыка на рабочем столе:

Второй технический, для обновлений/настроек поглубже, рядовым не понадобится (но лучше оставить, на всякий.) А вот первый - это то, что нам и нужно, нажимаем - открывается консоль:

  • Потом.. ждем, ждем пока текст добежит, после этого должен автоматом запуститься браузер, ориентир в консоли:

Если не открылся сам, то странно, но ничего, попробуем зайти самостоятельно.
Ссылка: http://127.0.0.1:8000/

Установка завершена. Поздравляю!

Я один маленький скриншот инструкции наобъяснял на лист..

1.2) Android (поздравляю)

Для немногих шарящих (ссылки ниже)

Важно: Если телефон с рут-правами, то вы - крутышка, и у вас проблем особых не будет по пути, с нерутованными придется вопрос "Тихо-мирно" решать, или подъезжать с 40 чеченцами, посмотрим..

Так значит.. Буду вспоминать, ничего тоже уже не помню

  • Скачиваем Termux (консоль для Android) ссылка:

Termux | F-Droid - Free and Open Source Android App Repository

Скроллим, до суда, нажимаем:

Устанавливаем скачанный apk (хоть бы все знали как это делать, пжпжпжпж)

Важно: Termux должен быть запущен все время, что вы пользуетесь Таверной. Он выступает в роли сервера, и при отключении, связь прервется - придется перезапускать. Поэтому есть смысл сразу добавить приложение в исключения контроля активности (у всех это будет крайне по-разному называться, гуглите по поводу контроля потребления у приложений, скорее всего найдете)

  • Запускаем (далее при поддержке @wehavetowin, royalty ей за скрины)

Далее, вписываем команду (можно вставить, зажимаете, появится Paste):

termux-change-repo

Нажимаем где-нибудь, откроется клавиатура, нажимаем ввод

  • Дальше нажимаем ввод на клавиатуре снова:

Еще раз ввод:

Как закончит, должны до этого дойти:

  • Вписываем, нажимаем ввод:
pkg update && pkg upgrade

На этом этапе вводим с клавиатуры Y и нажимаем ввод:

Вводим Y и нажимаем Ввод:

Пару раз вылезет подобное, нажимаем ввод на клавиатуре просто:

Дожидаемся окончания (появляется $ в консоли - это всегда знак, что ничего не проиходит):

  • Далее, вводим команду:
pkg install git nodejs-lts nano

Будут периодически выскакивать запросы на подтверждения ([Y/n], как сверху), на них всегда вводим с клавиатуры Y и жмем ввод

$ появился - значит двигаемся дальше
  • Далее, вводим команду:
git clone https://github.com/SillyTavern/SillyTavern -b release
  • Далее, опционально, но сделаем для простоты - вводим команду:
nano ~/.bashrc

Открывается текстовый редактор, в него по той же схеме загоняем это (после вставки ввод можно не нажимать):

# Update Termux packages
alias pkgup="pkg update && pkg upgrade"
#Start SillyTavern
alias st='cd ~/SillyTavern && bash start.sh'
# Update SillyTavern
alias stup='cd ~/SillyTavern && git pull --rebase --autostash'

Далее - невероятное: нажимаем CTRL на экране, а на клавиатуре (вызвать тапом по экрану) нажимаем английскую X:

Потом на клавиатуре жмем Y, потом ввод:

  • И наконец, вводим:
source ~/.bashrc

ВСЕ. Теперь, чтобы запускать Таверну, открываем Termux (он сейчас у вас открыт, но на будущее) и вписываем:

st

Знаком того, что он запустился, будет:

Далее, его не закрываем, открываем браузер, переходим по ссылке:

http://127.0.0.1:8000/

Установка завершена. Поздравляю!


1.3) Прочие + Доп. устройства (iOS сюда тоже) (соболезную):

В общем, что хочется сказать.. Тут все уже по грустнее, способы усложняются в зависимости от желаемого результата. Я буду описывать универсальный способ, он подойдет тем, кто хочет подключить устройство без таверны к устройству с таверной, любая связка устройств с этими ОС (делать будем через TailScale, знающие сами настройте, все просто, гайд в доках Таверны есть):

То есть, для тех кто не понял: У ВАС УЖЕ ДОЛЖНА БЫТЬ УСТАНОВЛЕНА ТАВЕРНА (на любом из представленных выше устройств, способы установки в этом гайде есть пока только на PC и Android, для остальных мне нужен кролики с этими устройствами)

Описываемый мной способ НЕ ПОДОЙДЕТ тем, у кого устройство, на котором установлена Таверна, определяет TailScale как VPN (Android, возможно iOS), и кому нужно помимо этого запускать свой VPN (например, для доступа к Gemini). То есть в одном случае - у вас Android, который лежит дома и держит сервер с Таверной, к которой вы пытаетесь удаленно подключится, и при этом вам нужен доступ к не работающим в вашей стране моделям.

Есть и хорошая новость: ниже будет способ подключения по локальной сети, то есть, если устройства в одной сети, то работать будет и с VPN'ом, но тоже есть заковырки свои, об этом ниже. Если ищете именно такой способ, пропускайте все до пункта 1.3.1)

Нус, тогда начнем:

  • Для начала, нам нужен на всех устройствах, участвующих в этих непотребствах, клиент TailScale - прога соединяет все устройства, к ней подключенные, в одну общую сеть, все очень просто в настройке, а подключение вообще секундное:

Download | Tailscale

Для русских Android юзеров, возможно будет недоступно приложение в Google Play, альтернативная ссылка:

https://f-droid.org/repo/com.tailscale.ipn_395.apk (актуальна на 11.10.25)

Скачиваем на все устройства, которые нам нужны (минимум 2, основное и принимающее - например PC и iOS) - я показывать буду на примере двух устройств, PC и Android, в обе стороны. (то есть у меня установлена на Таверна на обоих) ВАМ В ОБЕ СТОРОНЫ ДЕЛАТЬ НЕОБЯЗАТЕЛЬНО! ПОДУМАЙТЕ!

  • Заодно, регистрируемся:

Tailscale

  • Скачали, везде установили, теперь подключаем устройства к аккаунту, то есть, входим на устройствах в учетку TailScale:

PC:


Android:

На Устройстве держим включенным TailScale, когда пользуемся

С TailScale на этом все, далее - разрешения на подключение..

1.3.1) Разрешение на подключение (откроется возможность подключения по локальной сети + Tailscale)

Тут все тоже от устройства зависит, объяснять буду для PC и Android

PC:

  • Находим в папке с Таверной (а вот где создавали, там и ищите, в гайде описано, папку там и ищите примерно.. Ну или переустановка)
  • Далее - Папка SillyTavern, а в ней файл - config.yaml:

Открывайте с помощью Блокнота:

  • И поехали, ищем строчку listen, меняем значение на true:
  • Листаем ниже, до Whitelist:

Сюда нам нужно добавить Ip адреса всех устройств, которые мы хотим чтобы имели доступ к Таверне
Для локальных адресов (которые в одной сети) - ищем в интернете: "как узнать локальный IP адрес {ваше устройство (Windows, Android, iOS)}"

Для TailScale: в админке TailScale (ссылка - Machines - Tailscale), смотрим IP адрес устройства, которому нужно дать доступ:

Как адреса получили, в файл их вписываем:

Так вы можете вписать хоть сколько адресов, обеспечивая доступ с неограниченного количества устройств к одной, общей Таверне.

ФАЙЛ СОХРАНЯЕМ (Ctrl + S нажмите, либо Файл -> Сохранить)

  • Файл можно закрыть - ВСЕ ГОТОВО! (листайте ниже, до подключения)

Android:

Тут все по той же схеме, только через Termux:

  • Вписываем команду:
nano ~/SillyTavern/config.yaml

Настраиваем точно также:

  • Скроллим вниз, до WhiteList:

Вписываем IP других устройств (в моем случае, PC - локальный и с TailScale):

Далее - как и при установке: Ctrl + X -> Y -> Ввод:

На этом с разрешениями - ВСЕ!

Подключение к основной Таверне из подключенных устройств

Так, теперь мы все настроили, в моем случае есть два устройства: одно раздающее, второе подключающееся (у меня оно в обе стороны работает, но так делать нет смысла, пусть на одном все будет).. И что дальше, как зайти то?

А все достаточно просто:

  • Запускаем Таверну на основном устройстве, включаем TailScale (если через него делали, для одной сети не надо)
  • Со второго устройства заходим в браузер, и заходим на:
http://{IP адрес}:8000

Где {IP адрес} заменяем на IP нашего основного устройства (компа в случае телефона, и наоборот), локального, либо взятого с TailScale:

Ии... Voila, Все работает! Поздравляю!

Локальная Таверна, запущена на ПК
Та же Таверна, запущенная с телефона удаленно

Предупреждение: локальные IP адреса имеют свойство быть по умолчанию динамическими, то есть меняться, если вдруг не заходит спустя какое-то время, посмотрите, не поменялся ли IP на одном из устройств (у локальных IP меняется только последние 2-3 цифры)

При использование VPN, DNS, обходов и прочего, локальный IP скрывается от других устройств в сети, так что чтобы подключиться, придется искать ухищрения (в моем случае это Split Tunneling, можете либо сами почитать, либо мне написать, разберемся)


2. Initial Setup (Now that everything is set up, we can... What? There's more?)

Теперь, когда у нас есть установленная Таверна, мы уже можем начать чатиться, получая нескончаемый кайф.. Мы же можем, так?

Теперь начинается самый сложный этап - вникание в то, что собственно за что отвечает. Если до этого, на этапе установки, можно было просто втупую повторять, step-by-step, то теперь все иначе. Я также дам описание первоначальной настройки, чтобы оно хотя бы работало, писало буквы. А вот после, я буду объяснять, что есть что, сложными терминами, насколько возможно уходя в технические понятия - шучу, или нет.. В общем, готовьтесь к тому, что начиная отсюда, нужно начинать самостоятельно вникать в суть вопроса, чтобы потом не бегать и не спрашивать за каждую мелочь.


2.1) Первый запуск

Первым делом нас встретит приветственное окно:

Выбираем язык интерфейса по вкусу (в целом без разницы, но проще искать информацию, когда интерфейс точно на том же языке, на котором написано большинство гайдов/FAQ). Мой выбор 100 из 100 случаев - английский.

Все, остальное пока не нужно, закрываем кнопкой "Save". Дальше у нас следует стартовый экран, он будет открываться всегда, при первом запуске:

Это у нас история чатов, здесь будут все недавние чаты, и быстрые переходы на важные элементы Таверны. Тут особо смотреть не на что, не задерживаемся. Вот что нам интересно, так это:

1 - Навигация, 2 - область чата. Быстро пробегусь по всему, что тут у нас есть.


2.2) Quick Tour по Таверне

Пробегусь по всем функциям коротко, потом по надобности раскрою

2.1.1) Разделы (хз как их назвать) Таверны

Пойду по тому, в каком порядке их следует (по моему мнению) настраивать

  • Профили подключения

Здесь у нас будут настраиваться и хранится все наши подключения к моделям, с ключами и ссылками.

  • Пресеты генерации (промпты+настройки)

Здесь происходит основная настройка генерации модели - настройки семплера (температура, размер контекстного окна, размер ответа и т.д.) и промпты (здесь это комплекс из нескольких сообщений в одном запросе, из-за этого следование промпту лучше, обманывать модели проще (Claude, Gemini) но и настраивать вручную сложнее).

  • Расширенное форматирование

Практически полностью этот раздел относится к Text Completion, о том что это, поговорим позже. Сейчас достаточно понимать, что если вы пользуетесь API (ссылки и ключи), то вам этот раздел не нужен.

Здесь происходит дальнейшая обработка промпта, перед отправкой к модели, а также здесь прописывается системный промпт в случае использования Text Completion.

  • Управление Персонами

Персона - это вы, ваша сторона РП, тут вы их создаете и выбираете

  • Карты персонажей

Здесь создаются, импортируются и экспортируются, а также выбираются все карты персонажей.

  • Лорбуки / Мировые знания

Здесь будет управление всеми лорбуками: создание значений, импорт/экспорт, редактирование.

  • Расширения

Это самая обширная часть Таверны, тут уже "с коробки" можно настроить: Генерацию изображений, перевод чата, озвучку, память, изменение эмоции персонажа визуально (картинками), regex (отдельная, широченная тема, очень много можно с помощью нее сделать), и так далее. А это еще только "из коробки", в Таверне можно создавать (или загружать готовые) расширения, увеличивая возможности еще больше (готовых уже очень много, вряд ли вам когда-либо придется делать расширения самостоятельно).

  • Пользовательские настройки

Здесь уже настраивается пользовательский опыт - то как выглядит Таверна внешне, и как внешне она реагирует на ваши действия.

  • И наконец - фон

Тут просто хранятся фоны, загружаете свои, выбираете (можно даже сделать автовыбор в зависимости от контекста).


2.1.2) Область чата

Что тут у нас.. Помимо, конечно, собственно строки ввода и кнопки отправки, у нас есть два списка функций, рассмотрим поподробнее:

Основные функции чата

Просто пройдусь по всем, какие-то здесь очевидны, какие-то можно разобрать.

  • Авторские заметки

Это место для заметок, которые можно включить в память модели, поэтому большинстве их используют, как память модели. Можно указывать как заметки для конкретной карты, так и общие для всех.

  • CFG

Эта функция поддерживается очень малым перечнем API (oobabooga WebUI, NovelAI, Tabby API)

Позволяет настроить, какие части промпта будут сильнее / слабее влиять на модель (работает не совсем также, как, возможно кому-то известный, CFG в Stable Diffusion. Здесь "миксуется" положительный и отрицательный промпт, и их разница выдается в виде миксованного промпта модели)

Ссылка для желающих узнать побольше: CFG | docs.ST.app

  • Вероятность токенов

Опять же, работает далеко не везде (тут надо поизучать, не знаю, в NovelAI вроде есть)

Прикольная штука, позволяет смотреть в последнем сообщении, как модель составляла ответ (вероятности для каждого токена), а заодно увидеть, как эти токены вообще выглядят

  • Checkpoint

При нажатии, на последнем сообщении создается Чекпойнт, и чат с этого момента копируется, позволяя писать-писать, а потом вернутся обратно, сохранив все, что вы написали, в копии

Вот так вот выглядит иконка чекпойнта, нажимая на нее, вы переноситесь из "родительского", основного чата, в его копию

Во время нахождения в копии, появляется еще опция - вернуться обратно в основной чат.

  • Создание группового чата

Создает групповой чат с персонажем. В групповой чат можно добавлять других персонажей, и они, в установленной последовательности, будут отвечать на запросы пользователя.

Вот так выглядит группа
А вот в группу добавлен еще один персонаж
  • Начать новый чат с этим же песронажем
  • Закрыть чат. Вас перенесет в стартовое окно
  • Управление чатами персонажа

Здесь будут все чаты с персонажем, которые вы создавали (включая чекпоинты)

  • Удалить сообщения

Выбираете ненужные, удаляете

  • Переотправить запрос

По сути реролл, но не "свайп", отличается тем, что последнее сообщения бота стирается, после чего запрос отправляется заново. Удобно, если вы тестируете настройки, чтобы свайпы одного сообщения не накапливались.

  • "Исполнить роль"

Дает команду модели написать в поле ввода сообщение в роли пользователя, на основе заданной инструкции (Задается в пресете)

  • Продолжить

Продолжает генерацию последнего сообщения в чате.


Дополнения

  • Дата-Банк

Здесь хранятся все файлы, относящиеся непосредственно к: Таверне, персонажу или чату. Некоторые расширения могут использовать файлы для долговременного хранения информации (Vector Storage, например) - эти файлы будут здесь, здесь их можно загружать и выгружать, просматривать и изменять

  • Прикрепить файл

Отправит выбранный файл вместе с вашим следующим сообщением. Файл может быть любым

Изображения будут отображаться в чате, но таким образом, они будут отправляться модели вместе с запросом, и не все модели умеют работать с изображениями. Имейте в виду!

  • Генерация изображения

Если генерация настроена, сгенерирует изображение по одному из следующих настраиваемых пресетов

  • Генерация описания изображения

Если настроено, сгенерирует описание для изображения, может использоваться для того, чтобы модель "видела" содержимое изображения, и реагировала на него.

  • Озвучить весь чат

Если настроено, озвучит все сообщения в чате

  • Счетчик токенов

Встроенный инструмент для подсчета токенов сообщения. Считает на основе токенайзера. выбранного для конкретной модели, или предоставленного API

  • Перевод чата

Перевод весь чат, согласно настройке (по умолчанию Google Translate на английский (или язык интерфейса? Непонятно)). Сообщения будут слаться модели ПЕРЕВЕДЕННЫМИ, отменить перевод для чата можно в настройках перевода

  • Перевести поле ввода

Переведет сообщение, введенное в поле ввода, на язык интерфейса (??).


Slash-команды

Помимо всего перечисленного, в чат можно прописывать slash-команды, их превеликое множество, все действия с кнопок по идее можно вызвать через команды. Весь список можно посмотреть введя "/", либо введя комманду

/help slash

Пример команды, которой сам пользовался

/sendas Отправляет за выбранного персонажа (поле name) сообщение

2.1.3) Функции чата

Помимо всего этого, функции есть и у каждого конкретно взятого сообщения в чате

Рассмотрим и их:

Действия с сообщением

  • Перевод сообщения
  • Генерация изображения на основе текста сообщения
  • Озвучить сообщение
  • Скрыть сообщение от модели
  • Вставить файл
  • Создать чекпойнт на сообщении
  • Создать "ответвление" чата, с начала вплоть до сообщения

Отличие от чекпойнта - ответвление сразу перебрасывает вас в копию

  • Скопировать текст сообщения

Редактирование сообщения

При нажатии активируется редактор сообщения, со своими возможностями

  • Подтвердить изменения
  • Отменить изменения
  • Создать копию сообщения
  • Добавить в сообщением пустой блок размышлений
  • Удалить сообщение

Если у сообщения несколько свайпов, будет предложено либо удалить свайп, либо все сообщение

  • Переместить сообщение выше предыдущего за ним
  • Переместить сообщение ниже следующего за ним

С туром вроде все, следующим этапом будет первоначальная настройка (наконец-то!!!)


Так, на тут я пока закончу, первоначальную настройку и все прочее я напишу, как-нибудь. Фидбек приветствуется!