28 lines
750 B
Python
28 lines
750 B
Python
"""Emit the uv commands needed to install Unsloth without touching torch."""
|
|
|
|
from __future__ import annotations
|
|
|
|
try:
|
|
import torch
|
|
except ImportError as exc: # pragma: no cover
|
|
raise ImportError("Install torch via `pip install torch`") from exc
|
|
|
|
from packaging.version import Version as V
|
|
|
|
torch_version = V(torch.__version__.split("+")[0])
|
|
|
|
# Unsloth supports torch >= 2.6.0 via the 2025.9 builds.
|
|
MIN_TORCH = V("2.6.0")
|
|
|
|
if torch_version < MIN_TORCH:
|
|
raise RuntimeError(
|
|
f"Torch {torch.__version__} detected, but Unsloth requires >= {MIN_TORCH}."
|
|
)
|
|
|
|
commands = (
|
|
"uv pip install --system --no-deps unsloth-zoo==2025.9.12 && "
|
|
'uv pip install --system --no-deps "unsloth[huggingface]==2025.9.9"'
|
|
)
|
|
|
|
print(commands)
|