3 步下载大语言模型:text-generation-webui 模型下载工具手把手教程
【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen
几十个 GB 的权重文件下到 99% 突然断线,重新下载又从头开始;仓库里十几个量化版本,不知道哪几个文件才是真正需要的。这类问题在 text-generation-webui 里有一个专门的工具:download-model.py。它内置断点续传、自动重试和 SHA256 校验,一条命令就能把模型完整落到本地,本文带你用 5 分钟跑通它。
它到底帮你省了什么
- 断点续传:下载中断后重跑同一命令,自动从已下载的字节处继续
- 智能筛选:同时存在 PyTorch 和 Safetensors 时只下 Safetensors;GGUF 仓库默认只下 Q4_K_M 量化版本,不会傻乎乎地拉几个大文件
- 自动重试:单个文件出错最多重试 7 次,间隔按指数退避递增
- 完整性校验:
--check参数逐个比对 SHA256,下载信息写入huggingface-metadata.txt - 自动归类:模型存到 user_data/models/,LoRA 自动识别并存到 user_data/loras/
五分钟上手
先拿到项目代码,然后在项目根目录执行下载命令:
git clone https://gitcode.com/GitHub_Trending/te/text-generation-webui cd text-generation-webuipython download-model.py facebook/opt-1.3b第二条命令就是全部主流程。终端会显示每个文件的下载进度,完成后打印Download of N files to ... completed.。两个最实用的可选参数:
python download-model.py facebook/opt-1.3b --threads 8 python download-model.py facebook/opt-1.3b --specific-file model.gguf--threads控制并发文件数(默认 4),带宽充裕时调高可提速;--specific-file只下载指定文件,适合 GGUF 单文件场景,文件会直接存进user_data/models供 llama.cpp 加载器使用。
怎么挑:模型格式与体量决策表
新手最常见的困惑是"几十个 GB 到底挑哪个版本"。原则只有一条:先按显存定格式,再按量化定大小。
| 硬件条件 | 推荐格式 | 说明 |
|---|---|---|
| 8GB 及以下显存,或纯 CPU | GGUF(Q4_K_M) | 体积小、兼容性好,WebUI 的 llama.cpp 加载器直接加载 |
| 8~16GB 显存 | EXL3 / 4-bit Transformers | 仓库名一般带 EXL3,或选带load_in_4bit选项的 Safetensors |
| 16GB 以上显存 | 全精度 Safetensors | 精度最高,文件名多为model.safetensors |
几个判断技巧:仓库名带 GGUF 的基本是 GGUF 格式;model-00001-of-00004.safetensors这类分片文件,脚本会全部下载,不用担心漏文件。各加载器的详细参数见 docs/04 - Model Tab.md。
踩坑与自救
1. 下载中断后不想重来
- 现象:终端断开、网络波动,文件下了一半
- 原因:大文件传输时间本身就长,中途断连是常态
- 解决:直接重跑同一命令即可,脚本会用
Range请求从磁盘已有字节处续传,不需要任何额外参数
2. 想确认下载的文件没损坏
- 现象:模型加载报错,怀疑权重不完整
- 原因:网络层丢字节但进度看起来是 100%
- 解决:
python download-model.py facebook/opt-1.3b --check逐个输出Checksum validated即通过。
3. 校验失败,提示 Invalid checksums
- 现象:
--check后打印Checksum failed及文件名 - 原因:本地文件确实损坏或不完整
- 解决:加
--clean强制丢弃本地残片重新下载:
python download-model.py facebook/opt-1.3b --clean4. 磁盘空间不足或想指定存放位置
- 现象:提示写入失败,或默认盘空间不够
- 原因:默认全部落到
user_data/models下 - 解决:用
--output /path/to/models指定任意目录,或用--model-dir指定存放父目录
进阶与生产建议
- 生产环境定期跑
--check验证完整性,配合--clean重建损坏文件,形成固定巡检流程 - 脚本读取
HF_ENDPOINT、HF_TOKEN等环境变量(见 download-model.py 第 29 行),内网镜像源或私有仓库可直接通过环境变量切换 - 命令行不是唯一入口:启动 WebUI 后,Model 标签页的 "Download model or LoRA" 区域调用的是同一个下载模块(modules/ui_model_menu.py),可以点 "Get file list" 先浏览文件清单再选文件下载,更适合不熟悉模型仓库名的新手
提示:脚本的完整参数列表可以运行
python download-model.py --help查看,包括--branch、--exclude-pattern、--max-retries等,本文只挑了最常用的几个。
总结
download-model.py把"挑文件、下文件、验文件、归目录"这四件事压缩成了一条命令,断点和校验也都替你做好了。下一步:克隆仓库后,用python download-model.py facebook/opt-1.3b下载你的第一个模型,打开 WebUI 加载它,跑通从下载到对话的完整闭环。
【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考