返回首页

nanocode:基于 JAX 的代码代理管道

nanocode 库允许在 JAX 和 TPU 上从零训练代码代理。该管道包括 pretraining、合成生成、SFT 和 DPO。模型参数从 400 万到 13 亿,用于实验。

$200 训练一个代码代理:nanocode on JAX
Advertisement 728x90

# nanocode:基于宪法AI的编码代理流水线开源实现

torchtune 团队的开发者 Salman Mohammadi 发布了 nanocode 库——一个基于 JAX 的开源框架,用于编码代理的完整训练流程。该流水线涵盖分词器、预训练、合成数据生成、代理式 SFT,以及通过 DPO 结合宪法批评进行的对齐。主要模型拥有 13 亿参数,在 TPU 上训练 9 小时只需 200 美元。较小变体:4.77 亿参数——1.5 小时(34 美元),400 万参数——用于 CPU 调试。

该库针对 Google TRC 的免费 TPU 进行了优化,并支持 NVIDIA GPU。所有配置只需运行单个 bash 脚本即可。该项目延续了 Andrej Karpathy 的 nano 系列,专注于代理式行为:读取文件、编写代码并执行终端命令。

基于宪法AI原则的完整流水线

nanocode 复制了 Claude 的方法:从零开始的五个训练阶段。

Google AdInline article slot
  • 分词器:在编码语料上训练。
  • 预训练:FineWeb-edu + The Stack v2。
  • 合成数据:12 万条短对话和 2k 条长对话的多轮代理式行为示例。
  • 代理式 SFT:使用工具进行持续训练。
  • DPO 对齐:通过宪法批评实现类似 RLHF 的效果。

这是首个针对编码代理的完整宪法AI流水线开源配方。代码极简、可复现,且除 JAX 和 TPU 生态外无外部依赖。

这些模型无法与商用模型(数千亿参数)竞争,但展示了端到端机制。对于资深开发者而言,它是自定义代理实验的基础。

配置与资源

| 模型 | 参数量 | 时间 | 成本 | 硬件 |

Google AdInline article slot

|----------|-----------|--------|-------|---------------------|

| 主模型 | 1.3B | 9h | $200 | TPU (Google TRC) |

| 中型模型 | 477M | 1.5h | $34 | TPU/GPU |

Google AdInline article slot

| 调试模型 | 4M | 分钟级 | $0 | CPU |

  • TPU 优势:免费访问,在多芯片设置下 JAX 效率极高。
  • GPU 支持:单卡;多芯片支持开发中。
  • 运行bash run.sh --model_size=1.3B——所有阶段自动化。

该库让你可以拆解每个阶段:从分词到 DPO 中的批评生成。

开发者实用价值

对于中高级专家,nanocode 是理解编码代理内部机制的工具。功能包括:

  • 在合成数据(12 万+ 示例)上测试假设。
  • 为特定领域(如 Rust/Python)定制分词器。
  • DPO 实验:调整宪法以实现道德编码。
  • 扩展到本地集群。

代码文档详尽且模块化。无黑箱——对流水线全掌控。适合公司内部工具研发。

关键要点

  • 编码代理的完整开源宪法AI流水线:从分词器到 DPO。
  • 13 亿参数模型在免费 TPU 上 200 美元/9 小时——入门门槛极低。
  • 生成 12.2 万条代理式行为合成示例。
  • JAX 优化、TPU/GPU、bash 自动化。
  • 并非 Claude 替代品,而是剖析机制的教育工具。

— Editorial Team

Advertisement 728x90

继续阅读