safetensor转gguf
时间: 2025-06-06 09:56:34 浏览: 29
### 如何将 Safetensors 文件转换为 GGUF 格式
#### 方法一:使用 `convert_hf_to_gguf.py` 脚本
可以通过 llama.cpp 提供的脚本 `convert_hf_to_gguf.py` 将 Hugging Face 的模型从 SafeTensor 格式转换为 GGUF 格式。该方法适用于大多数基于 Hugging Face 架构的大规模语言模型。
执行以下命令来完成转换操作:
```bash
python convert_hf_to_gguf.py \
--outtype f16 \
--outfile /path/to/output/model.gguf \
/path/to/input/safetensors_model/
```
其中,参数说明如下:
- `--outtype`: 指定输出数据类型的精度 (例如, `f16`, 表示半精度浮点数)[^1]。
- `--outfile`: 输出文件路径以及名称。
- 输入路径应指向存储 `.safetensors` 文件所在的目录[^1]。
#### 方法二:通过自定义 Python 脚本实现转换
另一种方式是利用社区开发者的工具如 Flux 所提供的 `convert.py` 脚本来处理类似的转换需求:
运行下面这条指令可以将特定的安全张量格式文件转化为 FP16 或者 BF16 类型的新格式:
```bash
python tools/convert.py --src E:\models\unet\flux1-dev.safetensors --dst F:\converted_models\
```
这里的选项解释如下:
- `--src`: 原始 .safetensors 文件的位置;
- `--dst`: 新生成 gguf 文件的目标储存位置;注意实际应用时需调整具体路径以匹配个人环境设置[^2]。
#### 方法三:手动调用量化程序进一步优化
如果希望对已经获得的基础 gguf 文件实施额外层次上的压缩或者性能改进,则可能需要用到专门设计用于此类任务的应用软件包比如 llama-quantize 实用程序来进行更深层次定制化加工工作流程实例演示如下所示:
假设有一个名为 anything-v5-PrtRE-F16 的预训练基础模型存在本地磁盘驱动器D分区下的 AImodels 子文件夹当中,并打算将其重新编码成为采用 Q4_K_S 方案精简后的版本形式存放在相同位置下新创建出来的子目录结构里去的话,那么就可以按照这种方式下达相应的工作指示给计算机系统让它自动帮我们完成整个繁杂耗时的过程而无需人工干预太多细节部分了:
```bash
llama-quantize.exe D:\AImodels\llama\anything-v5-PrtRE-F16.gguf D:\AImodels\llama\anything-v5-PrtRE-Q4_K_S.gguf Q4_K_S
```
这一步骤主要针对那些追求极致效率同时又不介意牺牲一点计算精确度换取更大空间节省比例情况特别有用处的情形之下才会考虑使用的高级技巧之一而已[^5]。
#### 注意事项
无论采取哪种途径进行上述提到的各种不同风格之间的相互转变动作之前都务必要确认清楚自己当前所拥有资源条件能否满足对应最低硬件配置要求标准才行哦! 否则很可能因为缺乏足够的内存容量或者其他原因而导致最终失败告终的结果发生呢~
阅读全文
相关推荐



















