You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Colab中Autodistill的Invalid CUDA Error?

解决Autodistill YOLOv8训练时的CUDA设备错误

问题原因

Ultralytics的设备选择函数要求CUDA设备参数为**数字索引(如0)**或"cpu",但你的环境中CUDA_VISIBLE_DEVICES被错误设置为字符串"cuda",导致解析失败——尽管Torch能正常检测到GPU存在。

解决方案

方案1:修正环境变量

先重置CUDA_VISIBLE_DEVICES为正确的设备索引(你的环境中设备数为1,对应索引0):

import os
os.environ['CUDA_VISIBLE_DEVICES'] = '0'

如果不确定设备索引,也可以直接删除这个错误的环境变量:

import os
del os.environ['CUDA_VISIBLE_DEVICES']

方案2:训练时显式指定设备

修改训练代码,直接传入正确的设备参数,覆盖默认检测逻辑:

%cd {HOME}
from autodistill_yolov8 import YOLOv8
target_model = YOLOv8("yolov8n.pt")
target_model.train(DATA_YAML_PATH, epochs=50, device='0')  # 显式指定使用GPU 0

若临时需要用CPU训练,可改为:

target_model.train(DATA_YAML_PATH, epochs=50, device='cpu')

验证修改效果

执行以下代码确认CUDA状态正常:

import torch
import os
print(torch.cuda.is_available())  # 应返回True
print(torch.cuda.device_count())  # 应返回1
print(os.environ.get('CUDA_VISIBLE_DEVICES', '未设置'))  # 应显示0或"未设置"

内容的提问来源于stack exchange,提问作者Uğur Demirezen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 12:26:18