# Wie man LLMs unter Windows mit Unsloth feinabstimmt (Schritt-für-Schritt-Anleitung)

Sie können Modelle jetzt direkt auf Ihrem lokalen Windows-Gerät ohne WSL feinabstimmen, indem Sie [Unsloth](https://github.com/unslothai/unsloth) verwenden. Für diese Anleitung gibt es 3 Hauptmethoden, die Sie verwenden können ([Conda](#method-1-windows-via-conda), [Docker](#method-2-docker) und [WSL](#method-3-wsl)).\
Wenn PyTorch bereits unter Windows installiert ist, `pip install unsloth` sollte funktionieren. Andernfalls folgen Sie unseren Anleitungen unten:

<a href="#method-1-windows-via-conda" class="button secondary">Conda-Tutorial</a><a href="#method-2-docker" class="button secondary">Docker-Tutorial</a><a href="#method-3-wsl" class="button secondary">WSL-Tutorial</a>

### Unsloth Studio

Wir haben eine neue Web-UI namens [Unsloth Studio](https://unsloth.ai/docs/de/neu/studio/install) veröffentlicht, die unter Windows sofort funktioniert:

```bash
irm https://unsloth.ai/install.ps1 | iex
```

Verwenden Sie denselben Befehl zum Aktualisieren oder verwenden Sie `unsloth studio update`.

Dann jedes Mal zum Starten:

```bash
unsloth studio -H 0.0.0.0 -p 8888
```

Für detaillierte Installationsanweisungen und Anforderungen für Unsloth Studio [sehen Sie sich unsere Anleitung an](https://unsloth.ai/docs/de/neu/studio/install).

Unten finden Sie Installationsanweisungen für das ursprüngliche **Unsloth Core**:

### Methode #1 - Windows über Conda:

{% stepper %}
{% step %}
**Miniconda (oder Anaconda) installieren**

Anaconda herunterladen [hier](https://www.anaconda.com/download). Unsere Empfehlung ist die Verwendung von [Miniconda](https://www.anaconda.com/docs/getting-started/miniconda/install#quickstart-install-instructions). Um es zu verwenden, öffnen Sie zuerst Powershell – suchen Sie im Startmenü nach „Windows Powershell“:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FvCgJ3hTR5ChVmCR1ndAh%2Fimage.png?alt=media&#x26;token=bcabe210-793f-40ae-944a-a349dddc8c35" alt="" width="375"><figcaption></figcaption></figure>

Dann wird Powershell geöffnet:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fm7J0b8Qz5W2aGktt3KA9%2Fimage.png?alt=media&#x26;token=f84327e4-408f-492c-a909-982ed458f393" alt="" width="375"><figcaption></figcaption></figure>

Dann kopieren und fügen Sie das Folgende ein: STRG+C und fügen Sie es in Powershell mit STRG+V ein:

{% code overflow="wrap" %}

```ps
Invoke-WebRequest -Uri "https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe" -OutFile ".\miniconda.exe"
Start-Process -FilePath ".\miniconda.exe" -ArgumentList "/S" -Wait
del .\miniconda.exe
```

{% endcode %}

Akzeptieren Sie die Warnung und drücken Sie „Trotzdem einfügen“ und warten Sie.

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FZCFxO1FrYGk7sV7AmCe8%2Fimage.png?alt=media&#x26;token=f753dbdb-efa9-462c-875b-0a18509a10cf" alt="" width="375"><figcaption></figcaption></figure>

Es wird gerade das Installationsprogramm heruntergeladen, wie unten:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2F2TzsqlGZyUI4wBT0hXW9%2Fimage.png?alt=media&#x26;token=a680690a-3179-4525-bf83-0163424b5ddc" alt="" width="375"><figcaption></figcaption></figure>

Nach der Installation öffnen Sie **Anaconda Powershell Prompt** um Miniconda über Start -> danach suchen zu verwenden:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FWoQSFFfmB26WT6BdzrvJ%2Fimage.png?alt=media&#x26;token=747c6c4e-f676-4927-abad-cb667e757309" alt="" width="375"><figcaption></figcaption></figure>

Dann sehen Sie:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FNTTeflwW9Gw7lxJdCUcy%2Fimage.png?alt=media&#x26;token=77f093b7-9fd5-47f2-856d-18f238f5a95e" alt="" width="375"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Conda-Umgebung erstellen**

```bash
conda create --name unsloth_env python==3.12 -y
conda activate unsloth_env
```

**Sie werden sehen:**

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FEFYV6IhOeXIDbzxYHzEJ%2Fimage.png?alt=media&#x26;token=e3452b73-cfd2-4148-a735-cfe400369c17" alt="" width="375"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Prüfen Sie `nvidia-smi` um zu bestätigen, dass Sie eine GPU haben, und achten Sie auf die CUDA-Version**

Nach Eingabe von `nvidia-smi` in Powershell sollten Sie etwas wie unten sehen. Wenn Sie kein `nvidia-smi` haben oder das Folgende nicht erscheint, müssen Sie [NVIDIA-Treiber](https://www.nvidia.com/en-us/drivers/).

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2F1CMAzx7LX8LEc8GHy1I9%2Fimage.png?alt=media&#x26;token=a0ad52e3-be17-4dc4-ae97-ba400a639098" alt="" width="375"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**PyTorch installieren**

Beim Ausführen von `nvidia-smi` sehen Sie oben rechts: „CUDA Version: 13.0“. Installieren Sie PyTorch in PowerShell über. Ändern Sie `130` auf Ihre CUDA-Version – stellen Sie sicher, dass die [Version existiert](https://pytorch.org/) und zu Ihrer CUDA-Treiberversion passt.

{% code overflow="wrap" %}

```bash
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130
```

{% endcode %}

Sie werden sehen:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2Fo4aNeIbILGYvfpjYa1X2%2Fimage.png?alt=media&#x26;token=444d6907-04e0-4d5e-8de5-d8cdcaf85364" alt="" width="563"><figcaption></figcaption></figure>

Versuchen Sie, dies in Python über `python` auszuführen, nachdem PyTorch installiert wurde:

{% code overflow="wrap" %}

```python
import torch
print(torch.cuda.is_available())
A = torch.ones((10, 10), device = "cuda")
B = torch.ones((10, 10), device = "cuda")
A @ B
```

{% endcode %}

Sie sollten eine Matrix aus 10ern sehen. Prüfen Sie außerdem, dass der erste Wert True ist.

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FJkf39Nyfgyt4QmTLGhOx%2Fimage.png?alt=media&#x26;token=2d1a16a6-e524-461a-ac75-a24b6bda333f" alt="" width="375"><figcaption></figcaption></figure>
{% endstep %}

{% step %}
**Unsloth installieren (nur wenn PyTorch funktioniert!)**

{% hint style="danger" %}
**Bestätigen Sie, dass PyTorch einwandfrei funktioniert und läuft – wenn nicht, ist PyTorch beschädigt, und das bedeutet leider möglicherweise, dass auf Ihrem Windows-Rechner die CUDA-Treiber neu installiert werden müssen.**
{% endhint %}

In Powershell (nachdem Sie Python über `exit()` verlassen haben, führen Sie Folgendes aus und warten Sie:

```bash
pip install unsloth
```

{% endstep %}

{% step %}
**Prüfen Sie, ob Unsloth funktioniert**

Verwenden Sie jetzt jedes Skript in [unsloth-notebooks](https://unsloth.ai/docs/de/los-gehts/unsloth-notebooks "mention") (als .py-Datei speichern) oder verwenden Sie das untenstehende einfache Skript:

{% code expandable="true" %}

```python
from unsloth import FastLanguageModel, FastModel
import torch
from trl import SFTTrainer, SFTConfig
from datasets import load_dataset
max_seq_length = 512
url = "https://huggingface.co/datasets/laion/OIG/resolve/main/unified_chip2.jsonl"
dataset = load_dataset("json", data_files = {"train" : url}, split = "train")

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name = "unsloth/gemma-3-270m-it",
    max_seq_length = max_seq_length, # Wählen Sie irgendeinen für langen Kontext!
    load_in_4bit = True,  # 4-Bit-Quantisierung. False = 16-Bit-LoRA.
    load_in_8bit = False, # 8-Bit-Quantisierung
    load_in_16bit = False, # 16-Bit-LoRA
    full_finetuning = False, # Für vollständiges Fine-Tuning verwenden.
    trust_remote_code = False, # Aktivieren, um neue Modelle zu unterstützen
    # token = "hf_...", # verwenden Sie einen, wenn Sie gesperrte Modelle verwenden
)

# Modell-Patching 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, aber = 0 ist optimiert
    bias = "none",    # Unterstützt beliebige, aber = "none" ist optimiert
    # [NEU] „unsloth“ verwendet 30 % weniger VRAM und passt in 2x größere Batch-Größen!
    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 rankstabilisiertes LoRA
    loftq_config = None, # Und LoftQ
)

trainer = SFTTrainer(
    model = model,
    train_dataset = dataset,
    tokenizer = tokenizer,
    args = SFTConfig(
        max_seq_length = max_seq_length,
        per_device_train_batch_size = 2,
        gradient_accumulation_steps = 4,
        warmup_steps = 10,
        max_steps = 60,
        logging_steps = 1,
        output_dir = "outputs",
        optim = "adamw_8bit",
        seed = 3407,
        dataset_num_proc = 1,
    ),
)
trainer.train()
```

{% endcode %}

Sie sollten sehen:

```bash
🦥 Unsloth: Wir werden Ihren Computer patchen, um 2x schnelleres kostenloses Finetuning zu ermöglichen.
🦥 Unsloth Zoo wird jetzt alles patchen, um das Training schneller zu machen!
==((====))==  Unsloth 2026.1.4: Schnelles Gemma3-Patching. Transformers: 4.57.6.
   \\   /|    NVIDIA GeForce RTX 3060. Anzahl GPUs = 1. Max. Speicher: 12.0 GB. Plattform: Windows.
O^O/ \_/ \    Torch: 2.10.0+cu130. CUDA: 8.6. CUDA Toolkit: 13.0. Triton: 3.6.0
\        /    Bfloat16 = WAHR. FA [Xformers = 0.0.34. FA2 = Falsch]
 "-____-"     Kostenlose Lizenz: http://github.com/unslothai/unsloth
Unsloth: Schnelles Herunterladen ist aktiviert – ignorieren Sie Download-Balken, die rot gefärbt sind!
Unsloth: Gemma3 unterstützt SDPA nicht – Wechsel zu schnellem Eager.
Unsloth: `model.base_model.model.model` auf gradienpflichtig setzen
Unsloth: Tokenisierung von ["text"] (num_proc=1):   0%|                 | 0/210289 [00:00<?, ? examples/s]�  Unsloth: Wir werden Ihren Computer patchen, um 2x schnelleres kostenloses Finetuning zu ermöglichen.
🦥 Unsloth: Wir werden Ihren Computer patchen, um 2x schnelleres kostenloses Finetuning zu ermöglichen.
```

Und Training:

<figure><img src="https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FfJalYwpN7ffC88J2dsOQ%2Fimage.png?alt=media&#x26;token=e2129773-9255-4983-b52e-51de5729a7ab" alt="" width="375"><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

### Methode #2 - Docker:

Docker könnte für Windows-Benutzer der einfachste Weg sein, um mit Unsloth zu starten, da keine Einrichtung und keine Abhängigkeitsprobleme erforderlich sind. [**`unsloth/unsloth`**](https://hub.docker.com/r/unsloth/unsloth) ist das einzige Docker-Image von Unsloth. Für [Blackwell](https://unsloth.ai/docs/de/blog/fine-tuning-llms-with-blackwell-rtx-50-series-and-unsloth) und GPUs der 50er-Serie verwenden Sie dasselbe Image – kein separates Image erforderlich.

Für Installationsanweisungen folgen Sie bitte unserer [Docker-Anleitung](https://unsloth.ai/docs/de/blog/how-to-fine-tune-llms-with-unsloth-and-docker), ansonsten hier eine Schnellstart-Anleitung:

{% stepper %}
{% step %}
**Installieren Sie Docker und das NVIDIA Container Toolkit.**

Installieren Sie Docker über [Linux](https://docs.docker.com/engine/install/) oder [Desktop](https://docs.docker.com/desktop/) (sonstige). Dann installieren Sie das [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html#installation):

```bash
export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.17.8-1
sudo apt-get update && sudo apt-get install -y \\
  nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \\
  nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \\
  libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \\
  libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}
```

{% endstep %}

{% step %}
**Führen Sie den Container aus.**

[**`unsloth/unsloth`**](https://hub.docker.com/r/unsloth/unsloth) ist das einzige Docker-Image von Unsloth.

```bash
docker run -d -e JUPYTER_PASSWORD="mypassword" \\
  -p 8888:8888 -p 2222:22 \\
  -v $(pwd)/work:/workspace/work \\
  --gpus all \\
  unsloth/unsloth
```

{% endstep %}

{% step %}
**Greifen Sie auf Jupyter Lab zu**

Gehen Sie zu [http://localhost:8888](http://localhost:8888/) und öffnen Sie Unsloth. Greifen Sie auf die `unsloth-notebooks` -Tabs zu, um Unsloth-Notebooks zu sehen.
{% endstep %}

{% step %}
**Beginnen Sie mit dem Training mit Unsloth**

Wenn Sie neu sind, folgen Sie unserer Schritt-für-Schritt-Anleitung [Fine-Tuning-Anleitung](https://unsloth.ai/docs/de/los-gehts/fine-tuning-llms-guide), [RL-Anleitung](https://unsloth.ai/docs/de/los-gehts/reinforcement-learning-rl-guide) oder speichern/kopieren Sie einfach eines unserer vorgefertigten [Notebooks](https://unsloth.ai/docs/de/los-gehts/unsloth-notebooks).
{% endstep %}

{% step %}
**Docker-Probleme – GPU wird nicht erkannt?**

Versuchen Sie es mit WSL über [#method-2-wsl](#method-2-wsl "mention")
{% endstep %}
{% endstepper %}

### Methode #3 - WSL:

{% stepper %}
{% step %}
**WSL installieren**

Öffnen Sie die Eingabeaufforderung, das Terminal, und installieren Sie Ubuntu. Legen Sie das Passwort fest, falls Sie dazu aufgefordert werden.

```bash
wsl.exe --install Ubuntu-24.04
wsl.exe -d Ubuntu-24.04
```

{% endstep %}

{% step %} <mark style="color:$primary;background-color:orange;">**Wenn Sie (1) NICHT ausgeführt haben, also WSL bereits installiert haben**</mark>**, geben Sie WSL ein, indem Sie `wsl` und ENTER in die Eingabeaufforderung eingeben**

```bash
wsl
```

{% endstep %}

{% step %}
**Python installieren**

{% code overflow="wrap" %}

```bash
sudo apt update
sudo apt install python3 python3-full python3-pip python3-venv -y
```

{% endcode %}
{% endstep %}

{% step %}
**PyTorch installieren**

{% code overflow="wrap" %}

```bash
pip install torch torchvision --force-reinstall --index-url https://download.pytorch.org/whl/cu130
```

{% endcode %}

Wenn Sie auf Berechtigungsprobleme stoßen, verwenden Sie `–break-system-packages` also `pip install torch torchvision --force-reinstall --index-url https://download.pytorch.org/whl/cu130 –break-system-packages`
{% endstep %}

{% step %}
**Unsloth und Jupyter Notebook installieren**

{% code overflow="wrap" %}

```bash
pip install unsloth jupyter
```

{% endcode %}

Wenn Sie auf Berechtigungsprobleme stoßen, verwenden Sie `–-break-system-packages` also `pip install unsloth jupyter –-break-system-packages`
{% endstep %}

{% step %}
**Unsloth über Jupyter Notebook starten**

{% code overflow="wrap" %}

```bash
jupyter notebook
```

{% endcode %}

Dann öffnen Sie unsere Notebooks innerhalb von [unsloth-notebooks](https://unsloth.ai/docs/de/los-gehts/unsloth-notebooks "mention")und laden Sie sie! Sie können auch zu Colab-Notebooks gehen und herunterladen > .ipynb herunterladen und sie laden.

![](https://797013937-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxhOjnexMCB3dmuQFQ2Zq%2Fuploads%2FVbqNWsG2CCHKJJjrnU4s%2Funknown.png?alt=media\&token=854a6d0e-fc84-4e44-bf8e-4bf254801692)
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
Wenn Sie GRPO verwenden oder vLLM verwenden möchten, unterstützt vLLM derzeit Windows nicht direkt, sondern nur über WSL oder Linux.
{% endhint %}

### **Fehlerbehebung /** Erweitert

Für **erweiterte Installationsanweisungen** oder wenn bei Installationen seltsame Fehler auftreten:

1. Installieren Sie `torch` und `triton`. Gehen Sie zu <https://pytorch.org>, um es zu installieren. Zum Beispiel `pip install torch torchvision torchaudio triton`
2. Bestätigen Sie, ob CUDA korrekt installiert ist. Versuchen Sie `nvcc`. Wenn das fehlschlägt, müssen Sie `cudatoolkit` oder CUDA-Treiber installieren.
3. Wenn Sie eine Intel-GPU verwenden, müssen Sie unserer [Intel-Windows-Anleitung](https://unsloth.ai/docs/de/los-gehts/intel#windows-only-runtime-configurations)
4. Installieren Sie `xformers` manuell folgen. Sie können versuchen, `vllm` zu installieren und zu sehen, ob `vllm` erfolgreich ist. Prüfen Sie, ob `xformers` erfolgreich war mit `python -m xformers.info` Gehen Sie zu <https://github.com/facebookresearch/xformers>. Eine weitere Option ist die Installation von `flash-attn` für Ampere-GPUs.
5. Überprüfen Sie sorgfältig, ob Ihre Versionen von Python, CUDA, CUDNN, `torch`, `triton`und `xformers` miteinander kompatibel sind. Die [PyTorch-Kompatibilitätsmatrix](https://github.com/pytorch/pytorch/blob/main/RELEASE.md#release-compatibility-matrix) kann nützlich sein.
6. Installieren Sie abschließend `bitsandbytes` und prüfen Sie es mit `python -m bitsandbytes`
7. Wenn Unsloth Ihre GPU nicht erkennt oder nicht verwendet und Sie unseren Docker-Container unter Windows verwenden, muss Ihre CUDA-Toolkit-Version `nvcc --version` mit der von nvidia-smi auf der Host-GPU angezeigten Version übereinstimmen. Die Unterstützung für Docker-Container unter Windows erfolgt nicht automatisch. [Sie müssen der Docker-Anleitung folgen](https://docs.docker.com/desktop/features/gpu/).

### Unsloth Studio deinstallieren

Um Unsloth Studio unter Windows zu deinstallieren, folgen Sie diesen 4 Schritten:

#### **1. Entfernen Sie die Anwendung**

* Windows (PowerShell): `Remove-Item -Recurse -Force "$HOME\.unsloth\studio\unsloth", "$HOME\.unsloth\studio\studio"`&#x20;

Dadurch wird die Anwendung entfernt, aber Ihre Modell-Checkpoints, Exporte, Historie, Cache und Chats bleiben erhalten.

#### **2. Entfernen Sie Verknüpfungen und Symlinks**

**WSL / Windows (PowerShell):**

```bash
Remove-Item -Force "$HOME\Desktop\Unsloth Studio.lnk"
Remove-Item -Force "$env:APPDATA\Microsoft\Windows\Start Menu\Programs\Unsloth Studio.lnk"
```

#### **3. Entfernen Sie den CLI-Befehl**

**WSL:**

```bash
rm -f ~/.local/bin/unsloth
```

**Windows (PowerShell):** Das Installationsprogramm hat das `Scripts` -Verzeichnis des venv zu Ihrem Benutzer-PATH hinzugefügt. Um es zu entfernen, öffnen Sie Einstellungen → System → Info → Erweiterte Systemeinstellungen → Umgebungsvariablen, suchen Sie `Path` unter Benutzervariablen und entfernen Sie den Eintrag, der auf `.unsloth\studio\...\Scripts`.

#### **4. Alles entfernen (optional)**

Um auch Historie, Cache, Chats, Modell-Checkpoints und Modell-Exporte zu löschen, löschen Sie den gesamten Unsloth-Ordner:

* WSL, Linux: `rm -rf ~/.unsloth`
* Windows (PowerShell): `Remove-Item -Recurse -Force "$HOME\.unsloth"`&#x20;

Beachten Sie, dass heruntergeladene HF-Modell-Dateien separat im Hugging-Face-Cache gespeichert werden – keiner der obigen Schritte entfernt sie. Siehe **Modell-Dateien löschen** unten, wenn Sie diesen Speicherplatz freigeben möchten.
