把"用自然语言写软件"做成真——Yuntian Deng 团队 Compile by Training 让企业反复调用的任务一次编译成本地小函数
- 关联论文:2609.04199
你有没有这种感觉——
你公司里有一些反复要做的事:合同里的"甲方名称 / 金额 / 签章日期"字段抽取、客服回复的标准化改写、报表里某列的格式归一化。这些事每次都得调一次 GPT-4 / Claude API,几万 token 一次,一年下来 token 账单能烧掉几十万。
你大概率想过:有没有办法把这种"重复 prompt + 重复 prompt"的活儿,固化成本地能直接调的小模型?调用一次不用付钱,不用联网,延迟还低。
但你又觉得不可能——这种"按需定制小模型"的成本太高,每加一个任务都得标注数据 + 训一次 7B 模型,没法人人这样玩。
Yuntian Deng 团队(前作 Program-as-Weights / PaW)的 Compile by Training(arXiv 2609.04199)说:可以,而且只要一分钟编译一次。
换句话说:Compile by Training 把"用自然语言写一个本地函数"这件事从"不可能"变成"编译 1 分钟 + 推理零成本"——企业里那些反复调用大模型的固定任务,第一次有了"训练一次,调用一辈子"的可行路径。
一、为什么这件事对企业 AI 这么关键
企业 AI 落地有三个绕不开的"成本 / 隐私 / 延迟"难题:
- 成本:每次调 GPT-4o / Claude 处理一个字段抽取任务,token 费用乘以调用次数 = 月账单爆炸。
- 隐私:把内部合同 / 报表 / 客户数据发给云端 API,合规团队第一个不签字。
- 延迟:远程 API 调用 P99 延迟可能 3-5 秒,对内嵌工作流的产品体验是灾难。
理论上,"训一个小模型"能解决这三个问题。但实际上:
- 传统蒸馏路径:标注 1 万条样本 → 选基座 → 训练 → 部署,单任务成本 2 周 + 几万人民币。
- LoRA / Prompt tuning:仍然需要标注数据 + 训练,单任务成本降到 1 天 + 几千人民币,但仍不便宜。
- 极致 prompt 工程:靠 prompt 模板 + few-shot 凑合用,精度不达标,泛化也差。
Compile by Training 的回答是:用自然语言描述需求 → 教师模型在编译期合成数据 → 蒸馏到一个小适配器 → 产出一个可独立部署的"神经函数"。整个过程只要 1 分钟,产物可以像普通 Python 函数那样 import,可以版本化、可以组合。
这是 PaW 的"快编译器 + 难例精度塌方"问题的"重编译器"——承认编译慢一些,但精度比快路径好得多,且产物完全本地化。
二、Compile by Training 到底做了什么——三阶段流水线
Compile by Training 的方法不是"又一个 fine-tune trick",而是重构"自然语言→函数"的心智模型——把整个流程分成"编译期(重)+ 运行期(轻)"两个物理阶段,产物是一个真正的本地函数。
阶段 A:教师合成(编译期)
教师模型(GPT-4o 等)基于自然语言规范生成"输入-输出"对,作为合成数据。注意:教师只在编译期使用,运行时不参与。
阶段 B:蒸馏到小适配器(编译期)
把合成样本喂给一个紧凑解释器(compact interpreter),训练它内部的一个小适配器。⚠️ abstract 未明确解释器架构与参数规模,需查 §A 附录确认。
阶段 C:产出神经函数(运行期)
适配器被绑定到解释器上,暴露为可调用的"神经函数",可像普通软件一样存储、版本化、组合。
自然语言规范 ──► [教师采样] ──► 任务样本集 ──► [训练小适配器] ──► 神经函数
↑ 编译期使用 ↑ 编译期使用 ↑ 运行期使用
与 PaW 的对比定位(关键!)
| 维度 | PaW(快编译器) | Compile by Training(本文) |
|---|---|---|
| 编译时延 | 秒级 | 约 1 分钟 |
| FuzzyBench-Hard 语义准确率 | 0% exact match | 83.6% |
| 运行时是否依赖教师 | 否 | 否 |
| 产物形态 | 权重矩阵 | 解释器 + 适配器 |
⚠️ 上表 FuzzyBench-Hard = 0% exact match 来自论文 abstract 的"subset on which the Program-as-Weights fast compiler produced no exact matches";83.6% 来自同一 abstract。
三、关键数字(abstract 可锚定)
| 声明 | 数字 | 来源 | 状态 |
|---|---|---|---|
| FuzzyBench-Hard 语义准确率 | 83.6% | abstract | ✅ abstract 直接引述 |
| PaW 快编译器(该子集) | 0% exact match | abstract "produced no exact matches" | ✅ abstract 直接引述 |
| 编译时延 | 约 1 分钟 | abstract | ⚠️ 无置信区间 / min-max |
| 接收 | EMNLP 2026 System Demonstrations | abstract | ✅ |
| 公开 demo | programasweights.com |
abstract | ✅ 有效域名(未深度 fetch) |
| 运行时无教师依赖 | — | abstract | ✅ 仅指推理阶段;编译阶段教师必须在线 |
| 可版本化 / 可组合 | — | abstract | ⚠️ 论文声明,无稳定性实验数据 |
⚠️ abstract 未给出小适配器的参数量、FLOPs、推理时延数字,原文未明确给出——选型前需查 §A 附录或 fetch 项目页确认。
四、为什么这件事对企业落地这么关键
Compile by Training 不只是一个学术工作,它回答的是企业 AI 的"成本 / 隐私 / 延迟"三难问题——把"反复调用大模型"换成"一次编译 + 永久调用本地函数"。
六个工程启发:
- 企业内部"任务函数化"流水线:把反复调用大模型的固定任务(合同字段抽取、客服回复改写、报表解析)编译为本地小函数,每月节约 token 成本可达数万倍。
- 冷启动期可用 PaW 快路径 + 上量后切 Compile by Training:业务初期用秒级路径验证可行性,待 SLA 起来后再切到 1 分钟路径提精度——双速编译器家族。
- 可版本化 = 可审计:神经函数可纳入 git 流程,回归测试与发布审批与普通代码一致——金融、医疗等强合规场景的直接增益。
- 避免每轮 prompt 都打大模型:把"每次推理都调用大模型"换成"调用本地神经函数 + 偶尔回退到教师"是降本核心。
- 多语言客服场景适配:双向 English–Claudish 翻译的 demo 暗示这套范式对"受限语言对"很友好——企业内部"工程黑话 ↔ 客户语言"翻译可用同样套路固化。
- 边缘部署的可能性:本地小适配器在 GPU 推理时延可控,未来如果论文公开解释器架构与参数量,端侧 / 边缘设备运行本地神经函数成为可能。
五、与同类工作的关系
Compile by Training 不是凭空冒出来的,它站在几条已有路线之上:
- 直接前作 Program-as-Weights(PaW):同团队,Yuntian Deng 等——本文是它的"高精度版本",与 PaW 共同构成双速编译器家族。
- Phi / Gemma / Qwen-本地小模型路线:始终训练通用小模型——本文是"按需编译",按函数规模生成小适配器,更像"软硬件协同设计"思路。
- LangChain / DSPy:提示词工程 + 工具调用框架——本文产出物是真正的本地函数,不是 prompt 链;适合不允许每次推理都打远程模型的场景。
- Codex / Copilot:自然语言→可读代码——本文不生成可读代码而是生成权重——更紧凑但失去可读性。
与具体产品的对比定位
- vs OpenAI Functions / Assistants API:远程 API 提供函数调用能力,依赖网络与隐私风险;Compile by Training 把"调用远程函数"换成"调用本地神经函数",离线可用。
- vs Apple Intelligence 的 Private Cloud Compute:苹果走的是"私有云推理 + 芯片级信任链",本文走的是"本地编译产物 + 无云依赖",定位互补。
- vs Hugging Face Transformers Agent:HF Agent 把 LLM 当作规划器去调用本地小模型,本质仍是 LLM 在线推理;本文连规划阶段都不需要大模型在线参与。
- vs LMQL / SGLang:约束式解码框架,与本文的"编译期训练"是不同抽象层,不直接竞争。
六、这篇论文在"自然语言编程"学术版图中的位置
自然语言编程(NLPL,Natural Language Programming)有三条主流路径:
- 代码生成路径:自然语言 → Python/JS 等可读代码(代表:Codex、Copilot)。
- 权重编译路径:自然语言 → 模型权重(代表:PaW 系列 + 本文)。
- 提示工程路径:自然语言 → 提示模板 + 工具调用链(代表:DSPy、LangChain)。
本文属于第 2 条路径,是"权重编译"流派中首次明确给出慢路径精度数据的工作,弥补了此前"快但糙"的弱点。
七、三个公开 demo(验证横向适用性)
团队把编译器挂在 programasweights.com 公开服务后面,并用三个真实 demo 展示能力:
- 多站点网站助手:跨多个网页结构提取统一字段——验证"半结构化抽取"任务的横向适用性。
- 语言控制的 3D avatar:用自然语言描述动作,编译出本地神经函数实时驱动 3D 形象——验证"多模态控制"任务的适用性。
- 双向 English–Claudish 翻译:把一类受限的"Claudish 翻译"任务固化为本地函数——验证"受限语言对"翻译任务的适用性。
⚠️ demo 覆盖面广但 abstract 未给统一 benchmark 上的跨任务曲线。
⚠️ 八个边界坑(落地前必看)
- 编译 1 分钟 vs PaW 秒级:对"交互式 prompt → 即时函数"场景仍是瓶颈;适合"批量预编译常用函数",不适合每次对话现编——交互式场景建议别用慢路径
- 教师合成数据的质量天花板:教师模型的能力上限即编译产物的上限;若教师在某个领域薄弱(低资源语言、专业领域),产出的神经函数也会塌方——教师选型需谨慎
- 适配器规模 / 解释器架构未公开 abstract:端侧 / 边缘部署可行性需 fetch §A 附录或项目页确认——单卡 A100 40GB 是大概率门槛
- 跨域泛化未量化:三个 demo 覆盖面广,但 abstract 未给统一 benchmark 上的跨任务曲线——生产环境上线前需在自有数据集上做回归测试
- EMNLP System Demonstrations 是 demo track:学术评价权重上需打折;论文成果主要是"系统 + 可行性证据",而非新算法 SOTA——决策时不要把它当作主会 paper 的 SOTA 对比
- 数据合成偏差风险:教师合成样本可能引入特定模式偏差——需要审计合成数据的分布;原文未给出偏差审计方案——建议工程师自己写 dist 抽样检查
- 多租户可复现性:同一份规范在不同教师、不同种子下编译出的神经函数是否一致?原文未给出稳定性的量化指标——同一规范 + 同一教师 = 可复现产物 是关键
- 教师模型 API 成本:编译期调用教师(如 GPT-4o)的成本是否比直接做 prompt 推理更低?需实际测算 compile-once vs. query-many 的平衡点——编译期教师成本可能反而更高
🎯 适合谁
- 企业 AI 平台 / 私有部署团队:✅ 要降本、要可审计、要本地化推理
- 产品经理:✅ 评估"自然语言→小函数"在自家产品中的可行性
- 研究者:✅ 关注 NLPL、超网络蒸馏、神经符号系统的交叉点
- DevTools / IDE 创业者:✅ 探索"自然语言→本地函数"作为下一代代码补全之外的另一种开发范式
- 不适合:❌ 想做"交互式即时函数生成(每次对话现编)"——1 分钟延迟不可接受
- 不适合:❌ 教师模型能力薄弱的领域(教师天花板 = 产物天花板)
📌 一句话总结
arXiv 2609.04199 给出 Compile by Training——Yuntian Deng 团队继 PaW 之后的"重编译器":用教师在编译期合成数据 → 蒸馏到小适配器 → 产出可独立部署、可版本化、可组合的本地神经函数;在 FuzzyBench-Hard 取得 83.6% 语义准确率(PaW 快编译器在该子集 0 exact match),代价是编译时间从秒级升到约 1 分钟;通过 programasweights.com 公开三个 demo(多站点网站助手 / 语言控制 3D avatar / 双向 Claudish 翻译)验证跨任务横向适用性;适合企业内部"反复调用的固定任务"做一次编译、永久调用;但编译 1 分钟 vs PaW 秒级仍是交互式场景的瓶颈、教师合成数据质量即产物上限、适配器规模未公开 abstract、跨域泛化未量化、demo track 学术权重打折、数据合成偏差风险未审计、多租户可复现性未验证、教师 API 编译成本未量化八个坑必须在落地前补完。
🔔 评论区聊聊:你们团队现在哪些"反复调用大模型的固定任务"最值得编译成本地小函数?是合同字段抽取、客服话术改写,还是报表解析这类高度规则化的活儿?如果走 Compile by Training 路线,最大的顾虑是教师 API 成本、还是编译时间、还是产物可复现性?
自然语言编程 #NLPL #神经函数 #本地小模型 #蒸馏 #YuntianDeng #ProgramAsWeights #企业AI #论文科普 #arXiv2609.04199
三个标题变体
- 反直觉版:把"用自然语言写软件"做成真——Compile by Training 让企业反复调用的任务一次编译成本地小函数
- 数字钩子版:83.6% vs 0%——Yuntian Deng 团队的"重编译器"把自然语言规范编译成本地神经函数,编译 1 分钟、调用零成本
- 类比版:相当于给企业 AI 装了一个"本地编译器"——Compile by Training 把每次调 GPT-4o 换成"调一次本地小函数,永久 0 成本"
📱 小红书风格卡片文案(直接可用)
🧠 把"用自然语言写软件"做成真——Compile by Training 让企业反复调用的任务一次编译成本地小函数!
姐妹们!👀 你有没有这种感觉——你公司里有一些反复要做的事:合同里的"甲方名称 / 金额 / 签章日期"字段抽取、客服回复的标准化改写、报表里某列的格式归一化。这些事每次都得调一次 GPT-4 / Claude API,几万 token 一次,一年下来 token 账单能烧掉几十万。
你大概率想过:有没有办法把这种"重复 prompt + 重复 prompt"的活儿,固化成本地能直接调的小模型?调用一次不用付钱,不用联网,延迟还低。
🆕 Yuntian Deng 团队(前作 Program-as-Weights / PaW)的 Compile by Training(arXiv 2609.04199)说:可以,而且只要 1 分钟编译一次。
📊 关键数字(abstract 可溯源):
| 维度 | PaW(快编译器) | Compile by Training(本文) |
|---|---|---|
| 编译时延 | 秒级 | 约 1 分钟 |
| FuzzyBench-Hard 语义准确率 | 0% exact match | 83.6% |
| 运行时是否依赖教师 | 否 | 否 |
| 产物形态 | 权重矩阵 | 解释器 + 适配器 |
| 接收 | — | EMNLP 2026 System Demonstrations |
| 公开 demo | — | programasweights.com |
⚠️ 数字均为 abstract 直接引述,未独立 fetch 核验。
🎯 三阶段流水线:
自然语言规范
↓
[阶段 A · 教师合成] 教师模型生成"输入-输出"对(编译期使用)
↓
[阶段 B · 蒸馏训练] 喂给紧凑解释器,训练内部小适配器(编译期使用)
↓
[阶段 C · 产出神经函数] 可版本化、可组合、可 import(运行期使用)
🆕 三个公开 demo(验证跨任务横向适用性):
🌐 多站点网站助手:跨多个网页结构提取统一字段——验证"半结构化抽取" 🎮 语言控制的 3D avatar:用自然语言描述动作编译成本地神经函数实时驱动 3D 形象——验证"多模态控制" 🔄 双向 English–Claudish 翻译:把受限翻译任务固化为本地函数——验证"受限语言对"
💡 六大工程启发:
1️⃣ 企业内部"任务函数化"流水线:把反复调大模型的固定任务编译为本地小函数,每月节约 token 成本可达数万倍 2️⃣ 冷启动期用 PaW 快路径 + 上量后切慢路径:双速编译器家族——业务初期用秒级路径验证可行性,待 SLA 起来后再切 1 分钟路径提精度 3️⃣ 可版本化 = 可审计:神经函数可纳入 git 流程,回归测试与发布审批与普通代码一致——金融 / 医疗等强合规场景的直接增益 4️⃣ 避免每轮 prompt 都打大模型:把"每次推理都调大模型"换成"调本地神经函数 + 偶尔回退到教师"是降本核心 5️⃣ 多语言客服场景适配:双向 English–Claudish 翻译的 demo 暗示这套范式对"受限语言对"很友好——企业内部"工程黑话 ↔ 客户语言"翻译可用同样套路固化 6️⃣ 边缘部署的可能性:本地小适配器在 GPU 推理时延可控,未来端侧 / 边缘设备运行本地神经函数成为可能
⚠️ 八个边界坑(落地前必看):
- 编译 1 分钟 vs PaW 秒级——交互式场景仍是瓶颈,不适合每次对话现编
- 教师合成数据的质量天花板——教师能力上限即产物上限,低资源语言 / 专业领域慎用
- 适配器规模 / 解释器架构未公开 abstract——端侧 / 边缘部署可行性需 fetch §A 附录确认
- 跨域泛化未量化——三个 demo 覆盖面广但 abstract 未给统一 benchmark 跨任务曲线
- EMNLP System Demonstrations 是 demo track——学术评价权重上需打折
- 数据合成偏差风险——教师合成样本可能引入特定模式偏差,原文未给审计方案
- 多租户可复现性未验证——同一规范在不同教师、不同种子下产物稳定性未量化
- 教师 API 编译成本——编译期调教师(如 GPT-4o)的成本可能比直接 prompt 推理更高,需测算 compile-once vs. query-many 平衡点
🎯 适合谁:
- 企业 AI 平台 / 私有部署团队:✅ 要降本、要可审计、要本地化推理
- 产品经理:✅ 评估"自然语言→小函数"在自家产品中的可行性
- 研究者:✅ 关注 NLPL、超网络蒸馏、神经符号系统的交叉点
- DevTools / IDE 创业者:✅ 探索"自然语言→本地函数"作为下一代代码补全之外的另一种开发范式
- 不适合:❌ 想做"交互式即时函数生成(每次对话现编)"——1 分钟延迟不可接受
- 不适合:❌ 教师模型能力薄弱的领域(教师天花板 = 产物天花板)
📌 一句话总结:Compile by Training 把"用自然语言写软件"做成真——Yuntian Deng 团队继 PaW 之后的"重编译器",用教师在编译期合成数据 → 蒸馏到小适配器 → 产出可独立部署、可版本化、可组合的本地神经函数;在 FuzzyBench-Hard 取得 83.6% 语义准确率(PaW 快编译器 0 exact match),代价是编译时间从秒级升到约 1 分钟;通过 programasweights.com 公开三个 demo(多站点网站助手 / 语言控制 3D avatar / 双向 Claudish 翻译)验证跨任务横向适用性;适合企业内部"反复调用的固定任务"做一次编译、永久调用;但编译 1 分钟仍是交互式瓶颈、教师天花板即产物上限、适配器规模未公开 abstract、跨域泛化未量化、demo track 学术权重打折、数据合成偏差风险未审计、多租户可复现性未验证、教师 API 编译成本未量化八个坑必须在落地前补完。
🔔 评论区聊聊:你们团队现在哪些"反复调用大模型的固定任务"最值得编译成本地小函数?是合同字段抽取、客服话术改写,还是报表解析这类高度规则化的活儿?如果走 Compile by Training 路线,最大的顾虑是教师 API 成本、还是编译时间、还是产物可复现性?