快捷方式

FullModelMetaCheckpointer

class torchtune.training.FullModelMetaCheckpointer(checkpoint_dir: str, checkpoint_files: List[str], model_type: str, output_dir: str, adapter_checkpoint: Optional[str] = None, recipe_checkpoint: Optional[str] = None, resume_from_checkpoint: bool = False)[source]

检查点器,用于读取和写入 Meta 格式的检查点。示例包括来自 meta-llama repo 的 Llama-2-7b 模型 (https://hugging-face.cn/meta-llama/Llama-2-7b)

目前我们仅支持从单个检查点文件读取。对从分片检查点读取的支持正在进行中(WIP)。

参数:
  • checkpoint_dir (str) – 包含检查点文件的目录

  • checkpoint_files (List[str]) – 要加载的检查点文件列表。目前,此检查点器仅支持加载单个检查点文件。

  • model_type (str) – 检查点器正在加载的模型的模型类型,例如 LLAMA3。

  • output_dir (str) – 用于保存检查点文件的目录

  • adapter_checkpoint (Optional[str]) – 适配器权重路径。如果为 None 且 resume_from_checkpoint=True,则在 output_dir/epoch_{largest_epoch} 中查找 adapter_model.pt。默认为 None。

  • recipe_checkpoint (Optional[str]) – 配方状态检查点文件的路径。如果为 None 且 resume_from_checkpoint=True,则在 output_dir/recipe_state.pt 中查找 recipe_state.pt。默认为 None。

  • resume_from_checkpoint (bool) – 如果为 True,检查点器将加载额外的检查点文件以从之前的运行恢复训练。默认为 False

Raises:
  • ValueError – 如果 checkpoint_files 不是长度为 1 的列表

  • ValueError – 如果 resume_from_checkpoint 为 True 但 recipe_checkpoint 为 None

load_checkpoint() Dict[str, Any][source]

从文件加载 Meta 检查点。目前仅支持从单个文件加载。

save_checkpoint(state_dict: Dict[str, Any], epoch: int, intermediate_checkpoint: bool = False, adapter_only: bool = False) None[source]

将 Meta 检查点保存到文件。如果 intermediate_checkpoint 为 True,则会在 _output_dir/RECIPE_STATE_DIRNAME 中创建一个额外的检查点文件 recipe_state.pt,其中包含配方状态。

参数:
  • state_dict (Dict[str, Any]) – 要写入文件的检查点状态字典

  • epoch (int) – 轮次号。用于创建检查点文件名

  • intermediate_checkpoint (bool) – 如果为 True,则会为配方状态和(如果适用)适配器权重创建额外的检查点文件。默认为 False

  • adapter_only (bool) – 如果为 True,则仅保存适配器权重。默认为 False

Raises:

ValueError – 如果 adapter_only 为 True 且在 state_dict 中未找到适配器检查点。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得您的问题解答

查看资源