Dieses Projekt ermöglicht das Fine-Tuning des Mistral-7B-Instruct-v0.3-Modells mit LoRA, ohne das Modell erneut herunterladen zu müssen. Es nutzt Docker mit GPU-Support und eine lokale Hugging Face Model-Cache-Struktur, um den Workflow zu beschleunigen.
- GPU: NVIDIA RTX 4070 Ti Super mit 16GB VRAM (getestet mit 4-bit Quantisierung)
- Software:
- Docker mit NVIDIA GPU-Unterstützung
- Python 3.10 oder neuer
- Hugging Face CLI für lokalen Modell-Download
Falls nicht installiert, folge dieser Anleitung:
sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart dockerDa das Modell nicht in Docker heruntergeladen werden soll, muss es zuerst lokal gespeichert werden.
mkdir -p ~/huggingface_models/mistral-7b
huggingface-cli download mistralai/Mistral-7B-Instruct-v0.3 --local-dir ~/huggingface_models/mistral-7b --resume-download🚀 Prüfe, ob das Modell vollständig ist:
ls -lah ~/huggingface_models/mistral-7bWichtige Dateien:
config.json
consolidated.safetensors
tokenizer.json
special_tokens_map.json
Um den Container für das Fine-Tuning zu bauen:
docker build --build-arg PIP_CACHE_DIR=/root/.cache/pip \
-t mistral-lora-cache -f Dockerfile .✅ Das Modell wird nicht heruntergeladen, sondern als Volume gemountet.
Nachdem der Container gebaut wurde, kann das Fine-Tuning gestartet werden.
docker run --rm --gpus all \
-v ~/huggingface_models/mistral-7b:/workspace/models/mistral-7b \
-v ~/.docker-cache/pip:/root/.cache/pip \
-v ~/.docker-cache/apt:/var/cache/apt \
-v "$(pwd)/models":/models \
-v "$(pwd)/logs":/logs \
mistral-lora-cache "32552420-7" "1" "Dies ist ein Beispieltext für Fine-Tuning."📌 Erklärung der Parameter:
| Argument | Beschreibung |
|---|---|
"32552420-7" |
CPV-Code des Trainingsdatensatzes |
"1" |
Label (1 = Positiv, 0 = Negativ) |
"Dies ist ein Beispieltext für Fine-Tuning." |
Text, der für LoRA-Training verwendet wird |
Falls du erst prüfen willst, ob das Modell richtig geladen wird:
python scripts/test_model.py🚀 Wenn das Modell erfolgreich lädt, kannst du das Training starten!
llm-finetuning/
├── Dockerfile # Container mit GPU-Unterstützung und LoRA-Training
├── README.md # Diese Anleitung
├── scripts/
│ ├── train.py # Haupt-Skript für Fine-Tuning
│ ├── test_model.py # Test-Skript für Modell-Check
├── models/ # Speichert LoRA-Modelle
├── logs/ # Speichert Logs vom Training
🔥 Dieses Setup erlaubt LoRA-Fine-Tuning von Mistral 7B mit minimalem Overhead.
🚀 Kein Download des Modells nötig – einfach ausführen & trainieren!
🐳 Dank Docker bleibt die Umgebung immer stabil und wiederholbar.
📌 Fragen oder Feedback? Erstelle ein GitHub-Issue!