Zur Installation vLLM und Unsloth zusammen, machen Sie:
Um die neueste Hauptverzweigung von Unsloth zu installieren, machen Sie:
Für Installationen mit venv und virtuellen Umgebungen um Ihre Installation zu isolieren, damit Systempakete nicht beschädigt werden, und um irreparablen Schaden an Ihrem System zu reduzieren, verwenden Sie venv:
Wenn Sie Unsloth in Jupyter, Colab oder anderen Notebooks installieren, achten Sie darauf, dem Befehl !voranzustellen. Das ist bei Verwendung eines Terminals nicht nötig
Python 3.13 wird jetzt unterstützt!
Deinstallieren oder neu installieren
Wenn weiterhin Abhängigkeitsprobleme mit Unsloth auftreten, haben viele Nutzer sie behoben, indem sie Unsloth zwangsweise deinstalliert und neu installiert haben:
Pip ist etwas komplexer, da es Abhängigkeitsprobleme gibt. Der pip-Befehl ist unterschiedlich für torch 2.2,2.3,2.4,2.5 und CUDA-Versionen.
Für andere torch-Versionen unterstützen wir torch211, torch212, torch220, torch230, torch240 und für CUDA-Versionen unterstützen wir cu118 und cu121 und cu124. Für Ampere-Geräte (A100, H100, RTX3090) und höher verwenden Sie cu118-ampere oder cu121-ampere oder cu124-ampere.
Zum Beispiel, wenn Sie torch 2.4 und CUDA 12.1haben, verwenden Sie:
Ein weiteres Beispiel: Wenn Sie torch 2.5 und CUDA 12.4haben, verwenden Sie:
Weitere Beispiele:
Oder führen Sie unten in einem Terminal aus, um den optimalen pip-Installationsbefehl zu erhalten:
Oder führen Sie das Folgende manuell in einer Python-REPL aus:
# Unter der Apache License, Version 2.0 (die "License") lizenziert
try: import torch
except: raise ImportError('Installieren Sie torch über `pip install torch`')
from packaging.version import Version as V
import re
v = V(re.match(r"[0-9\.]{3,}", torch.__version__).group(0))
cuda = str(torch.version.cuda)
is_ampere = torch.cuda.get_device_capability()[0] >= 8
USE_ABI = torch._C._GLIBCXX_USE_CXX11_ABI
if cuda not in ("11.8", "12.1", "12.4", "12.6", "12.8", "13.0"): raise RuntimeError(f"CUDA = {cuda} wird nicht unterstützt!")
if v <= V('2.1.0'): raise RuntimeError(f"Torch = {v} ist zu alt!")
elif v <= V('2.1.1'): x = 'cu{}{}-torch211'
elif v <= V('2.1.2'): x = 'cu{}{}-torch212'
elif v < V('2.3.0'): x = 'cu{}{}-torch220'
elif v < V('2.4.0'): x = 'cu{}{}-torch230'
elif v < V('2.5.0'): x = 'cu{}{}-torch240'
elif v < V('2.5.1'): x = 'cu{}{}-torch250'
elif v <= V('2.5.1'): x = 'cu{}{}-torch251'
elif v < V('2.7.0'): x = 'cu{}{}-torch260'
elif v < V('2.7.9'): x = 'cu{}{}-torch270'
elif v < V('2.8.0'): x = 'cu{}{}-torch271'
elif v < V('2.8.9'): x = 'cu{}{}-torch280'
elif v < V('2.9.1'): x = 'cu{}{}-torch290'
elif v < V('2.9.2'): x = 'cu{}{}-torch291'
else: raise RuntimeError(f"Torch = {v} ist zu neu!")
if v > V('2.6.9') and cuda not in ("11.8", "12.6", "12.8", "13.0"): raise RuntimeError(f"CUDA = {cuda} wird nicht unterstützt!")
x = x.format(cuda.replace(".", ""), "-ampere" if False else "") # is_ampere ist aufgrund von flash-attn defekt
print(f'pip install --upgrade pip && pip install --no-deps git+https://github.com/unslothai/unsloth-zoo.git && pip install "unsloth[{x}] @ git+https://github.com/unslothai/unsloth.git" --no-build-isolation')