torchtune.training¶
Checkpointing¶
torchtune 提供了检查点程序,允许在训练和与其他生态系统组件互操作之间无缝转换检查点格式。有关检查点的全面概述,请参阅 检查点深度解析。
在HF格式中读取和写入检查点的检查点程序。 |
|
检查点保存器,用于以 Meta 的格式读取和写入检查点文件。 |
|
Checkpointer 用于读取和写入与 torchtune 兼容格式的检查点。 |
|
ModelType 由检查点保存器用于区分不同的模型架构。 |
|
这个类提供了一种更简洁的方式来表示格式为 |
|
验证用于分类器模型检查点加载的状态字典。 |
降低精度¶
用于在低精度环境下工作的工具。
获取与给定精度字符串对应的 torch.dtype。 |
|
用于设置 torch 默认数据类型的上下文管理器。 |
|
验证所有输入参数是否具有预期的数据类型。 |
|
给定一个量化器对象,返回指定量化类型的字符串。 |
分布式¶
用于启用分布式训练并支持其工作的工具。
初始化进程组,这是 |
|
检查是否已设置初始化 torch.distributed 所需的所有环境变量,并确认 distributed 已正确安装。 |
|
获取默认进程组中当前进程的当前世界大小(即总秩数)和秩编号的函数。 |
|
在 CPU 上将分片状态字典转换为完整状态字典,仅在 rank0 返回非空结果以避免 CPU 内存峰值。 |
内存管理¶
在训练期间减少内存消耗的实用工具。
用于设置激活检查点并将模型包装以进行检查点的工具。 |
|
用于对传入模型应用激活检查点的工具。 |
|
一个极简类,旨在为反向传播中运行的优化器提供检查点保存与加载功能。 |
|
为在反向传播中运行的优化器步骤创建包装器。 |
|
为反向传播中运行的优化器步骤注册钩子。 |
调度器¶
用于在训练过程中控制学习率的工具。
创建一个学习率调度器,线性地将学习率从 0.0 增加到 lr,在 |
|
Full_finetune_distributed 和 full_finetune_single_device 假设所有优化器具有相同的学习率(LR),此处用于验证所有学习率是否一致,若一致则返回 True。 |
指标日志记录¶
各种日志工具。
用于Comet的记录器 (https://www.comet.com/site/)。 |
|
用于Weights and Biases应用程序的记录器 (https://wandb.ai/)。 |
|
用于 PyTorch 实现的 TensorBoard 的日志记录器 (https://pytorch.org/docs/stable/tensorboard.html)。 |
|
记录到标准输出。 |
|
记录到磁盘。 |
性能与分析¶
torchtune 提供工具,用于分析和调试微调任务的内存与性能。
计算传入设备的内存摘要。 |
|
将包含内存统计信息的字典记录到日志中。 |
|
设置 |
其他¶
返回每个批次元素的序列长度,排除被掩码的标记。 |
|
设置常用库中伪随机数生成器种子的函数。 |