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

如何为Ray Tune的Tuner指定自定义会话目录(替代/tmp/ray/)

解决Ray Tune临时目录空间不足的问题

有三种简单方法可以修改Ray的会话目录,不用纠结之前没调用ray.init():

  • 方法1:在Tuner前手动初始化Ray
    直接在代码开头加一行ray.init()并指定temp_dir,后续正常使用Tuner即可:

    import ray
    from ray import tune
    
    # 指定自定义临时目录
    ray.init(temp_dir="/my_directory")
    
    # 你的训练函数和Tuner配置
    def trainable(config):
        # 这里写你的PyTorch训练逻辑
        pass
    
    tuner = tune.Tuner(trainable, param_space={"lr": tune.grid_search([1e-3, 1e-2])})
    tuner.fit()
    
  • 方法2:通过环境变量指定
    不用修改代码,运行脚本前设置RAY_TMPDIR环境变量,Ray会自动读取这个路径作为临时目录:

    # Bash终端下运行脚本时设置
    RAY_TMPDIR=/my_directory python your_tune_script.py
    
  • 方法3:通过Tuner的RunConfig传递参数
    如果你不想单独调用ray.init(),可以在RunConfig里通过ray_init_args直接传递临时目录参数,Ray会在启动时自动使用这个配置:

    from ray import tune
    
    def trainable(config):
        # 你的PyTorch训练逻辑
        pass
    
    tuner = tune.Tuner(
        trainable,
        param_space={"lr": tune.loguniform(1e-4, 1e-1)},
        run_config=tune.RunConfig(
            ray_init_args={"temp_dir": "/my_directory"}
        )
    )
    tuner.fit()
    

这三种方法都能解决/tmp空间不足导致的"No space left on device"错误,选哪种看你的需求:环境变量适合快速测试,RunConfig适合代码内统一配置,手动初始化适合需要更多Ray启动参数的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 01:20:23