使用Hugging Face Transformers情感分析时遇Numpy不可用问题及解决
HuggingFace情感分析代码报错与解决过程
运行代码
from transformers import pipeline classifier = pipeline('sentiment-analysis') res = classifier("I Love Python.'") print(res)
初始报错信息
未指定模型,默认使用distilbert-base-uncased-finetuned-sst-2-english模型(版本af0f99b)。生产环境中使用Pipeline时不指定模型名和版本的做法不推荐。 C:\Users\omran\AppData\Local\Programs\Python\Python310\lib\site-packages\torch\serialization.py:871: 用户警告:初始化NumPy失败:模块编译时依赖的API版本为0x10,但当前NumPy版本为0xf(内部触发位置:..\torch\csrc\utils\tensor_numpy.cpp:68.) obj = cast(Storage, torch._UntypedStorage(nbytes)) Traceback (most recent call last): File "f:\AIAR\yooo\xox.py", line 5, in <module> res = classifier("I've been waiting for a HuggingFace course my whole life.'") File "C:\Users\omran\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\pipelines\text_classification.py", line 138, in __call__ result = super().__call__(*args, **kwargs) File "C:\Users\omran\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\pipelines\base.py", line 1067, in __call__ return self.run_single(inputs, preprocess_params, forward_params, postprocess_params) File "C:\Users\omran\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\pipelines\base.py", line 1075, in run_single outputs = self.postprocess(model_outputs, **postprocess_params) File "C:\Users\omran\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\pipelines\text_classification.py", line 183, in postprocess outputs = outputs.numpy() 运行时错误:NumPy不可用
备注:已多次尝试,忽略pip freeze输出内容
更新后的输出信息
未指定模型,默认使用distilbert-base-uncased-finetuned-sst-2-english模型(版本af0f99b)。生产环境中使用Pipeline时不指定模型名和版本的做法不推荐。 2022-08-14 18:45:12.106975: I tensorflow/core/platform/cpu_feature_guard.cc:193] 此TensorFlow二进制文件已通过oneAPI深度神经网络库(oneDNN)优化,在性能关键操作中将使用以下CPU指令:AVX AVX2 如需在其他操作中启用这些指令,请使用合适的编译器标志重新编译TensorFlow。 2022-08-14 18:45:12.667076: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1532] 创建设备 /job:localhost/replica:0/task:0/device:GPU:0,显存1339 MB:设备ID 0,名称NVIDIA GeForce MX230,PCI总线ID 0000:01:00.0,计算能力6.1 初始化TFDistilBertForSequenceClassification时使用了所有模型检查点层。 TFDistilBertForSequenceClassification的所有层均从distilbert-base-uncased-finetuned-sst-2-english模型的检查点初始化。 如果你的任务与该检查点模型的训练任务类似,你可以直接使用TFDistilBertForSequenceClassification进行预测,无需进一步训练。
最终预期输出
[{'label': 'POSITIVE', 'score': 0.9973993301391602}]
(注:输出结果表示文本为正面情感,置信度约为0.9974)
内容的提问来源于stack exchange,提问作者Om. Managements
相关产品推荐
相关产品推荐

