PyTorch 1.10.0运行nanoGPT报错:AttributeError: module 'torch' has no attribute 'amp'
解决PyTorch
AttributeError: module 'torch' has no attribute 'amp' 问题 核心原因
PyTorch 1.10.0原生支持torch.amp模块,报错并非版本、CUDA或GPU本身的问题,大概率是环境或项目配置冲突导致:
- 实际运行环境调用的是旧版PyTorch(1.6.0以下无
torch.amp),而非你配置的1.10.0 - 项目目录存在同名文件/文件夹(如
torch.py、torch目录),干扰官方库导入 - 虚拟环境激活异常,代码运行环境与你查看版本的环境不匹配
排查与解决步骤
确认当前环境的PyTorch版本
在运行train.py的终端中执行以下代码,验证实际使用的版本:import torch print(torch.__version__)若输出版本低于1.6.0,说明存在版本冲突,需清理旧依赖。
检查项目目录的同名干扰文件
查看项目根目录,若存在torch.py、torch.pyc或torch文件夹,直接重命名或删除——这些文件会让Python优先导入本地内容,而非官方PyTorch库。重建干净的虚拟环境
虚拟环境依赖混乱是常见诱因,建议重新创建环境:# 若用conda,先删除旧环境 conda deactivate conda remove -n your_old_env --all # 创建新环境并安装指定依赖 conda create -n torch110_env python=3.8 conda activate torch110_env # 安装适配CUDA11.3的PyTorch1.10.0 pip install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio==0.10.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html验证代码导入逻辑
确认代码中torch.amp的导入方式正确,避免自定义路径覆盖:# 正确示例 from torch.amp import autocast, GradScaler
内容的提问来源于stack exchange,提问作者humanpp
相关产品推荐
相关产品推荐

