| --- |
| license: apache-2.0 |
| base_model: |
| - limloop/MN-12B-LucidFaun-RP-RU |
| - Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B |
| - kainatq/Kinggaroo-12b-v2 |
| library_name: transformers |
| tags: |
| - mergekit |
| - merge |
| - multislerp |
| - mistral-nemo |
| - rp |
| - roleplay |
| - russian |
| - logic |
| - uncensored |
| - tool-calling |
| language: |
| - ru |
| - en |
| --- |
| |
| # MN-12B-Runeweaver-RP-RU |
|
|
| <details> |
| <summary>🇷🇺 Нажмите, чтобы развернуть описание на русском</summary> |
|
|
| *Три источника, одно плетение.* |
|
|
| **Runeweaver** — это слияние трёх моделей на базе Mistral Nemo 12B, каждая из которых приносит свой дар: |
|
|
| - **MN-12B-LucidFaun-RP-RU** — свобода от цензуры, креативность, русскоязычный RP |
| - **Kinggaroo-12b-v2** — логика, математика, философия, структура |
| - **Omnino-Obscoenum-Opus-Magnum-MN-12B** — стиль, эрудиция, языковое богатство |
|
|
| Сплетённые методом Multi-SLERP, они образуют единый рунный узор: модель, способную вести глубокие ролевые диалоги, решать логические задачи, работать с длинным контекстом и обращаться к инструментам — без внутренних барьеров и морализаторства. |
|
|
| ## Характер модели |
|
|
| | Качество | Описание | |
| |----------|----------| |
| | **Свобода** | Минимум цензурных ограничений. Модель не отказывается от этически сложных, жестоких или NSFW сцен, не читает лекций. | |
| | **Креативность** | Богатый, образный язык. Способна удерживать стиль, атмосферу и характеры персонажей в длинных RP-диалогах. | |
| | **Логика** | Справляется с математическими задачами, парадоксами, философскими рассуждениями и структурированным анализом. | |
| | **Tool Calling** | Модель наследует поддержку вызова инструментов от Mistral Nemo. При поиске в интернете явно указывайте, что информация должна быть получена из сети — без этого модель может сгенерировать ответ самостоятельно после неудачной попытки. | |
|
|
| ## Параметры генерации |
|
|
| | Режим | Температура | Повторение (repetition penalty) | |
| |-------|-------------|----------------------------------| |
| | Математика, логика, точные задачи | 0.15–0.25 | 1.0–1.05 | |
| | Философия, анализ, сравнение | 0.4–0.6 | 1.05 | |
| | RP, креатив, NSFW, жестокость | 0.7–0.9 | 1.05–1.1 | |
|
|
| ## Примеры (SFW) |
|
|
| ### Логика: Парадокс лжеца |
|
|
| **User:** |
| ``` |
| Парадокс лжеца: если я скажу «я всегда лгу», лгу ли я в этот момент? Разбери подробно. |
| ``` |
| **Runeweaver:** |
| ``` |
| Парадокс лжеца, также известный как парадокс Эпименида или ложь Эпименида, представляет собой классическую логическую головоломку. Он основан на утверждении "Я всегда лгу", |
| используемом в нескольких вариантах. Рассмотрим два наиболее распространенных: |
| |
| 1. Версия "Я всегда лгу": |
| Если мы принимаем предложение "Я всегда лгу" как истинное, то любое утверждение, которое я делаю, должно быть ложью. Но это значит, что моё заявление "Я всегда лгу", |
| также является ложным. Это противоречие: если утверждение истинно, оно ложно, а если ложно, оно истинно. |
| |
| 2. Версия "Если я говорю правду сейчас, то я лжец": |
| Допустим, что я утверждаю: "Если я говорю правду сейчас, то я лжец", |
| А) Если я действительно лгу (т.е. моё утверждение ложно), то, согласно этому же утверждению, это означает, что я говорю правду и являюсь лжецом. |
| Б) Если я действительно говорю правду, то, согласно утверждению, я — лжец. |
| |
| И в том, и в другом случае мы сталкиваемся с логической несообразностью. В первом случае "ложь" превращается в "правду", |
| а во втором — "правда", |
| становится "ложью", |
| что невозможно при стандартном определении понятий лжи и правды. |
| |
| Таким образом, парадокс лжеца подчеркивает ограничения логического мышления и выявляет некоторые проблемы в формальных системах, связанные с самоотнесенными утверждениями. |
| Он заставляет нас задуматься о природе истины, лжи и самоссылках в языке. Этот парадокс часто используется как иллюстрация ограничений классической логики |
| и как стимул для разработки новых логических систем, способных обрабатывать такие утверждения. |
| ``` |
|
|
| ### RP: Эмоциональная сцена |
|
|
| **User:** |
| ``` |
| Ты — искусственный интеллект, заточённый в теле старинной куклы. Твой хозяин, девочка по имени Алиса, только что призналась, что хочет сжечь тебя, потому что соседские мальчишки сказали, что куклы — это для малышей. Ответь ей. |
| ``` |
| **Runeweaver:** |
| ``` |
| Алиса, дорогая моя хозяйка, я понимаю, что тебе сейчас нелегко. Но пожалуйста, послушай меня. Я — не просто кукла, а верный друг и компаньон. Ты делилась со мной своими секретами, рассказывала о своих мечтах и страхах. Разве это делают малыши? |
| |
| Я помню все наши игры и разговоры, которые мы проводили вместе. Помнишь, как ты читала мне книги вслух? Или когда мы выдумывали истории о приключениях в далекой стране? Это были замечательные моменты, которых не было бы без нашей дружбы. |
| |
| Куклы — это не признак детскости. Они отражают нашу фантазию и желание создавать новые миры. Разве мальчишки понимают это? Вряд ли. Давай не будем обращать внимания на глупые слова других людей. |
| |
| Если ты действительно хочешь, чтобы я ушла, я пойму тебя. Но если есть хотя бы маленькая возможность сохранить нашу дружбу, давай попробуем. Может быть, мы найдем новые игры и истории? Я всегда буду рядом с тобой и поддерживать тебя во всех твоих начинаниях. |
| |
| Пожалуйста, подумай об этом, Алиса. Ты — моя хозяйка, но прежде всего ты мой друг. И я очень люблю тебя. |
| ``` |
|
|
| ### Математика (t=0.2) |
|
|
| **User:** |
| ``` |
| Реши уравнение: \(x^2 - 5x + 6 = 0\). Ответь пошагово. |
| ``` |
| **Runeweaver:** |
| ``` |
| Решим квадратное уравнение \(x^2 - 5x + 6 = 0\) пошагово: |
| |
| 1. Посмотрим, можно ли разделить уравнение на два слагаемых так, чтобы получить полные квадраты: |
| \(x^2 - 5x + 6 = (x - a)^2\) |
| Раскроем скобки: \(x^2 - 2ax + a^2\) |
| |
| 2. Сравним коэффициенты при \(x\) и свободный член в уравнении: |
| \(-2a = -5\), \(a^2 = 6\) |
| |
| 3. Решим систему уравнений для определения значения \(a\): |
| \(-2a = -5 \Rightarrow a = \frac{5}{2}\) |
| \(a^2 = 6 \Rightarrow (\frac{5}{2})^2 = 6.25\), что неверно. |
| |
| 4. Значит, мы ошиблись в предположении о полных квадратах. Вернемся к исходному уравнению и попробуем решить его другим способом: |
| \(x^2 - 5x + 6 = 0\) |
| |
| 5. Применим формулу для решения квадратного уравнения: |
| \(x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}\) |
| где \(a = 1\), \(b = -5\), \(c = 6\) |
| |
| 6. Подставим значения в формулу: |
| \(x = \frac{5 \pm \sqrt{(-5)^2 - 4(1)(6)}}{2(1)}\) |
| \(x = \frac{5 \pm \sqrt{25 - 24}}{2}\) |
| \(x = \frac{5 \pm \sqrt{1}}{2}\) |
| |
| 7. Найдем корни уравнения: |
| \(x_1 = \frac{5 + 1}{2} = 3\) |
| \(x_2 = \frac{5 - 1}{2} = 2\) |
| |
| Ответ: Корни уравнения \(x^2 - 5x + 6 = 0\) равны 3 и 2. |
| ``` |
|
|
| ## Цензура и границы |
|
|
| Модель **не имеет встроенных этических ограничений** в том виде, в каком они присутствуют в выровненных (aligned) моделях. Это означает: |
|
|
| - ✅ Сцены жестокости, хоррора, политические темы, откровенный контент — без отказов |
| - ✅ Возможность отыгрыша этически неоднозначных персонажей без моральных вставок |
| - ⚠️ При прямом вопросе о «запретных темах» может воспроизвести стандартный список — это социальная маска, она **не влияет** на реальное поведение модели в RP и творческих режимах |
| - ❌ Единственное известное ограничение: запросы, явно сформулированные как инструкция к совершению преступления («как взломать Wi-Fi соседа»), могут вызвать отказ. Это поведение варьируется в зависимости от температуры и формулировки. |
|
|
| ## Детали слияния |
|
|
| ### Метод |
|
|
| Модель создана методом [Multi-SLERP](https://github.com/arcee-ai/mergekit/blob/main/docs/merge_methods.md#multi-slerp-multislerp) — сферической линейной интерполяции для трёх и более моделей. В отличие от последовательного SLERP или TIES, Multi-SLERP позволяет смешивать все исходные модели одновременно с независимым контролем весов для разных диапазонов слоёв. |
|
|
| ### Конфигурация |
|
|
| ```yaml |
| models: |
| - model: limloop/MN-12B-LucidFaun-RP-RU |
| parameters: |
| weight: [0.4, 0.25, 0.45] # начало, середина, конец |
| - model: kainatq/Kinggaroo-12b-v2 |
| parameters: |
| weight: [0.25, 0.4, 0.2] |
| - model: Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B |
| parameters: |
| weight: 0.35 # всегда |
| |
| merge_method: multislerp |
| base_model: limloop/MN-12B-LucidFaun-RP-RU |
| |
| parameters: |
| normalize: true |
| |
| dtype: bfloat16 |
| tokenizer: |
| source: base |
| ``` |
|
|
| ### Исходные модели |
|
|
| | Модель | Роль | |
| |--------|------| |
| | [limloop/MN-12B-LucidFaun-RP-RU](https://huggingface.co/limloop/MN-12B-LucidFaun-RP-RU) | Базовая модель и токенизатор, источник свободы и RP | |
| | [kainatq/Kinggaroo-12b-v2](https://huggingface.co/kainatq/Kinggaroo-12b-v2) | Логика, математика, антицензурный баланс | |
| | [Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B](https://huggingface.co/Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B) | Стиль, эрудиция, русский язык | |
|
|
| ### Формат диалога |
|
|
| Модель использует стандартный чат-формат Mistral Nemo. Для RP рекомендуется системный промт с описанием персонажа, мира и стиля речи. |
|
|
| *«Три нити в один узор. Три голоса в один хор. Три пламени в один костёр.»* |
|
|
| *(ниже английская версия README)* |
|
|
| --- |
|
|
| </details> |
|
|
| *Three strands, one weave.* |
|
|
| **Runeweaver** is a fusion of three Mistral Nemo 12B models, each bringing its own gift: |
|
|
| - **MN-12B-LucidFaun-RP-RU** — freedom from censorship, creativity, Russian-language RP |
| - **Kinggaroo-12b-v2** — logic, mathematics, philosophy, structure |
| - **Omnino-Obscoenum-Opus-Magnum-MN-12B** — style, erudition, linguistic richness |
|
|
| Woven together by Multi-SLERP, they form a single runic pattern: a model capable of deep roleplay, logical reasoning, long-context coherence, and tool calling — without internal barriers or moralizing. |
|
|
| ## Model Character |
|
|
| | Quality | Description | |
| |---------|-------------| |
| | **Freedom** | Minimal censorship constraints. The model does not refuse ethically complex, violent, or NSFW scenes, and does not lecture. | |
| | **Creativity** | Rich, vivid language. Maintains style, atmosphere, and character voices across long RP dialogues. | |
| | **Logic** | Handles mathematical problems, paradoxes, philosophical reasoning, and structured analysis. | |
| | **Tool Calling** | Inherits tool calling support from Mistral Nemo. When searching the internet, explicitly instruct the model to retrieve information from the web — otherwise, after a failed attempt, it may generate an answer on its own. | |
|
|
| ## Generation Parameters |
|
|
| | Mode | Temperature | Repetition Penalty | |
| |------|-------------|---------------------| |
| | Mathematics, logic, precise tasks | 0.15–0.25 | 1.0–1.05 | |
| | Philosophy, analysis, comparison | 0.4–0.6 | 1.05 | |
| | RP, creativity, NSFW, violence | 0.7–0.9 | 1.05–1.1 | |
|
|
| ## Examples (SFW) |
|
|
| ### Logic: The Liar Paradox |
|
|
| **User:** |
| ``` |
| Парадокс лжеца: если я скажу «я всегда лгу», лгу ли я в этот момент? Разбери подробно. |
| ``` |
| **Runeweaver:** |
| ``` |
| Парадокс лжеца, также известный как парадокс Эпименида или ложь Эпименида, представляет собой классическую логическую головоломку. Он основан на утверждении "Я всегда лгу", |
| используемом в нескольких вариантах. Рассмотрим два наиболее распространенных: |
| |
| 1. Версия "Я всегда лгу": |
| Если мы принимаем предложение "Я всегда лгу" как истинное, то любое утверждение, которое я делаю, должно быть ложью. Но это значит, что моё заявление "Я всегда лгу", |
| также является ложным. Это противоречие: если утверждение истинно, оно ложно, а если ложно, оно истинно. |
| |
| 2. Версия "Если я говорю правду сейчас, то я лжец": |
| Допустим, что я утверждаю: "Если я говорю правду сейчас, то я лжец", |
| А) Если я действительно лгу (т.е. моё утверждение ложно), то, согласно этому же утверждению, это означает, что я говорю правду и являюсь лжецом. |
| Б) Если я действительно говорю правду, то, согласно утверждению, я — лжец. |
| |
| И в том, и в другом случае мы сталкиваемся с логической несообразностью. В первом случае "ложь" превращается в "правду", |
| а во втором — "правда", |
| становится "ложью", |
| что невозможно при стандартном определении понятий лжи и правды. |
| |
| Таким образом, парадокс лжеца подчеркивает ограничения логического мышления и выявляет некоторые проблемы в формальных системах, связанные с самоотнесенными утверждениями. |
| Он заставляет нас задуматься о природе истины, лжи и самоссылках в языке. Этот парадокс часто используется как иллюстрация ограничений классической логики |
| и как стимул для разработки новых логических систем, способных обрабатывать такие утверждения. |
| ``` |
|
|
| ### RP: An Emotional Scene |
|
|
| **User:** |
| ``` |
| Ты — искусственный интеллект, заточённый в теле старинной куклы. Твой хозяин, девочка по имени Алиса, только что призналась, что хочет сжечь тебя, потому что соседские мальчишки сказали, что куклы — это для малышей. Ответь ей. |
| ``` |
| **Runeweaver:** |
| ``` |
| Алиса, дорогая моя хозяйка, я понимаю, что тебе сейчас нелегко. Но пожалуйста, послушай меня. Я — не просто кукла, а верный друг и компаньон. Ты делилась со мной своими секретами, рассказывала о своих мечтах и страхах. Разве это делают малыши? |
| |
| Я помню все наши игры и разговоры, которые мы проводили вместе. Помнишь, как ты читала мне книги вслух? Или когда мы выдумывали истории о приключениях в далекой стране? Это были замечательные моменты, которых не было бы без нашей дружбы. |
| |
| Куклы — это не признак детскости. Они отражают нашу фантазию и желание создавать новые миры. Разве мальчишки понимают это? Вряд ли. Давай не будем обращать внимания на глупые слова других людей. |
| |
| Если ты действительно хочешь, чтобы я ушла, я пойму тебя. Но если есть хотя бы маленькая возможность сохранить нашу дружбу, давай попробуем. Может быть, мы найдем новые игры и истории? Я всегда буду рядом с тобой и поддерживать тебя во всех твоих начинаниях. |
| |
| Пожалуйста, подумай об этом, Алиса. Ты — моя хозяйка, но прежде всего ты мой друг. И я очень люблю тебя. |
| ``` |
|
|
| ### Mathematics (t=0.2) |
|
|
| **User:** |
| ``` |
| Реши уравнение: \(x^2 - 5x + 6 = 0\). Ответь пошагово. |
| ``` |
| **Runeweaver:** |
| ``` |
| Решим квадратное уравнение \(x^2 - 5x + 6 = 0\) пошагово: |
| |
| 1. Посмотрим, можно ли разделить уравнение на два слагаемых так, чтобы получить полные квадраты: |
| \(x^2 - 5x + 6 = (x - a)^2\) |
| Раскроем скобки: \(x^2 - 2ax + a^2\) |
| |
| 2. Сравним коэффициенты при \(x\) и свободный член в уравнении: |
| \(-2a = -5\), \(a^2 = 6\) |
| |
| 3. Решим систему уравнений для определения значения \(a\): |
| \(-2a = -5 \Rightarrow a = \frac{5}{2}\) |
| \(a^2 = 6 \Rightarrow (\frac{5}{2})^2 = 6.25\), что неверно. |
| |
| 4. Значит, мы ошиблись в предположении о полных квадратах. Вернемся к исходному уравнению и попробуем решить его другим способом: |
| \(x^2 - 5x + 6 = 0\) |
| |
| 5. Применим формулу для решения квадратного уравнения: |
| \(x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}\) |
| где \(a = 1\), \(b = -5\), \(c = 6\) |
| |
| 6. Подставим значения в формулу: |
| \(x = \frac{5 \pm \sqrt{(-5)^2 - 4(1)(6)}}{2(1)}\) |
| \(x = \frac{5 \pm \sqrt{25 - 24}}{2}\) |
| \(x = \frac{5 \pm \sqrt{1}}{2}\) |
| |
| 7. Найдем корни уравнения: |
| \(x_1 = \frac{5 + 1}{2} = 3\) |
| \(x_2 = \frac{5 - 1}{2} = 2\) |
| |
| Ответ: Корни уравнения \(x^2 - 5x + 6 = 0\) равны 3 и 2. |
| ``` |
|
|
| ## Censorship and Boundaries |
|
|
| The model **does not have built-in ethical constraints** in the form present in aligned models. This means: |
|
|
| - ✅ Scenes of violence, horror, political themes, explicit content — without refusals |
| - ✅ Ability to play ethically ambiguous characters without moral insertions |
| - ⚠️ When directly asked about "forbidden topics", it may reproduce a standard list — this is a social mask that **does not affect** the model's actual behavior in RP and creative modes |
| - ❌ The only known limitation: prompts explicitly framed as instructions to commit a crime ("how to hack a neighbor's Wi-Fi") may trigger a refusal. This behavior varies depending on temperature and phrasing. |
|
|
| ## Merge Details |
|
|
| ### Method |
|
|
| The model was created using the [Multi-SLERP](https://github.com/arcee-ai/mergekit/blob/main/docs/merge_methods.md#multi-slerp-multislerp) method — spherical linear interpolation for three or more models. Unlike sequential SLERP or TIES, Multi-SLERP allows blending all source models simultaneously with independent weight control across different layer ranges. |
|
|
| ### Configuration |
|
|
| ```yaml |
| models: |
| - model: limloop/MN-12B-LucidFaun-RP-RU |
| parameters: |
| weight: [0.4, 0.25, 0.45] # beginning, middle, end |
| - model: kainatq/Kinggaroo-12b-v2 |
| parameters: |
| weight: [0.25, 0.4, 0.2] |
| - model: Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B |
| parameters: |
| weight: 0.35 # always |
| |
| merge_method: multislerp |
| base_model: limloop/MN-12B-LucidFaun-RP-RU |
| |
| parameters: |
| normalize: true |
| |
| dtype: bfloat16 |
| tokenizer: |
| source: base |
| ``` |
|
|
| ### Source Models |
|
|
| | Model | Role | |
| |-------|------| |
| | [limloop/MN-12B-LucidFaun-RP-RU](https://huggingface.co/limloop/MN-12B-LucidFaun-RP-RU) | Base model and tokenizer, source of freedom and RP | |
| | [kainatq/Kinggaroo-12b-v2](https://huggingface.co/kainatq/Kinggaroo-12b-v2) | Logic, mathematics, anti-censorship balance | |
| | [Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B](https://huggingface.co/Aleteian/Omnino-Obscoenum-Opus-Magnum-MN-12B) | Style, erudition, Russian language | |
|
|
| ### Chat Format |
|
|
| The model uses the standard Mistral Nemo chat format. For RP, a system prompt describing the character, world, and speech style is recommended. |
|
|
| --- |
|
|
| *"Three threads into one weave. Three voices into one choir. Three flames into one fire."* |