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

如何通过Hydra Multirun结合glob匹配指定文件夹批量执行脚本

实现方法

这里提供两种常用方案,你可以根据自己的需求选择:

方案1:Shell遍历目录+单次执行(灵活度高,适合有自定义逻辑的场景)

直接写个简单的bash脚本遍历所有匹配的目录,逐个传给Hydra脚本即可,示例代码如下:

#!/bin/bash
# 替换为你自己的根目录路径
ROOT_DIR="/input/files/path"

# 遍历所有input*开头的子目录
for input_dir in "$ROOT_DIR"/input*/ ; do
    # 跳过非目录的匹配结果
    [ -d "$input_dir" ] || continue
    # 运行Hydra脚本,将data_dir替换为你脚本中对应存储输入路径的配置字段名
    python your_script.py data_dir="$(realpath "$input_dir")"
done

方案2:用Hydra自带的多运行模式(无需额外脚本,操作更简单)

Hydra内置的多运行(-m/--multirun)功能本身支持批量传参,直接一行命令就能完成:

python your_script.py -m data_dir="/input/files/path/input*"

注意:给路径加引号是为了避免shell提前展开通配符,让Hydra自己完成路径匹配逻辑。
这种模式下Hydra会自动为每个匹配到的目录生成独立的运行实例,所有运行的日志和输出默认会保存在multirun/目录下按时间戳分类的子文件夹中,方便后续核对结果。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:06:02