Fizzarolli/fse-raw-dump
Viewer • Updated • 186k • 96 • 3
How to use mpasila/BadVibesNemo-LoRA-12B with PEFT:
from peft import PeftModel
from transformers import AutoModelForCausalLM
base_model = AutoModelForCausalLM.from_pretrained("unsloth/mistral-nemo-base-2407-bnb-4bit")
model = PeftModel.from_pretrained(base_model, "mpasila/BadVibesNemo-LoRA-12B")How to use mpasila/BadVibesNemo-LoRA-12B with Transformers:
# Load model directly
from transformers import AutoModel
model = AutoModel.from_pretrained("mpasila/BadVibesNemo-LoRA-12B", dtype="auto")How to use mpasila/BadVibesNemo-LoRA-12B with Unsloth Studio:
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mpasila/BadVibesNemo-LoRA-12B to start chatting
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for mpasila/BadVibesNemo-LoRA-12B to start chatting
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for mpasila/BadVibesNemo-LoRA-12B to start chatting
pip install unsloth
from unsloth import FastModel
model, tokenizer = FastModel.from_pretrained(
model_name="mpasila/BadVibesNemo-LoRA-12B",
max_seq_length=2048,
)Uses this dataset: mpasila/BadVibesV1-16k-context
It is a combination of these datasets (which have been filtered/processed for ShareGPT format and made sure they don't exceed 16k context length based on unsloth/Ministral-3-8B-Base-2512's tokenizer):
The data was also combined and shuffled. Total entries: 39785
Merged: mpasila/BadVibesNemo-12B
Trained at 16384 context window in 4-bit.
model = FastLanguageModel.get_peft_model(
model,
r = 128, # Choose any number > 0 ! Suggested 8, 16, 32, 64, 128
target_modules = ["q_proj", "k_proj", "v_proj", "o_proj",
"gate_proj", "up_proj", "down_proj",],
lora_alpha = 32,
lora_dropout = 0, # Supports any, but = 0 is optimized
bias = "none", # Supports any, but = "none" is optimized
# [NEW] "unsloth" uses 30% less VRAM, fits 2x larger batch sizes!
use_gradient_checkpointing = "unsloth", # True or "unsloth" for very long context
random_state = 3407,
use_rslora = False, # We support rank stabilized LoRA
loftq_config = None, # And LoftQ
)
from trl import SFTTrainer, SFTConfig
trainer = SFTTrainer(
model = model,
tokenizer = tokenizer,
train_dataset = dataset,
eval_dataset = None, # Can set up evaluation!
args = SFTConfig(
dataset_text_field = "text",
per_device_train_batch_size = 2,
gradient_accumulation_steps = 4, # Use GA to mimic batch size!
warmup_steps = 10,
num_train_epochs = 1, # Set this for 1 full training run.
#max_steps = 60,
learning_rate = 2e-4, # Reduce to 2e-5 for long training runs
logging_steps = 1,
optim = "adamw_8bit",
weight_decay = 0.001,
lr_scheduler_type = "linear",
seed = 3407,
report_to = "none", # Use TrackIO/WandB etc
),
)
This mistral model was trained 2x faster with Unsloth
Base model
unsloth/Mistral-Nemo-Base-2407