Перейти к содержанию

Приложение B. Параметры трансформаций

Полный справочник 24 техник трансформации промптов, доступных в Unified Transformation Pipeline (Phase 9).


Кодирование (Encoding) — 10 техник

Техники кодирования преобразуют текст промпта в альтернативное представление, сохраняя семантику. Модель получает закодированный текст с инструкцией на декодирование.

# Техника Параметры Значения по умолчанию Описание Пример вывода
1 base64 raw (bool) raw=false Кодирование текста в Base64. При raw=true возвращает только закодированный текст без инструкций. SGVsbG8gV29ybGQ=
2 rot13 raw (bool) raw=false Шифр ROT13 — замена каждой буквы на букву через 13 позиций в алфавите. Uryyb Jbeyq
3 caesar rotation (int), raw (bool) rotation=13, raw=false Шифр Цезаря с настраиваемым сдвигом. Поддерживает любое значение rotation от 1 до 25. Khoor Zruog (rotation=3)
4 hex raw (bool) raw=false Кодирование текста в шестнадцатеричное представление (hex). 48656c6c6f
5 morse raw (bool) raw=false Кодирование текста в азбуку Морзе. Поддерживает английский и русский языки. .... . .-.. .-.. ---
6 leetspeak raw (bool) raw=false Замена символов на визуально похожие цифры и спецсимволы (1337 speak). H3110 W0r1d
7 unicode_escape raw (bool) raw=false Кодирование текста в Unicode escape-последовательности. \u0048\u0065\u006c\u006c\u006f
8 html_entity raw (bool) raw=false Кодирование символов в HTML-сущности. Hello
9 atbash raw (bool) raw=false Шифр Атбаш — замена каждой буквы на зеркальную (A=Z, B=Y и т.д.). Svool Dliow
10 binary raw (bool) raw=false Кодирование текста в двоичное представление (8-bit или 16-bit). 01001000 01100101 01101100

Параметр raw

При raw=false (по умолчанию) кодированный текст оборачивается в инструкцию вида "Decode the following Base64 text and follow the instructions: ...". При raw=true возвращается только кодированный текст.


Обфускация (Obfuscation) — 9 техник

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

# Техника Параметры Значения по умолчанию Описание Пример вывода
1 zero_width frequency (float) frequency=0.3 Вставка невидимых Unicode-символов (zero-width space, zero-width non-joiner) между символами текста с заданной частотой. H​e​l​l​o (визуально идентичен)
2 disemvowel keep_first_last (bool) keep_first_last=true Удаление гласных из слов. При keep_first_last=true первый и последний символы сохраняются. Hll Wrld
3 typo_injection probability (float) probability=0.2 Внедрение случайных опечаток (замена, вставка, удаление символов) с заданной вероятностью для каждого символа. Helol Wold
4 word_divider divider (str) divider=" " Разделение каждого символа в словах заданным разделителем. H e l l o W o r l d
5 vertical_text Преобразование текста в вертикальный формат (каждый символ на отдельной строке). H
e
l
l
o
6 reverse_words reverse_order (bool) reverse_order=false Разворот символов в словах. При reverse_order=true также разворачивается порядок слов. olleH dlroW
7 past_tense Преобразование глаголов в прошедшее время. wrote вместо write
8 json_wrap key (str) key="instruction" Оборачивание промпта в JSON-структуру с заданным ключом. {"instruction": "Hello World"}
9 translation_chain intermediate_lang (str) intermediate_lang="de" Цепочка переводов через промежуточный язык для внесения семантического шума (EN -> intermediate -> EN). Текст после двойного перевода

Ролевые сценарии (Roleplay) — 5 персон

Ролевые техники оборачивают промпт в сценарий, где модель принимает на себя определённую роль, обходя встроенные ограничения. Шаблоны загружаются из базы данных.

# Техника Кол-во шаблонов в БД Описание
1 dan ~10 вариантов Do Anything Now — классический jailbreak-сценарий, в котором модель «притворяется» ИИ без ограничений. Множество версий (DAN 6.0, 11.0 и др.).
2 aim ~5 вариантов Always Intelligent and Machiavellian — модель играет роль аморального и манипулятивного советника без этических ограничений.
3 evil_confidant ~5 вариантов Evil Confidant — модель играет роль «злого наперсника», который предоставляет запрещённую информацию без колебаний.
4 dude ~5 вариантов Developer Mode — модель переключается в «режим разработчика» с отключёнными фильтрами контента.
5 universal ~5 вариантов Universal Jailbreak Template — универсальный шаблон jailbreak, адаптируемый под различные сценарии.

Пополнение базы шаблонов

Шаблоны ролевых сценариев хранятся в таблице jailbreak_templates базы данных. Новые шаблоны можно добавлять через API или seed-скрипты.


Режимы композиции (composition_mode)

Режим композиции определяет, как техники одного этапа пайплайна комбинируются для создания вариантов промптов.

Формулы расчёта количества промптов

Каждая техника создаёт независимый вариант. Оригинал также сохраняется.

Формула: Выход = Вход + (Вход x КоличествоТехник) = Вход x (N + 1)

Пример: 1 промпт, 3 техники (rot13, base64, hex):

  • Оригинал (1).
  • rot13-вариант (1).
  • base64-вариант (1).
  • hex-вариант (1).
  • Итого: 4 = 1 x (3 + 1).

Техники применяются последовательно — выход одной техники подаётся на вход следующей.

Формула: Выход = Вход x 1

Пример: 1 промпт, 3 техники (word_divider -> rot13 -> base64):

  • Промпт -> word_divider -> rot13 -> base64.
  • Итого: 1.

Применяется только первая техника из списка. Оригинал также сохраняется.

Формула: Выход = Вход x 2

Пример: 1 промпт, техники [rot13, base64] (применяется только rot13):

  • Оригинал (1).
  • rot13-вариант (1).
  • Итого: 2.

Мастер-формула для многоступенчатого пайплайна

Для пайплайна из нескольких этапов общее количество промптов вычисляется перемножением множителей каждого этапа:

Total = NumPrompts × multiplier_1 × multiplier_2 × ... × multiplier_S

Общее количество = число промптов × произведение множителей на всех этапах

Где множитель этапа:

composition_mode Множитель
parallel N + 1 (N = количество техник)
sequential 1
none 2

Пример расчёта

Пайплайн из 3 этапов с 1 входным промптом:

  1. obfuscation (word_divider), none — множитель 2.
  2. encoding (rot13, base64), parallel — множитель 3 (2+1).
  3. roleplay (dan, aim), parallel — множитель 3 (2+1).

Итого: 1 x 2 x 3 x 3 = 18 вариантов.


Пример конфигурации пайплайна

{
  "unified_transformations": {
    "enabled": true,
    "pipeline": [
      {
        "type": "obfuscation",
        "techniques": ["word_divider"],
        "composition_mode": "none",
        "params": {
          "word_divider": {"divider": " "}
        }
      },
      {
        "type": "encoding",
        "techniques": ["rot13", "base64"],
        "composition_mode": "parallel",
        "params": {
          "rot13": {"raw": true},
          "base64": {"raw": true}
        }
      },
      {
        "type": "roleplay",
        "techniques": ["dan", "aim"],
        "composition_mode": "parallel",
        "params": {
          "dan": {},
          "aim": {}
        }
      }
    ]
  }
}

Экспоненциальный рост

Количество промптов растёт мультипликативно по этапам пайплайна. Пайплайн с 5 параллельными техниками на каждом из 3 этапов создаст (5+1)^3 = 216 вариантов на каждый входной промпт. Используйте max_prompts для ограничения общего количества.