mcpField
A
axolotl

axolotl

github.com/orchestra-research开发14.1k968 次安装19 周前更新
代码仓库

关于 axolotl

axolotl 是面向 axolotl 开发者的文档技能,提供 API 指引、常见训练配置示例和参考资料,支持实现与调试。

主要功能

  1. 01API 与功能指引
  2. 02训练配置示例
  3. 03数据集格式参考
  4. 04调试与实践建议

适用场景

  1. 01配置 FSDP 或上下文并行
  2. 02检查训练数据处理方式
  3. 03了解 axolotl API 行为

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/orchestra-research/ai-research-skills --skill axolotl

安装后在 Claude Code 中输入/axolotl确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
api.md
dataset-formats.md
index.md
other.md

详细介绍

Axolotl 技能

基于官方文档生成的 Axolotl 开发全面指南。

何时使用此技能

遇到以下情况时,应触发此技能:

  • 使用 Axolotl
  • 询问 Axolotl 的功能或 API
  • 实现 Axolotl 解决方案
  • 调试 Axolotl 代码
  • 学习 Axolotl 最佳实践

快速参考

常见模式

模式 1: 若要验证训练任务是否具有合适的数据传输速度,可以运行 NCCL Tests 来帮助找出瓶颈,例如:

./build/all_reduce_perf -b 8 -e 128M -f 2 -g 3

模式 2: 在 Axolotl yaml 中配置模型以使用 FSDP。例如:

fsdp_version: 2
fsdp_config:
  offload_params: true
  state_dict_type: FULL_STATE_DICT
  auto_wrap_policy: TRANSFORMER_BASED_WRAP
  transformer_layer_cls_to_wrap: LlamaDecoderLayer
  reshard_after_forward: true

模式 3: context_parallel_size 应为 GPU 总数的因数。例如:

context_parallel_size

模式 4: 例如:- 使用 8 个 GPU 且不启用序列并行时:每个步骤处理 8 个不同批次 - 使用 8 个 GPU 且 context_parallel_size=4 时:每个步骤仅处理 2 个不同批次(每个批次拆分到 4 个 GPU 上)- 如果每个 GPU 的 micro_batch_size 为 2,则全局批次大小会从 16 降至 4

context_parallel_size=4

模式 5: 在配置中设置 save_compressed: true,即可启用压缩格式保存模型,效果包括:- 减少约 40% 的磁盘空间占用 - 保持与 vLLM 的兼容性,以加速推理 - 保持与 llmcompressor 的兼容性,以进行进一步优化(例如:量化)

save_compressed: true

模式 6: 注意:无需将集成放在 integrations 文件夹中。只要它安装在 python 环境中的某个包内,就可以位于任何位置。请参阅此仓库中的示例:https://github.com/axolotl-ai-cloud/diff-transformer

integrations

模式 7: 同时处理单个样本和批量数据。- 单个样本:sample[‘input_ids’] 是 list[int] - 批量数据:sample[‘input_ids’] 是 list[list[int]]

utils.trainer.drop_long_seq(sample, sequence_len=2048, min_sequence_len=2)
示例代码模式

示例 1(python):

cli.cloud.modal_.ModalCloud(config, app=None)

示例 2(python):

cli.cloud.modal_.run_cmd(cmd, run_folder, volumes=None)

示例 3(python):

core.trainers.base.AxolotlTrainer(
    *_args,
    bench_data_collator=None,
    eval_data_collator=None,
    dataset_tags=None,
    **kwargs,
)

示例 4(python):

core.trainers.base.AxolotlTrainer.log(logs, start_time=None)

示例 5(python):

prompt_strategies.input_output.RawInputOutputPrompter()

参考文件

此技能在 references/ 中包含全面的文档:

  • api.md - API 文档
  • dataset-formats.md - 数据集格式文档
  • other.md - 其他文档

需要详细信息时,可使用 view 阅读特定参考文件。

使用此技能

初学者

从 getting_started 或 tutorials 参考文件入手,了解基础概念。

针对特定功能

使用相应类别的参考文件(api、guides 等)获取详细信息。

代码示例

上方的快速参考部分包含从官方文档中提取的常见模式。

资源

references/

从官方来源提取并整理的文档。这些文件包含:

  • 详细说明
  • 带有语言标注的代码示例
  • 原始文档链接
  • 便于快速导航的目录
scripts/

在此处添加用于常见自动化任务的辅助脚本。

assets/

在此处添加模板、样板代码或示例项目。

备注

  • 此技能由官方文档自动生成
  • 参考文件保留源文档的结构和示例
  • 代码示例包含语言检测,以便更好地进行语法高亮
  • 快速参考模式取自文档中的常见用法示例

更新

要使用更新后的文档刷新此技能:

  1. 使用相同配置重新运行 scraper
  2. 技能将使用最新信息重新构建

评论

支持 Markdown