调用tokenizer.push_to_hub上传至Hugging Face仓库遇TypeError错误求助
解决Wav2Vec2CTCTokenizer上传Hugging Face仓库时的TypeError问题
问题场景
我在制作语音识别模型时,尝试将自定义的Wav2Vec2CTCTokenizer上传至个人Hugging Face仓库Foxasdf/ArabicTextToSpeech。已完成vocab.json创建、tokenizer初始化及账号登录操作,但调用tokenizer.push_to_hub(repo_name)时出现错误:
TypeError: create_repo() got an unexpected keyword argument 'organization'
使用notebook_login登录后问题仍存在。
相关代码如下:
vocab_dict["|"] = vocab_dict[" "] del vocab_dict[" "] vocab_dict["[UNK]"] = len(vocab_dict) vocab_dict["[PAD]"] = len(vocab_dict) len(vocab_dict)
import json with open('vocab.json', 'w') as vocab_file: json.dump(vocab_dict, vocab_file)
from transformers import Wav2Vec2CTCTokenizer tokenizer = Wav2Vec2CTCTokenizer.from_pretrained("./", unk_token="[UNK]", pad_token="[PAD]", word_delimiter_token="|")
from huggingface_hub import login login('Token') repo_name = "Foxasdf/ArabicTextToSpeech" add_to_git_credential=True tokenizer.push_to_hub(repo_name)
解决方案
这个错误的核心原因是transformers或huggingface_hub版本过低,旧版本的create_repo方法不支持organization参数,而新版push_to_hub在处理个人仓库时会传递该参数,导致兼容性问题。
- 升级依赖库
执行以下命令将transformers和huggingface_hub升级到最新稳定版:
pip install --upgrade transformers huggingface_hub
验证仓库名称格式
你的仓库名Foxasdf/ArabicTextToSpeech是标准的个人仓库格式(用户名/仓库名),无需额外指定组织参数。如果仓库尚未创建,push_to_hub会自动为你创建,确保你的账号拥有仓库创建权限即可。优化登录方式(可选)
避免硬编码token,改用交互式登录方式,确保登录状态有效:
from huggingface_hub import notebook_login notebook_login()
完成以上步骤后,重新执行tokenizer.push_to_hub(repo_name)即可正常上传。
内容的提问来源于stack exchange,提问作者FOXASDF
相关产品推荐
相关产品推荐

