模型: RexUniNLU零样本通用自然语言理解-中文-base
使用README.md
中提供的方法:
cd rex
pip install -r reqs.txt
. config.ini && bash scripts/finetune.sh
执行成功后, 添加model
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
from modelscope.models import Model
model = Model.from_pretrained('/mnt/workspace/.cache/modelscope/damo/log/debug')
semantic_cls = pipeline('rex-uninlu', model=model)
执行会报如下错误:
2024-01-04 11:35:03,299 - modelscope - INFO - initialize model from /mnt/workspace/.cache/modelscope/damo/log/debug
Traceback (most recent call last):
File "/mnt/workspace/test.py", line 5, in <module>
model = Model.from_pretrained('/mnt/workspace/.cache/modelscope/damo/log/debug')
File "/opt/conda/lib/python3.10/site-packages/modelscope/models/base/base_model.py", line 167, in from_pretrained
raise FileNotFoundError(
FileNotFoundError: `configuration.json` file not found.
从你提供的错误信息来看,当尝试从本地路径 /mnt/workspace/.cache/modelscope/damo/log/debug
加载预训练模型时,ModelScope库找不到模型所需的 configuration.json
文件。
configuration.json
文件包含了模型结构的重要信息,如模型类型、层的数量、隐藏单元大小等。加载预训练模型时,此文件是必不可少的组成部分。
因此,解决这个问题的方法包括:
检查路径:
确保指定的路径下确实包含完整的模型权重和配置文件。一个典型的预训练模型目录应该至少包含以下两个文件:
configuration.json
.bin
或.pt
扩展名)模型保存方式:
在微调过程中,确保正确地保存了模型及其配置文件。当你运行finetune脚本时,它应当不仅保存了模型权重,还应当保存了模型配置到相应的目录下。
重新导出模型:
如果模型在微调后没有正确地打包成可加载的形式,你可以尝试重新导出模型,并确保导出过程中包含了配置文件。