在服务器,通过 transformers 库加载模型:
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("emilyalsentzer/Bio_ClinicalBERT")
model = AutoModel.from_pretrained("emilyalsentzer/Bio_ClinicalBERT")
类似的代码,都会有如下报错(因为无法链接到hugging face网址):
我们只能在本地下载模型上传到服务器后,再进行加载。(本地也是同样的方式,只是不需要上传到服务器了)具体操作如下:
1. 搭梯子去hugging face官网:Hugging Face – The AI community building the future.
2. 输入你想要的模型,找到对应的模型。
3. 点进 Files and versions,可以看到模型权重。下载自己需要的版本,我需要的是pytorch版本。
4. 最好下载一下另外两个文件。注意下载后要放在同一文件夹下,同时不要改文件名和文件格式。
5. 将代码中的模型名字改成到文件夹的路径就行(程序会自行搜索文件夹里面对应名字的权重)。
tokenizer = AutoTokenizer.from_pretrained("路径/Bio_ClinicalBERT")
model = AutoModel.from_pretrained("路径/Bio_ClinicalBERT")
#如果有用上configue文件:
tokenizer = BertTokenizer.from_pretrained(config['text_encoder'])
#就将configue文件下对应的名字改成路径就行。
text_encoder:'emilyalsentzer/Bio_ClinicalBERT' --> text_encoder: '路径/Bio_ClinicalBERT'
6. 完成上述,假设出现以下错误:检查到文件夹的路径,以及从hugging face上下载的文件格式没有发生改变。
- TypeError: expected str, bytes or os.PathLike object, not NoneType
- UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte