在下载好的ddparser\ernie_init_.py中有个对版本的检查,源代码如下:
paddle_version = [int(i) for i in paddle.version.split('.')]
if paddle_version[1] < 7:
raise RuntimeError('paddle-ernie requires paddle 1.7+, got %s' %paddle.version)
按照这个代码逻辑,当paddle更新到2.0.0+的时候,会导致paddle_version[1]<7的问题,这其实是不合理的,同时paddle_version = [int(i) for i in paddle.version.split('.')] 这句中有可能因为版本中附带字母导致int(i)编译报错,因此将源代码修改为:
paddle_version = [i for i in paddle.version.split('.')]
if 10 * int(paddle_version[0]) +int(paddle_version[1]) < 17:
raise RuntimeError('paddle-ernie requires paddle 1.7+, got %s' %
paddle.version)
其中,红色部分为修改之后的内容。
保存之后在python编译环境中输入from ddparser import DDParser 显示无误,问题解决。