打包pipeline工程,显示错误 KeyError: 'multi-modal-embedding is not in the pipelines registry group multi-modal-embedding. Please make sure the correct version of ModelScope library is used.'
根据您提供的错误信息 KeyError: 'multi-modal-embedding is not in the pipelines registry group multi-modal-embedding. Please make sure the correct version of ModelScope library is used.'
,这表明在打包或部署Pipeline工程时,系统未能正确识别 multi-modal-embedding
模型或其相关配置。以下是针对该问题的详细分析和解决步骤:
该错误通常由以下几种情况引起: - 模型未正确注册:multi-modal-embedding
模型可能未在当前使用的ModelScope库中注册,或者版本不匹配。 - 依赖库版本问题:使用的ModelScope库版本可能过旧或不兼容,导致无法加载指定的Pipeline。 - 配置文件错误:Pipeline配置文件中可能存在拼写错误或字段缺失,导致系统无法正确解析。
确保您使用的是最新版本的ModelScope库。可以通过以下命令更新库:
pip install -U modelscope
如果已安装最新版本但仍报错,请尝试卸载后重新安装:
pip uninstall modelscope
pip install modelscope
确认 multi-modal-embedding
模型是否已被ModelScope支持。您可以通过以下命令列出所有支持的Pipeline:
from modelscope.pipelines import pipeline
print(pipeline.list_available())
如果 multi-modal-embedding
不在列表中,说明该模型尚未被支持,您需要联系ModelScope团队或选择其他替代模型。
确保Pipeline配置文件中正确填写了模型名称和相关参数。例如,参考知识库中的BGE-M3模型配置,以下是一个正确的Pipeline配置示例:
{
"model_name": "bge_m3_model",
"model_path": "huggingface://BAAI/bge-m3",
"task": "FEATURE_EXTRACTION",
"algorithm": "BGE_M3",
"settings": {
"instance_count": "2"
}
}
请检查您的配置文件是否符合类似格式,并确保 model_name
和 model_path
字段与实际模型一致。
如果您在代码中直接调用Pipeline,请确保代码逻辑无误。以下是一个标准的Pipeline调用示例:
from modelscope.pipelines import pipeline
# 初始化Pipeline
pipe = pipeline('feature-extraction', model='BAAI/bge-m3')
# 测试输入
result = pipe('测试文本')
print(result)
如果上述代码运行失败,请检查模型路径是否正确,以及是否需要额外的认证信息(如用户名和密码)。
如果以上步骤均无法解决问题,建议联系阿里云技术支持团队,提供以下信息以便快速定位问题: - 错误日志的完整内容。 - 使用的ModelScope库版本。 - Pipeline配置文件或代码片段。
inputFields
和 outputFields
必须与创建向量索引时的字段保持一致。通过以上步骤,您应能够解决 multi-modal-embedding
模型未注册的问题。如果仍有疑问,请随时提供更多上下文信息以便进一步协助。您可以复制页面截图提供更多信息,我可以进一步帮您分析问题原因。