如何从本地磁盘加载HuggingFace模型及相关资源?
从本地磁盘加载SentenceTransformer模型的解决方案
步骤1:在联网环境下保存模型到本地
先在能访问外网的机器上,将目标模型下载并完整保存到本地目录:
from sentence_transformers import SentenceTransformer # 加载线上目标模型 model = SentenceTransformer('bert-base-nli-mean-tokens') # 保存到本地指定路径 model.save('./local_bert_nli_model')
步骤2:在防火墙后的服务器加载本地模型
把保存好的模型目录复制到内网服务器后,直接将本地目录路径传入SentenceTransformer构造函数即可完成加载,不需要使用load_pretrained:
from sentence_transformers import SentenceTransformer # 传入本地模型目录路径 model = SentenceTransformer('./local_bert_nli_model') # 正常生成句向量 sentence_embeddings = model.encode(sentences)
注意事项
- 确保本地模型目录包含完整文件:必须涵盖模型权重、分词器配置、SentenceTransformer专属的
modules.json等所有必要文件,缺一不可。 - 若手动从Hugging Face仓库下载文件,需保证本地文件结构与线上仓库完全一致,所有文件放置在同一目录下。
内容的提问来源于stack exchange,提问作者Droid-Bird
相关产品推荐
相关产品推荐

