You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将自定义训练的Whisper模型.safetensors转为ggml等格式?

解决方案

一、将.safetensors转为PyTorch格式(pytorch_model.bin)或Keras格式(.h5)

Whisper基于Hugging Face Transformers训练,safetensors是默认的安全权重格式,直接用Transformers库即可完成格式转换:

1. 导出为PyTorch原生格式(pytorch_model.bin)

先安装依赖(未安装时执行):

pip install transformers safetensors torch

运行以下Python代码:

from transformers import WhisperForConditionalGeneration

# 加载本地safetensors格式模型
model = WhisperForConditionalGeneration.from_pretrained("你的模型本地目录路径", local_files_only=True)

# 保存为pytorch_model.bin格式
model.save_pretrained("目标保存目录", safe_serialization=False)

执行后,目标目录会生成pytorch_model.bin及配套配置文件。

2. 导出为Keras格式(tf_model.h5)

先安装TensorFlow相关依赖:

pip install tensorflow transformers safetensors

运行转换代码:

from transformers import TFWhisperForConditionalGeneration, WhisperForConditionalGeneration

# 加载本地safetensors模型
pt_model = WhisperForConditionalGeneration.from_pretrained("你的模型本地目录路径", local_files_only=True)

# 转换为TensorFlow兼容格式
tf_model = TFWhisperForConditionalGeneration.from_pretrained("你的模型本地目录路径", from_pt=True, local_files_only=True)

# 保存为.h5文件
tf_model.save_pretrained("目标保存目录", save_format="h5")

二、将.safetensors转为ggml格式(用于whisper.cpp)

whisper.cpp提供官方转换脚本,步骤如下:

1. 准备环境

  • 获取whisper.cpp代码仓库并进入目录
  • 安装依赖:
pip install transformers safetensors torch numpy

2. 执行转换

确保你的safetensors模型目录包含完整配置文件(如config.json、tokenizer.json,训练时自动生成),运行转换脚本:

python convert.py /path/to/your/safetensors-model --outtype q4_0 --outfile ./models/ggml-your-model-q4_0.bin

参数说明:

  • --outtype:指定量化类型,可选q4_0(常用4位量化)、q5_0、fp16等
  • --outfile:设置输出ggml模型的路径和文件名

若自定义模型存在tokenizer匹配问题,可先加载对应基础Whisper模型的tokenizer后再执行转换。

内容的提问来源于stack exchange,提问作者sin mostcore

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 06:07:47