工作目录问题:'from mindformers import Trainer'报错ModuleNotFoundError:No module named ' mindformers'

1 系统环境

硬件环境(Ascend/GPU/CPU): Ascend
MindSpore版本: 2.1
MF版本: 0.7
执行模式(PyNative/ Graph): 不限

2 报错信息

2.1 问题描述

将待迁移模型wizardcoder放到mindformers/research文件夹下,运行run_wizardcoder.py文件时,报错“no module named ‘mindformers’”

2.2 报错信息

Traceback (most recent call last):  
  File "run_wizardcoder .py", line 20, in <module>  
    from mindformers import Trainer  
ModuleNotFoundError:No module named ' mindformers'

3 根因分析

这种情况是因为工作目录问题,因为运行代码在research文件夹下,找不到mindformers模块在哪个路径。

4 解决方案

需要在run_wizardcoder.py代码开头添加路径引用语句。

import os  
import sys  
sys.path.append(os.path.abspath("../.. "))

需要注意第3行,因为mindformers文件夹在当前run_wizardcoder.py文件的外两层处,所以需要使用"../.."来表示这个路径。