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

如何解决Hydra从主文件外文件夹实例化对象的模块找不到问题?

解决Hydra实例化外部模块的ModuleNotFoundError问题

问题根源

  1. Python运行时的搜索路径(sys.path)未包含项目根目录,导致无法识别src模块
  2. _target_配置错误:Hydra要求目标路径为模块路径.类/函数名,而非带.py后缀的文件路径

修复步骤

1. 修正Hydra配置文件的_target_路径

打开hydra_configs/datasets/dataset_config.yaml,将内容修改为:

_target_: src.dataset.KIBA_gluonts_dataset

注意:需确保src/dataset.py文件中确实存在名为KIBA_gluonts_dataset的可实例化类或对象

2. 将项目根目录加入Python搜索路径

在repo/main.py的最开头添加以下代码:

import sys
from pathlib import Path

# 获取项目根目录(repo文件夹的父目录)并加入sys.path
sys.path.append(str(Path(__file__).parent.parent))

完成以上两步后,重新运行main.py,hydra.utils.instantiate(cfg.datasets)即可正确实例化Dataset对象。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 21:48:16