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

运行YOLOv8重训练目标检测测试时遇错误:无法从collections导入Callable

解决思路

错误根源

Python 3.10及以上版本中,Callable已从collections模块迁移至collections.abc,你当前安装的keyring版本不兼容Python 3.11,导致导入失败。另外,你可能安装了非官方的yolo包,而非YOLOv8官方的ultralytics包,引发依赖混乱。

具体解决步骤

  • 更新keyring到兼容版本
    运行以下命令升级keyring:

    pip install --upgrade keyring
    

    若升级后仍有问题,可指定兼容Python 3.11的版本:

    pip install keyring==23.13.1
    
  • 替换为官方YOLOv8包
    你当前使用的yolo包并非官方YOLOv8包,官方包是ultralytics,操作如下:

    1. 卸载非官方包:
      pip uninstall yolo
      
    2. 安装官方包:
      pip install ultralytics
      

    之后使用yolo命令即可调用官方YOLOv8,不会再触发keyring相关依赖问题。

  • 使用虚拟环境隔离依赖
    若系统全局Python包存在冲突,建议创建独立虚拟环境:

    1. 创建虚拟环境:
      python3.11 -m venv yolov8_env
      
    2. 激活虚拟环境(Mac/Linux):
      source yolov8_env/bin/activate
      
    3. 在虚拟环境内安装官方YOLOv8包:
      pip install ultralytics
      

    之后在该环境内运行测试,避免全局包干扰。

内容的提问来源于stack exchange,提问作者El Cino

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 05:23:27