监控

Deepspeed 的 Monitor 模块可以将训练细节记录到兼容 Tensorboard 的文件、WandB 或简单的 CSV 文件中。以下概述了 DeepSpeed 会自动记录的内容。

TensorBoard

class deepspeed.monitor.config.TensorBoardConfig[source]

设置 TensorBoard 监控器的参数。

enabled: bool = False

是否启用 Tensorboard 日志记录。需要安装 tensorboard 包。

output_path: str = ''

Tensorboard 日志将写入的路径。如果未提供,则输出路径将设置为训练脚本启动路径下。

job_name: str = 'DeepSpeedJobName'

当前作业的名称。这将成为 output_path 内的一个新目录。

WandB

class deepspeed.monitor.config.WandbConfig[source]

设置 WandB 监控器的参数。

enabled: bool = False

是否启用 WandB 日志记录。需要安装 wandb 包。

group: Optional[str] = None

WandB 组的名称。这可以用来将多个运行分组在一起。

team: Optional[str] = None

WandB 团队的名称。

project: str = 'deepspeed'

WandB 项目的名称。

Comet

class deepspeed.monitor.config.CometConfig[source]

设置 Comet 监控器的参数。对于日志记录数据,Comet 使用实验对象。https://www.comet.com/docs/v2/api-and-sdk/python-sdk/reference/Experiment/

enabled: bool = False

是否启用 Comet 日志记录。需要安装 comet_ml 包。

samples_log_interval: int = 100

在处理完每 samples_log_intervas 个样本后,指标将提交给 Comet。

project: Optional[str] = None

Comet 项目名称。可以通过 .comet.config 文件或环境变量 COMET_PROJECT_NAME 设置https://www.comet.com/docs/v2/guides/experiment-management/configure-sdk/#explore-comet-configuration-options

workspace: Optional[str] = None

Comet 工作区名称。可以通过 .comet.config 文件或环境变量 COMET_WORKSPACE 设置https://www.comet.com/docs/v2/guides/experiment-management/configure-sdk/#explore-comet-configuration-options

api_key: Optional[str] = None

Comet API 密钥。可以通过 .comet.config 文件或环境变量 COMET_API_KEY 设置https://www.comet.com/docs/v2/guides/experiment-management/configure-sdk/#explore-comet-configuration-options

experiment_name: Optional[str] = None

用于日志记录的 Comet 实验的名称。可以通过 .comet.config 文件或环境变量 COMET_EXPERIMENT_NAME 设置https://www.comet.com/docs/v2/guides/experiment-management/configure-sdk/#explore-comet-configuration-options

experiment_key: Optional[str] = None

用于日志记录的 Comet 实验的密钥。必须是长度在 32 到 50 个字符之间的字母数字字符串。可以通过 .comet.config 或环境变量 COMET_EXPERIMENT_KEY 设置https://www.comet.com/docs/v2/guides/experiment-management/configure-sdk/#explore-comet-configuration-options

online: Optional[bool] = None

如果为 True,则数据将记录到 Comet 服务器,否则将存储在本地离线实验中。默认为 True。

mode: Optional[str] = None
控制 Comet 实验的启动方式,有 3 种选择。
  • “get”: 继续记录到由 experiment_key 值标识的现有实验。

  • “create”: 始终创建一个新的实验,这对 HPO 扫描很有用。

  • “get_or_create” (默认):如果需要,启动一个新的实验,或者持续记录到一个现有的实验。

CSV 监控器

class deepspeed.monitor.config.CSVConfig[source]

设置 CSV 监控器的参数。

enabled: bool = False

是否启用记录到本地 CSV 文件。

output_path: str = ''

写入 csv 文件的路径。如果没有提供,则在训练脚本的启动路径下设置输出路径。

job_name: str = 'DeepSpeedJobName'

当前作业的名称。这将成为 output_path 内的一个新目录。