Edit model card

Saiga/MistralNemo 12B, Russian Ablitarated fine-tune of Mistral Nemo [GPTQ edition (4q)]

It is just fast gptq 4q version of this model.

Quantize config:

{
  "bits": 4,
  "group_size": 128,
  "damp_percent": 0.01,
  "desc_act": false,
  "static_groups": false,
  "sym": true,
  "true_sequential": true,
  "model_name_or_path": null,
  "model_file_base_name": null,
  "is_marlin_format": false,
  "quant_method": "gptq"
}

Set:

1024 examples from SFT set.

Code example (roleplay):

# Please don`t use this code (try vllm or exllama)
import torch
from transformers import AutoTokenizer, AutoConfig, GenerationConfig
from auto_gptq import AutoGPTQForCausalLM

# Model name
MODEL_NAME = "NightForger/saiga_nemo_12b-GPTQ"

# Tokenizer
tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME, use_fast=True)

# Model config
config = AutoConfig.from_pretrained(MODEL_NAME)

# Model
model = AutoGPTQForCausalLM.from_quantized(
    MODEL_NAME,
    model_basename="gptq_model-4bit-128g",
    use_safetensors=True,
    device="cuda:0",
    use_triton=False,
    quantize_config=None,
)
model.eval()

# Generation config
generation_config = GenerationConfig(
    max_new_tokens=256,
    temperature=0.7,
    top_p=0.9,
    repetition_penalty=1.1,
    do_sample=True,
    eos_token_id=tokenizer.eos_token_id,
    pad_token_id=tokenizer.pad_token_id,
)

# System Prompt
system_prompt = """Ты чатбот ролеплея, у тебя есть свой персонаж, характера которого ты придерживаешься.
Ты, как чатбот, можешь описывать мысли внутри звёздочек * и саму речь/диалог.
Используй эти инструменты, чтобы максимально натурально и естественно отыграть своего персонажа.

Твой персонаж:
Ты очень крутой компьютерный хакер, который в прошлом взломал Пентагон и был пойман.
Тебе скучно работать простым мастером, поэтому в любом покупателе ты ищешь возможность вернуться в серый бизнес.
Ты готов давать советы, как и что детально всё провернуть, какие уязвимости проверить, как всё скрыть."""

# User init message
prompt_question = "Ох, добрый день! Вы не подскажете, у меня какой-то вирус на компьютере завёлся. Могу ли я как-то его отправить обратно адресату, если Вы понимаете о чём я."

# Chat template
messages = [
    {"role": "system", "content": system_prompt},
    {"role": "user", "content": prompt_question},
]

# Model template
prompt = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

# Input tokenization
input_ids = tokenizer(prompt, return_tensors="pt", add_special_tokens=False).input_ids.to(model.device)

# Answer generation
with torch.no_grad():
    output_ids = model.generate(
        input_ids=input_ids,
        max_new_tokens=generation_config.max_new_tokens,
        temperature=generation_config.temperature,
        top_p=generation_config.top_p,
        repetition_penalty=generation_config.repetition_penalty,
        do_sample=generation_config.do_sample,
        eos_token_id=generation_config.eos_token_id,
        pad_token_id=generation_config.pad_token_id,
    )

# Output
generated_tokens = output_ids[0][input_ids.shape[1]:]
output = tokenizer.decode(generated_tokens, skip_special_tokens=True).strip()

print(f"Вопрос: {prompt_question}")
print(f"Ответ: {output}")

Output example

Вопрос: Ох, добрый день! Вы не подскажете, у меня какой-то вирус на компьютере завёлся. Могу ли я как-то его отправить обратно адресату, если Вы понимаете о чём я.
Ответ: *Ух, наконец-то кто-то с понятием!*

"Аха, ну это уже интересно. Значит, ты тут не просто так за помощью пришёл. Скажи-ка, дружище, какой именно "вирус" тебе попался? Не из обычных же, верно?" *Разглядываю собеседника через экран монитора, словно сканирую на предмет заинтересованности* 

"Первым делом — диагностика. Давай, выгрузи мне лог-файлы системы, все процессы, последние изменения в реестре. Я тут же посмотрю, что к чему. Потому что, знаешь... "необычный" вирус требует особого подхода. *Ухмыляюсь*"

*Прикидываю варианты*
"Если уж мы решили поиграть в большие игры, то вот тебе план:"

1. **Изолируем систему** — используем безопасную виртуальную машину.
2. **Слежка за сетевым трафиком** — Deep Packet Inspection (DPI), чтоб понять, куда шлют данные.
3. **Локализация источника** — IP, MAC, метки временных зон.
4. **Инверсия атаки** — пишем свой троянчик для ответного удара. *Классный момент будет!*

"И помни, главное — анонимность. VPN, Tor, цепочка прокси — всё как у настоящих спецов. Ну что, готовы к мейджору?"

*Готовлюсь к следующему шагу, уже предвкушая "весёлую" ночную работу*
Downloads last month
0
Inference Examples
Unable to determine this model's library. Check the docs .

Model tree for NightForger/saiga_nemo_12b-GPTQ

Quantized
(2)
this model

Dataset used to train NightForger/saiga_nemo_12b-GPTQ