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

使用WandbCallback时遇Glob路径越界ValueError问题求助

解决方案:ValueError: Glob may not walk above the base path

问题原因

你手动调用wandb.save(logs_dir)时,logs_dir是基于wandb.run.dir的子目录。wandb.run.dir是wandb内部的运行数据存储目录,wandb.save的安全机制禁止直接保存该目录下的路径,否则会触发路径遍历检查错误。此外WandbCallback已经内置了训练指标追踪、模型 checkpoint 保存等功能,无需手动处理该目录。

修正步骤

  1. 移除错误的wandb.save(logs_dir)调用:这是触发错误的直接原因。
  2. 调整日志目录路径(按需):如果需要保存自定义日志文件,使用本地独立目录(而非wandb.run.dir子目录),再通过通配符指定要保存的文件。

修正后代码示例

import os
from wandb.keras import WandbCallback
import wandb

wandb.init(project="my-project", name="my-run")
# 使用本地独立日志目录,避免依赖wandb内部目录
logs_dir = "./logs"
os.makedirs(logs_dir, exist_ok=True)
# 若需上传该目录下的日志文件,用通配符指定文件(目录本身无需保存)
# wandb.save(os.path.join(logs_dir, "*"))  # 按需启用

# --- 你的模型定义、数据预处理等代码 ---

model.fit(
    train_X, train_Y,
    validation_data=(test_X, test_Y),
    epochs=20,
    batch_size=32,
    callbacks=[WandbCallback()]
)

补充说明

  • WandbCallback会自动将训练过程中的loss、accuracy等核心指标同步到wandb后台,无需额外手动配置。
  • 若要保存自定义文件,wandb.save需要指定具体文件或通配符(如*.txt),而非目录路径,同时确保路径不在wandb.run.dir的范围内。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 02:12:42