Google Colab
Um Unsloth in Google Colab zu installieren und auszuführen, folge den untenstehenden Schritten:
Zuletzt aktualisiert
War das hilfreich?
Um Unsloth in Google Colab zu installieren und auszuführen, folge den untenstehenden Schritten:
Zuletzt aktualisiert
War das hilfreich?
War das hilfreich?
(als .py-Datei speichern) oder verwenden Sie das folgende einfache Skript:
import torch
from trl import SFTTrainer, SFTConfig
from datasets import load_dataset
max_seq_length = 2048 # Unterstützt intern RoPE-Skalierung, wählen Sie also beliebige Werte!
# LAION-Datensatz abrufen
max_seq_length = 512
url = "https://huggingface.co/datasets/laion/OIG/resolve/main/unified_chip2.jsonl"
(da keine andere Version für QLoRA-Feinabstimmung funktionieren wird). Konfigurieren Sie die folgenden Parameter:
# 4bit vorquantisierte Modelle, die wir für 4× schnelleren Download + keine OOMs unterstützen.
"unsloth/gpt-oss-20b-unsloth-bnb-4bit", #oder wählen Sie ein beliebiges Modell
"unsloth/gpt-oss-120b",
model, tokenizer = FastModel.from_pretrained(
] # Mehr Modelle unter https://huggingface.co/unsloth
max_seq_length = 2048, # Wählen Sie beliebig für langen Kontext!
model_name = "unsloth/gemma-3-270m-it",
load_in_4bit = True, # 4-Bit-Quantisierung. False = 16-Bit LoRA.
load_in_16bit = False, # [NEU!] 16-Bit LoRA
load_in_16bit = False, # 16-Bit LoRA
full_finetuning = False, # [NEU!] Wir haben jetzt Full-Finetuning!
)
# Modellpatching durchführen und schnelle LoRA-Gewichte hinzufügen
model = FastLanguageModel.get_peft_model(
model,
r = 16,
target_modules = ["q_proj", "k_proj", "v_proj", "o_proj",
"gate_proj", "up_proj", "down_proj",],
lora_alpha = 16,
lora_dropout = 0, # Unterstützt beliebige Werte, aber = 0 ist optimiert
bias = "none", # Unterstützt beliebige Werte, aber = "none" ist optimiert
r = 8, # Wählen Sie eine beliebige Zahl > 0! Vorgeschlagen: 8, 16, 32, 64, 128
use_gradient_checkpointing = "unsloth", # True oder "unsloth" für sehr langen Kontext
random_state = 3407,
max_seq_length = max_seq_length,
use_rslora = False, # Wir unterstützen rank-stabilisiertes LoRA
loftq_config = None, # Und LoftQ
)
trainer = SFTTrainer(
model = model,
train_dataset = dataset,
tokenizer = tokenizer,
args = SFTConfig(
max_seq_length = max_seq_length,
Wir empfehlen normalerweise nicht, die oben genannten Parameter zu ändern, aber um einige von ihnen zu erläutern:
gradient_accumulation_steps = 4,
trust_remote_code = False, # Aktivieren, um neue Modelle zu unterstützen
max_steps = 60,
logging_steps = 1,
output_dir = "outputs",
optim = "adamw_8bit",
seed = 3407,
),
)
trainer.train()
# Gehen Sie zu https://docs.unsloth.ai für erweiterte Tipps wie
# (1) Speichern in GGUF / Zusammenführen in 16bit für vLLM
# (2) Fortsetzung des Trainings von einem gespeicherten LoRA-Adapter
# (3) Hinzufügen einer Evaluationsschleife / OOMs
# (4) Anpassbare Chat-Vorlagen