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

如何将Hugging Face的IndicWhisper模型转换为单个.pt文件?

解决IndicWhisper模型转单个.pt文件的问题

直接将pytorch_model.bin重命名为.pt肯定不行,因为这个文件只是模型的权重参数字典,不是完整的PyTorch模型实例。你需要用transformers库先加载完整的模型(结合本地的配置文件),再将整个模型序列化保存为单个.pt文件。

步骤1:确保依赖安装

先确认你已经安装了必要的库:

pip install torch transformers

步骤2:转换脚本示例

假设你的模型文件都放在./indicwhisper-local目录下(替换成你实际的本地路径),用下面的脚本完成转换:

import torch
from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor

# 从本地加载模型和处理器
model = AutoModelForSpeechSeq2Seq.from_pretrained("./indicwhisper-local")
processor = AutoProcessor.from_pretrained("./indicwhisper-local")

# 保存完整模型和处理器到单个.pt文件(打包在一起更方便项目集成)
torch.save({"model": model, "processor": processor}, "./indicwhisper_single.pt")

步骤3:在项目中加载使用

转换完成后,你可以在项目里这样加载:

import torch
from transformers import AutoModelForSpeechSeq2Seq, AutoProcessor

# 加载单个.pt文件
checkpoint = torch.load("./indicwhisper_single.pt")
model = checkpoint["model"]
processor = checkpoint["processor"]

# 之后就可以正常使用模型做推理了,比如:
# inputs = processor(audio, return_tensors="pt")
# predicted_ids = model.generate(**inputs)
# transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)

关键说明

  • AutoModelForSpeechSeq2Seq是Whisper系列模型的通用加载类,IndicWhisper基于Whisper,所以可以直接用这个类加载。
  • 把模型和处理器打包在一起保存,能避免项目中还要单独处理config.json等文件,集成更方便。
  • 如果只需要模型权重的话,也可以单独保存model.state_dict(),但这样后续加载时还是需要重新构建模型结构,不如直接保存完整模型实例省心。

内容的提问来源于stack exchange,提问作者Dan Mathews Robin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 02:04:56