Vladniag / Bormokrut

huggingface.co
Total runs: 713
24-hour runs: 3
7-day runs: 45
30-day runs: 704
Model's Last Updated: August 30 2026
text-generation

Introduction of Bormokrut

Model Details of Bormokrut

🧠 Bormokrut

Bormokrut — это лёгкая, но глубокая языковая модель на базе GPT-2, дообученная (SFT) с использованием trl для выполнения двух специфических задач:

  1. Извлечение (extract) — сущности, аспектов и ключевого вопроса из текста
  2. Маршрутизация (route) — выбор экспертной области по входному вопросу

Модель создана на основе Bormotuha и ориентирована на использование в узких, но содержательных сценариях обработки текста.


Как использовать (How to use)

Модель обучена на следующих шаблонах:

  1. extract Вопрос:...[Контекст: ...] Entity:... Aspects:... Question:...
  2. route experts:... Вопрос:...[Контекст: ...] Entity:... Aspects:... Route:...

Набор экспертов фиксирован и должен быть перечислен в специальном блоке:

prompt="...<subject>experts: биограф; учёный; инженер; кибернетик; математик; гуманитарий; медик; экономист; искусствовед; жизнекачер; смежник</subject><newline>..."

Тестовый скрипт

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, TextIteratorStreamer, StoppingCriteria, StoppingCriteriaList
from threading import Thread

# Загрузка модели и токенизатора
checkpoint_path = "Vladniag/Bormokrut"

model = AutoModelForCausalLM.from_pretrained(
    checkpoint_path,
    device_map="cuda",
    torch_dtype=torch.float16
)
tokenizer = AutoTokenizer.from_pretrained(checkpoint_path, use_fast=True)

if tokenizer.pad_token is None:
    tokenizer.pad_token = tokenizer.eos_token

# Настройка стоп-слов
class StopOnTokens(StoppingCriteria):
    def __init__(self, stop_token_ids_list):
        self.stop_token_ids_list = stop_token_ids_list

    def __call__(self, input_ids: torch.LongTensor, scores: torch.FloatTensor, **kwargs) -> bool:
        for stop_ids in self.stop_token_ids_list:
            if len(input_ids[0]) >= len(stop_ids):
                if input_ids[0][-len(stop_ids):].tolist() == stop_ids:
                    return True
        return False

stop_words = ["</result>"]
stop_ids_list = [tokenizer.encode(word, add_special_tokens=False) for word in stop_words]
stopping_criteria = StoppingCriteriaList([StopOnTokens(stop_ids_list)])

# Функция генерации
def generate_response(prompt):
    processed_input = "▁" + prompt.lstrip().replace(" ", "▁").replace("\n", "<newline>")
    inputs = tokenizer(
        processed_input,
        return_tensors="pt",
        add_special_tokens=False,
    ).to(model.device)
    
    streamer = TextIteratorStreamer(tokenizer, skip_prompt=True, skip_special_tokens=False)
    generation_kwargs = dict(
        inputs,
        streamer=streamer,
        max_new_tokens=256,
        do_sample=True,
        temperature=0.3,
        top_p=0.5,
        repetition_penalty=1.3,
        pad_token_id=tokenizer.pad_token_id,
        eos_token_id=tokenizer.eos_token_id,
        stopping_criteria=stopping_criteria
    )
    
    thread = Thread(target=model.generate, kwargs=generation_kwargs)
    thread.start()
    
    full_response = ""
    for new_text in streamer:
        decoded_chunk = new_text.replace("▁", " ").replace("<newline>", "\n").replace("\\n", "\n")
        if "</result>" in decoded_chunk:
            print(decoded_chunk.split("</result>")[0], end="", flush=True)
            break
        print(decoded_chunk, end="", flush=True)
    print()

# Пример использования
prompt = """<instruction>extract</instruction>
<fragment>
Не одному Перуну предназначались почести, но всем «кумирам» без исключения. «И жряху им, наричюще я богы, и привожаху сыны своя и дъщери, и жряху бесом, и оскверняху землю требами своими». Приведенный летописный отрывок чрезвычайно интересен для понимания внутреннего развития восточнославянского язычества на стадии политеизма. Божества других племен и народов не отрицаются, не подчиняются, не становятся второстепенными по отношению к Перуну, а, наоборот, признаются существующими и самостоятельными. Главный бог – только сильнее и могущественнее остальных, он их счастливый соперник, победитель при столкновениях.
</fragment>
<result>"""

generate_response(prompt)

Примеры работы

Задача: извлечение (extract)

Входной текст:

  • Не одному Перуну предназначались почести, но всем «кумирам» без исключения. «И жряху им, наричюще я богы, и привожаху сыны своя и дъщери, и жряху бесом, и оскверняху землю требами своими». Приведенный летописный отрывок чрезвычайно интересен для понимания внутреннего развития восточнославянского язычества на стадии политеизма. Божества других племен и народов не отрицаются, не подчиняются, не становятся второстепенными по отношению к Перуну, а, наоборот, признаются существующими и самостоятельными. Главный бог – только сильнее и могущественнее остальных, он их счастливый соперник, победитель при столкновениях.

Результат:

  • Entity: Перун

  • Aspects: боги; роль в мифологии; связь с другими божествами; социальная структура

  • Question: Какова роль и значение богов в древнерусском язычестве, согласно летописи?

Задача: маршрутизация (route)

Входной вопрос:

  • Какие нарушения функций печени связаны со злоупотреблением алкоголем?

Результат:

  • Route: медик

Входной вопрос:

  • Каково значение Духа в контексте Троицы и Его роли в мире?

Результат:

  • Route: гуманитарий

📊 Данные обучения
Параметр Значение
Объём выборки 351 815 примеров
Режим обучения SFT (Supervised Fine-Tuning)
Инструмент TRL (Transformer Reinforcement Learning)
Базовая модель Bormotuha

⚙️ Конфигурация модели
{
  "activation_function": "gelu_new",
  "architectures": ["GPT2LMHeadModel"],
  "attn_pdrop": 0.1,
  "bos_token_id": null,
  "dtype": "float32",
  "embd_pdrop": 0.1,
  "eos_token_id": 3,
  "initializer_range": 0.02,
  "layer_norm_epsilon": 1e-05,
  "model_type": "gpt2",
  "n_ctx": 1536,
  "n_embd": 256,
  "n_head": 8,
  "n_inner": 1024,
  "n_layer": 42,
  "n_positions": 1536,
  "pad_token_id": 0,
  "reorder_and_upcast_attn": false,
  "resid_pdrop": 0.1,
  "scale_attn_by_inverse_layer_idx": false,
  "scale_attn_weights": true,
  "summary_activation": null,
  "summary_first_dropout": 0.1,
  "summary_proj_to_labels": true,
  "summary_type": "cls_index",
  "summary_use_proj": true,
  "transformers_version": "4.56.1",
  "use_cache": true,
  "vocab_size": 6002
}

Runs of Vladniag Bormokrut on huggingface.co

713
Total runs
3
24-hour runs
18
3-day runs
45
7-day runs
704
30-day runs

More Information About Bormokrut huggingface.co Model

More Bormokrut license Visit here:

https://choosealicense.com/licenses/mit

Bormokrut huggingface.co

Bormokrut huggingface.co is an AI model on huggingface.co that provides Bormokrut's model effect (), which can be used instantly with this Vladniag Bormokrut model. huggingface.co supports a free trial of the Bormokrut model, and also provides paid use of the Bormokrut. Support call Bormokrut model through api, including Node.js, Python, http.

Vladniag Bormokrut online free

Bormokrut huggingface.co is an online trial and call api platform, which integrates Bormokrut's modeling effects, including api services, and provides a free online trial of Bormokrut, you can try Bormokrut online for free by clicking the link below.

Vladniag Bormokrut online free url in huggingface.co:

https://huggingface.co/Vladniag/Bormokrut

Bormokrut install

Bormokrut is an open source model from GitHub that offers a free installation service, and any user can find Bormokrut on GitHub to install. At the same time, huggingface.co provides the effect of Bormokrut install, users can directly use Bormokrut installed effect in huggingface.co for debugging and trial. It also supports api for free installation.

Bormokrut install url in huggingface.co:

https://huggingface.co/Vladniag/Bormokrut

Url of Bormokrut

Bormokrut huggingface.co Url

Provider of Bormokrut huggingface.co

Vladniag
ORGANIZATIONS

Other API from Vladniag

huggingface.co

Total runs: 41
Run Growth: -127
Growth Rate: -288.64%
Updated:July 25 2026
huggingface.co

Total runs: 4
Run Growth: -2
Growth Rate: -50.00%
Updated:December 11 2024
huggingface.co

Total runs: 2
Run Growth: 1
Growth Rate: 50.00%
Updated:March 15 2025