You need to enable JavaScript to run this app. 本地加载bert-base-cased时BertTokenizer报OSError但BertModel正常
优惠活动
大模型
产品
解决方案
定价
更多

本地加载bert-base-cased时BertTokenizer报OSError但BertModel正常

问题根因

你遇到的报错本质是本地模型文件夹缺少BertTokenizer必需的配套文件,和路径拼写错误没有关系。
BertModel的加载校验逻辑只要求目录下存在config.json和pytorch_model.bin两个文件,所以能正常跑通;但BertTokenizer的加载逻辑是完全独立的,它根本不读取模型权重文件,只校验自身专属的词表、分词配置文件,你当前目录里没有这类文件,自然会触发找不到可加载内容的OSError。

解决操作步骤
  • 首先明确bert-base-cased对应的分词器必备文件:核心必需文件是和当前模型版本完全匹配的vocab.txt(没有这个文件就根本无法初始化BertTokenizer),新版本transformers还会要求配套存在tokenizer_config.json。注意绝对不能混用其他BERT变体的词表,比如把bert-base-uncased的vocab.txt放到bert-base-cased的模型目录里,会导致分词结果和模型预训练的输入分布不匹配,后续推理精度会严重下降。
  • 补全文件的两种实现方式:
    1. 快速补全法:保持网络连通的情况下,直接执行BertTokenizer.from_pretrained('bert-base-cased'),transformers会自动下载分词器需要的全部文件到本地默认缓存目录,等加载成功后,把缓存里对应路径下的vocab.txt、tokenizer_config.json两个文件,复制到你本地的C:\Downloads\bert-pretrained-model文件夹根目录,和已有的config.json、pytorch_model.bin放在同一层级即可。
    2. 纯离线补全法:找到和你手里pytorch_model.bin版本完全一致的分词器资源,手动把上述两个必备文件放到目标文件夹即可,全程不需要改动已有的模型权重和配置文件。
  • 核对代码里的加载路径:你提供的报错栈里,实际运行的代码路径写的是r'\Downloads\bert-pretrained-model',和你一开始提到的C:\Downloads\bert-pretrained-model路径不一致,要确保代码里写的路径,和你实际存放模型、分词文件的文件夹路径完全匹配,避免因为路径指向错误再次触发同类报错。

内容的提问来源于stack exchange,提问作者Nithin Reddy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.11.01 03:45:05