Como Construir um Pipeline de Fine-Tuning QLoRA Estável e Eficiente Usando o Unsloth para Large Lan…

Neste tutorial, demonstramos como realizar o fine-tuning eficiente de um large language model usando Unsloth e QLoRA. Nos concentramos na construção de um pipeline de fine-tuning supervisionado, estável e ponta a ponta, que lida com problemas comuns do Colab, como falhas na detecção da GPU, travamentos de tempo de execução e incompatibilidades de biblioteca. Ao controlar cuidadosamente o ambiente, a configuração do modelo e o loop de treinamento, mostramos como treinar de forma confiável um modelo ajustado por instruções com recursos limitados, mantendo um forte desempenho e uma rápida velocidade de iteração. Copiar Código Copiado Usar um Navegador diferente import os, sys, subprocess, gc, locale locale.getpreferredencoding = lambda: "UTF-8" def run(cmd): print("

$ " + cmd, flush=True) p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, text=True) for line in p.stdout: print(line, end="", flush=True) rc = p.wait() if rc != 0: raise RuntimeError(f"Comando falhou ({rc}): {cmd}") print("Instalando pacotes (isso pode levar de 2 a 3 minutos)...", flush=True) run("pip install -U pip") run("pip uninstall -y torch torchvision torchaudio") run( "pip install --no-cache-dir " "torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 " "--index-url https://download.pytorch.org/whl/cu121" ) run( "pip install -U " "transformers==4.45.2 " "accelerate==0.34.2 " "datasets==2.21.0 " "trl==0.11.4 " "sentencepiece safetensors evaluate" ) run("pip install -U unsloth") import torch try: import unsloth restarted = False except Exception: restarted = True if restarted: print("

O tempo de execução precisa ser reiniciado. Após reiniciar, execute ESTA MESMA célula novamente.", flush=True) os._exit(0) Configuramos um ambiente controlado e compatível reinstalando o PyTorch e todas as bibliotecas necessárias. Garantimos que o Unsloth e suas dependências estejam alinhados corretamente com o ambiente de tempo de execução CUDA disponível no Google Colab. Também lidamos com a lógica de reinício do tempo de execução para que o ambiente esteja limpo e estável antes do início do treinamento. Copiar Código Copiado Usar um Navegador diferente import torch, gc assert torch.cuda.is_available() print("Torch:", torch.__version__) print("GPU:", torch.cuda.get_device_name(0)) print("VRAM(GB):", round(torch.cuda.get_device_properties(0).total_memory / 1e9, 2)) torch.backends.cuda.matmul.allow_tf32 = True torch.backends.cudnn.allow_tf32 = True def clean(): gc.collect() torch.cuda.empty_cache() import unsloth from unsloth import FastLanguageModel from datasets import load_dataset from transformers import TextStreamer from trl import SFTTrainer, S

Fonte: MarkTechPost

Publicado em 2026-03-03

Notícias relacionadas

Continue explorando