Problem
The llamafactory dependency version is inconsistent across three places:
| Location |
Current State |
Issue |
| README.md (line 93) |
pip install llamafactory==0.9.3 |
Fixed to 0.9.3 |
| pyproject.toml (line 29) |
dynamic = ["dependencies"] |
Not declared as formal dependency |
| .github/workflows/test.yml (line 57) |
uv pip install llamafactory |
Installs latest, no version pin |
Why This Matters
- Users follow README → install 0.9.3
- CI installs latest → tests may pass but code breaks for users
- pyproject.toml doesn't declare it →
pip install -e . doesn't install it
- llamafactory API changes → breakage happens silently
Solution
- Add to pyproject.toml as a formal dependency with version range
- Pin CI to the same version as README
- Document the supported llamafactory version range
Suggested Change
# pyproject.toml
dependencies = [
"llamafactory>=0.9.3,<0.10.0", # pin to minor version
]
# .github/workflows/test.yml
- uv pip install llamafactory==0.9.3 # match README
Or consider using a requirements.txt for exact version pinning.