结论先说:不是你的问题,是 v0.6.3 这个版本本身就没有把 llamafactory-cli 写到入口脚本里,所以装完也不会生成那个可执行文件。
一、为什么 0.6.3 没有 llamafactory-cli
-
LLaMA Factory 在 0.6.x 时期 还叫 llmtuner ,
pyproject.toml/setup.py里:- 包名:llmtuner
- 控制台入口:没有写
llamafactory-cli(后来 0.8+ 才统一加上)
-
你现在:
Successfully installed llmtuner-0.6.3说明装的是 llmtuner,不是后来的 llamafactory。
-
所以:
yamlbash: llamafactory-cli: No such file or directory完全正常,0.6.3 本来就没有这个命令。
二、为什么 0.8.3 能装上并能调用
- 从 0.8+ 开始 :
-
项目改名:llmtuner → llamafactory
-
setup.py加入:pythonconsole_scripts = [ "llamafactory-cli = llamafactory.cli:main" ] -
安装后自动生成
llamafactory-cli可执行文件。
-
- 所以你切到 v0.8.3 就能用
llamafactory-cli。
三、0.6.3 怎么用(不用 llamafactory-cli)
在 0.6.3(llmtuner)时代,直接用 python 调用:
bash
# 进入源码目录
cd ~/llama-factory
# 训练(等价于后来的 llamafactory-cli train)
python src/train_bash.py examples/train_lora/xxx.yaml
# 聊天
python src/cli_demo.py
四、你现在两条路
-
继续用 0.6.3(适配 DTK/triton)
-
忘掉
llamafactory-cli,用:bashpython src/train_bash.py ...
-
-
升到 0.8.3+(有 llamafactory-cli)
- 但要确认:你的 triton-2.1.0+das1.0 能不能兼容 0.8.x。
五、一句话总结
- 0.6.3 = llmtuner → 无 llamafactory-cli
- 0.8.3+ = llamafactory → 有 llamafactory-cli
- 不是你操作错,是版本差异。
要不要我给你一份可直接复制的 0.6.3 常用启动命令(训练/聊天/导出)?