Downloads · 30 days
11
12% of all-time downloads
poco28/llama-3.2-finetuned-buryat
llama-3.2-finetuned-buryat is a text generation model from poco28. Use it when you need the model to write or continue text. It is set up for peft. The card lists the license as mit.
Downloads · 30 days
11
12% of all-time downloads
All-time downloads
90
Public
Repo size
235 MB
Likes
1
Public
Click a slice to open those files.
.pt109 MB · 43%
From the Hugging Face model README

This model is a fine-tuned version of unsloth/Llama-3.2-1B. It has been trained using TRL.
language:
Данная модель представляет собой легковесный LoRA-адаптер для базовой модели Llama-3.2-1B, дообученный для перевода текстов с русского языка на бурятский, а также для ведения диалога на бурятском языке.
Модель использует официальный шаблон разметки диалогов Llama 3 Chat Template.
Модель была обучена в один этап (SFT) методом QLoRA (FP16/Float32) без расширения оригинального словаря. Для обучения использовался объединенный параллельный русско-бурятский корпус общей сложностью более 42 000 чистых пар.
Состав тренировочного корпуса:
Обучение проводилось на GPU Nvidia T4 (Google Colab) со следующими ключевыми конфигурациями:
q_proj, v_proj, k_proj, o_projpacking=Truepaged_adamw_32bitВы можете запустить модель и проверить перевод прямо в Python с помощью следующего кода:
!pip install --upgrade peft torchao
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
# Названия репозиториев
base_model_id = "unsloth/Llama-3.2-1B"
lora_model_id = "poco28/llama-3.2-finetuned-buryat"
tokenizer = AutoTokenizer.from_pretrained(lora_model_id)
base_model = AutoModelForCausalLM.from_pretrained(
base_model_id,
torch_dtype=torch.float16,
device_map="auto"
)
model = PeftModel.from_pretrained(base_model, lora_model_id)
model.eval()
ru_prompt = "Переведи на бурятский язык фразу: Добрый день, как вас зовут?"
prompt = (
f"<|begin_of_text|><|start_header_id|>user<|end_header_id|>\n\n"
f"{ru_prompt}<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\n"
)
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
with torch.no_grad():
outputs = model.generate(
input_ids=inputs["input_ids"],
attention_mask=inputs.get("attention_mask", None),
max_new_tokens=50,
do_sample=True,
temperature=0.3,
top_p=0.9,
repetition_penalty=1.3,
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.eos_token_id
)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=False)
print(generated_text)
Разработано в рамках проекта по сохранению и цифровизации низкоресурсных языков России (Бурятский язык). Спасибо сообществам Hugging Face и Unsloth за предоставленные вычислительные инструменты.
GITHUB:https://github.com/companys1234/NLP-projects/tree/main/buryat
from transformers import pipeline
question = "If you had a time machine, but could only go to the past or the future once and never return, which would you choose and why?"
generator = pipeline("text-generation", model="None", device="cuda")
output = generator([{"role": "user", "content": question}], max_new_tokens=128, return_full_text=False)[0]
print(output["generated_text"])
This model was trained with SFT.
Cite TRL as:
@software{vonwerra2020trl,
title = {{TRL: Transformers Reinforcement Learning}},
author = {von Werra, Leandro and Belkada, Younes and Tunstall, Lewis and Beeching, Edward and Thrush, Tristan and Lambert, Nathan and Huang, Shengyi and Rasul, Kashif and Gallouédec, Quentin},
license = {Apache-2.0},
url = {https://github.com/huggingface/trl},
year = {2020}
}