pycharm中运行transformers模型的坑(anaconda prompt命令行运行正常,pycharm却报错)

博客主要讲述在Pycharm中运行transformers模型时遇到报错问题,而在Anaconda Prompt命令行运行正常。随后给出问题解决办法,展示修改后的代码,最终运行成功,同时提醒注意代码缩进。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pycharm中运行transformers模型的坑(anaconda prompt命令行运行正常,pycharm却报错)

1、transformer示例

from transformers import pipeline

nlp = pipeline("question-answering")

context = "Extractive Question Answering is the task of extracting an answer from a text given a question. An example of a question answering dataset is the SQuAD dataset, which is entirely based on that task. If you would like to fine-tune a model on a SQuAD task, you may leverage the `run_squad.py`."

print(nlp(question="What is extractive question answering?", context=context))
print(nlp(question="What is a good example of a question answering dataset?", context=context))


报错

tranformers报错1
transformer报错2
但anaconda prompt运行正常
在这里插入图片描述

问题解决

在这里插入图片描述

修改后代码

from transformers import pipeline
if __name__ == '__main__':
    nlp = pipeline("question-answering")
    context = "Extractive Question Answering is the task of extracting an answer from a text given a question. An example of a question answering dataset is the SQuAD dataset, which is entirely based on that task. If you would like to fine-tune a model on a SQuAD task, you may leverage the `run_squad.py`."
    print(nlp(question="What is extractive question answering?", context=context))
    print(nlp(question="What is a good example of a question answering dataset?", context=context))

运行成功(注意缩进)
运行成功

### 如何确认 PyCharm 使用的 Anaconda 环境是 Anaconda Prompt 中的 base 环境 为了验证 PyCharm 是否正在使用 Anaconda 的 `base` 环境,可以按照以下方法操作: #### 方法一:通过 Python 解释器路径对比 在 PyCharmAnaconda Prompt 中分别查看当前所使用的 Python 可执行文件路径。 1. **获取 Anaconda Prompt 下 Base 环境的解释器路径** - 打开 Anaconda Prompt 并激活 `base` 环境(通常默认已经处于该环境中)。 - 输入命令并记录返回的结果: ```bash which python # Linux/MacOS where python # Windows ``` 这将显示当前环境下的 Python 解释器路径。例如,在 Windows 上可能是类似于 `C:\Users\<用户名>\Anaconda3\python.exe` 的路径[^1]。 2. **获取 PyCharm 当前配置的解释器路径** - 在 PyCharm 中打开设置窗口 (`File -> Settings`)。 - 导航至 `Project: <项目名称> -> Python Interpreter`。 - 查看右侧列表中选定的解释器路径。如果它指向的是上述步骤得到的相同路径,则说明两者确实是一致的[^2]。 #### 方法二:运行脚本测试版本号及库一致性 可以通过编写简单的 Python 脚本来比较两个环境下安装的包及其版本是否存在差异来间接判断它们是否属于同一个环境。 1. 创建一个新的 `.py` 文件包含如下代码片段用于打印关键信息: ```python import sys, pkg_resources print("Python Version:", sys.version) installed_packages = {pkg.key: pkg.version for pkg in pkg_resources.working_set} print("\nInstalled Packages:") for package_name, version in sorted(installed_packages.items()): print(f"{package_name}: {version}") ``` 2. 分别在 PyCharm 内部以及切换到 Anaconda Prompt 后手动调用此脚本观察输出结果是否有区别。如果没有显著差别则进一步证明二者共享同一套依赖关系即同属一个特定环境比如这里的 'Base' 环境. #### 注意事项 即使表面上看起来选择了正确的解释器位置仍可能出现不匹配的情况这是因为某些情况下IDE可能还会加载额外全局站点目录或者缓存旧数据所以建议定期清理相关缓存确保最新状态被反映出来.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值