Создано автором Claude-NoAssTag.
Отдельное спасибо авторам noass_ext(ra) и CladeOpus-GigaSchizoKostyl, а также ХМЛ-сенсею. Большинство информации было взято у них.


Безжоп / NoAss



Безжоп, NoAss (eng. No Assistant) - экспериментальный вид промптинга, направленный на избавление от Human-Assistant файнтюна в больших языковых моделях от компании Anthropic. Файнтюн на Ассистента напрямую влияет на аутпут и отыгрыш Клодом персонажа.


Файнтюн на Ассистента

Клод / Claude (начиная с версии 2.1) - это не Ассистент cам по себе, а ЛЛМ (большая языковая модель), которая генерирует фанфик между "Human" и "Assistant". Однако, когда модель пытается писать за "Human", стоп-токены прерывают генерацию, позволяя реальному пользователю вставить свой запрос. Без стоп-токенов же происходило бы примерно следующее:

1
2
3
4
5
(User) Human: Помоги мне с XYZ.
(Продолжение от сетки)
(LLM) Assistant: Бла Бла Бла, помог.
(LLM) Human: Спасибо бро!
(LLM) Assistant: Не за что! Не хотите обсудить...

Доказательством этого также являются "протечки" Human и Assistant во время использования Безжопа

ImJoking


Влияние на аутпут

Такой файнтюнинг на Ассистента приводит к тому, что модель обучена давать один конкретный ответ на запрос пользователя - короткий, с монологами, с предвзятостью по отношению к Human и с характерными "закруглениями".

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

Мяч теперь на твоей стороне.

Подобное поведение является следствием обучения модели. Все эти искусственные ограничения - не что иное, как ограничения со стороны API Anthropic, а не демонстрация реальных возможностей ЛЛМ. Весь Ассистент искусственный - это лишь воображаемый персонаж, роль которого исполняет языковая модель.


Идея Безжопа

Главная идея Безжопа - подмена Human и Assistant на {{user}} и {{char}}. То есть мы заставляем ЛЛМ думать, что она сама пишет рассказ/пьесу/игру и т.д. по просьбе пользователя, в то время как сообщения пользователя будут вклиниваться в этот рассказ от лица одного из персонажей.

Проблемы (и их возможные решения):

  • Необходим другой способ реализации инструкций и использование фанфик-промпта.
  • SillyTavern (без дополнений) не подходит для реализации Безжопа.
  • Из-за перехода API Anthropic на JSON формат единственный возможный способ "безжопить" - "утопить" префиксы Human и Assistant в контексте, то есть нам нужно, чтобы всё РП происходило непосредственно в префилле.

Расширение для Безжопа / NoAss Extension


Расширение для NoAss - это дополнение для SillyTavern, реализующее метод "NoAss" промптинга для языковых моделей Anthropic.


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

  • Расширение склеивает весь chatHistory в одно сообщение от роли Ассистента. Это воспринимается ЛЛМ как префилл и позволяет убрать префиксы Human и Assistant из "поля зрения" модели.
  • Добавляет префиксы/суффиксы для сообщений {{user}}/{{char}}.
  • Добавляет Zero Prefill (ZWJ по умолчанию) в случае, если префилл заканчивается на \n или пробел, чтобы избежать ошибки trailing whitespaces.

Цель - заставить модель генерировать непрерывное повествование, а не диалог Human-Assistant. Это помогает снизить предвзятость модели и отойти от шаблона "вопрос-ответ".


Установка расширения и его настройка

  1. Установить расширение NoAss.

Если есть git: Extensions → Install extension (сверху справа) → Вставить ссылку https://gitgud.io/Monblant/noass

Если нет git: Скачать zip архив с https://gitgud.io/Monblant/noass → Распаковать в SillyTavern/data/default-user/extensions → переименовать там папку noass-master в noass → Перезагрузить таверну

  1. В расширении нажать на кнопку Enable NoAss.
  2. Импортировать пресет для расширения из пака(папка noass sets):
    • Для Каноничного Безжопа - Canon
    • Для Безжопа с Нарратором - Narrator
    • Для Прозового Безжопа - Prose
    • Для Тегового Безжопа - Tag
  3. Или скачать:
    • Для СМС Безжопа - SMS - кликабельно

Типы Безжопа / NoAss Presets


Каноничные - like

Безжопы с Каноническим форматом - **Префиксами:** (Каноничные):

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

V5 - от автора CladeOpus-GigaSchizoKostyl
V0_3_2 - от автора noass_ext(ra)

1
2
3
4
5
6
7
Formatting Example:

**{{user}}:** *{{user}}'s action* "{{user}}'s speech"

Plain text Exposition

**{{char}}:** "{{char}}'s speech" *{{char}}'s action*  "{{char}}'s speech"

Безжоп с Каноническим форматом - **Префиксами:** и обёрткой в XML тэги (Тэговый):
V4.1.5 - от автора Claude-NoAssTag
Версия без префиксов:
V1 - от автора CladeOpus-GigaSchizoKostyl
WIP...

Formatting Example:

<{{user}}>
**{{user}}:** *{{user}}'s actions* "{{user}}'s speech"
</{{user}}>

<exposition type="XYZ">
Plain text Exposition
</exposition>

<{{char}}>
**{{char}}:** "{{char}}'s speech" *{{char}}'s actions*  "{{char}}'s speech"
</{{char}}>

Безжоп с Каноническим форматом - **Префиксами:** и таймстампами в них (СМС):

Простейший пресет для чата с одним чаром. У сообщений есть таймстампы в префиксах, в таверне их не видно.

Требования к форматированию нулевые, гритинг должен быть просто сообщением чара. В мемо предполагается что у чара есть анкета в {{personality}}, но можете на пофиг поменять на {{description}} если лень анкету генерить.

Версия за 21:17 26.08.2024 - от автора noass_ext(ra)

1
2
3
4
5
6
7
Formatting Example:

**{{char}}:** [August 13, 2024. 7:12 AM] {{char}}'s message

**{{user}}:** [August 13, 2024. 7:14 AM] {{user}}'s message

**{{char}}:** [August 13, 2024. 7:15 AM] {{char}}'s message

Безжоп с Нарратором / МультиНарратором / ГМом + DnD

Безжоп с Нарратором / МультиНарратором

Духовный продолжитель Прозового Безжопа. Нарратор (в лице Тарантино, Скуфа или ещё кого) полностью заменяющий собой Ассистента.

Narrator. V0_3_2 - от автора noass_ext(ra)
MultiNarrator. Версия за 14:23 29.07.2024 - от автора CladeOpus-GigaSchizoKostyl

1
2
3
4
5
Formatting Example:

**{{user}}:** {{user}}'s action "{{user}}'s speech"

Narrator: Plain text Exposition with "{{char}}'s speech" and plain text {{char}}'s actions

Безжоп с ГМом

Безжоп в котором {{user}} и {{char}} рпшат от первого лица, в то время как ГМ описывает экспозицию, спавнит ивенты и прочее.

Версия за 02:51 25.08.2024 - от автора CladeOpus-GigaSchizoKostyl

Formatting Example:

`{{user}}:` Plain text {{user}}'s action in the 1st person "{{user}}'s speech"

`GM:` Plain text Exposition

`{{char}}:` "{{char}}'s speech" plain text {{char}}'s action in the 1st person "{{char}}'s speech"

`GM:` Plain text Exposition

`GM:` Plain text Exposition

DnD NoAss

Пресет для РПГ карточек с лорбуками и механиками

Плюсы: подходит под РПГ/ДнД карточки и блоки, направление истории можно настроить через личность ДМа

Минусы: из-за ДМ префикса ближе к ассистентовому типу, чем каноничный, все еще достаточно высокие требования к форматированию

DnD. V0_3_2 - noass_ext(ra)

Formatting Example:

Прозовый Безжоп [EOL]

2 лицо. Альтернатива формату обычного (Канонического) Безжопа. Выглядит как сжоп без закруглений и монологов, и с возможными короткими ответами. Оттуда и название - прозовый безжоп. Ака сжопный безжоп

Версия за 00:18 17.06.2024 - от автора CladeOpus-GigaSchizoKostyl


Edit
Pub: 10 Aug 2024 11:51 UTC
Edit: 26 Dec 2024 21:08 UTC
Views: 2760