一个transformers报错

前提

我们在使用huggiface transformers时, 有时会报错
transformers报错如下:

1
2
    raise ValueError("got_ver is None")
ValueError: got_ver is None

错误分析

这是由于transformers使用时,会检查需要依赖的依赖包版本是否满足要求,使用的是importlib_metadata库,
没有获取到给定的包的名字的版本号,例如pkg是numpy,而numpy安装不正确,或者importlib_metadata有问题,获取numpy的版本为None,那么就报错如上,got_ver = importlib_metadata.version(pkg)

解决方法

请查看是否混用了conda和pip,混用是没有问题的,但是有时它们还是会有部分兼容性问题,我报错的原因是importlib_metadata无法检查到conda安装的numpy的版本,改成使用pip重新安装numpy,然后手动测试是否能成功检查版本

1
2
3
4
5
python
>>> import importlib_metadata
>>> importlib_metadata.version('numpy')
'1.23.0'
>>>

如果能够检查到,说明问题解决


一个transformers报错
https://johnson7788.github.io/2022/07/04/%E4%B8%80%E4%B8%AAtransformers%E6%8A%A5%E9%94%99/
作者
Johnson
发布于
2022年7月4日
许可协议