惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
Jina AI
Jina AI
小众软件
小众软件
GbyAI
GbyAI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 【当耐特】
D
DataBreaches.Net
腾讯CDC
V
Visual Studio Blog
博客园 - 叶小钗
B
Blog
Apple Machine Learning Research
Apple Machine Learning Research
T
The Blog of Author Tim Ferriss
S
SegmentFault 最新的问题
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
V2EX
博客园 - 三生石上(FineUI控件)
云风的 BLOG
云风的 BLOG
The Cloudflare Blog
MongoDB | Blog
MongoDB | Blog
有赞技术团队
有赞技术团队
U
Unit 42
博客园 - 司徒正美
博客园 - 聂微东

人人都是产品经理

为什么你的产品找不到差异化?90%的失败都卡在第一步上(下) – 人人都是产品经理, 3年从30万到1300万用户、获2200万美元融资,这个AI教育产品用“抽卡”破解了获客难题 – 人人都是产品经理, 园区招商系统怎么做才能真正帮到去化?我加了这一个功能,推广链接转发400次阅读过万 – 人人都是产品经理, AI大事件:OpenAI发完网络安全模型又搞药物研发,小鹏汽车要抓”DeepSeek时刻” – 人人都是产品经理, 电商不是卖货,是一场更残酷的产品经理实战 – 人人都是产品经理, 没想到,活动营销又回来了! – 人人都是产品经理, 为何All-in海外KOC:一场关于AI时代窗口期的豪赌 – 人人都是产品经理, 重新理解企业的内部协作 – 人人都是产品经理, 苹果的 AI 战略到底是什么? – 人人都是产品经理, 医疗智能体·第2讲——合规护城河:等保、PIPL与HIPAA的架构实战 – 人人都是产品经理, 向量知识库五步法:从“答非所问”到“精准回复” – 人人都是产品经理, 鸿蒙PC三方库构建总指挥HPKBUILD(sha)库为例 – 人人都是产品经理, 何时该用LLM?AI产品经理的LLM设计指南 – 人人都是产品经理, 医疗信息领域的需求方、决策方、准入方以及关注点(二) – 人人都是产品经理, 即梦涨价:一场被误读的「傲慢」 – 人人都是产品经理, 面试AI PM必答题:Hermes和OpenClaw的区别,如何讲清楚业务价值 – 人人都是产品经理, AI的下一张船票:世界模型——AI产品经理必须理解的技术拐点 – 人人都是产品经理, 小红书做GEO,怎么让AI信你?记住这 3 个重要信息 – 人人都是产品经理, 5 家印度 AI 初创公司,看看印度 AI 再做什么 – 人人都是产品经理, AI项目跨团队协作:产品技术业务如何不打架 – 人人都是产品经理, Agentic Workflow(智能体工作流):让AI从”答案生成器”变成”数字员工” – 人人都是产品经理, lycium_plusplus 项目全景解读:OpenHarmony 三方库构建的“大管家” – 人人都是产品经理, 从爆单救火到前置履约:两套预采策略,把生鲜大促履约效率拉满 – 人人都是产品经理, 什么时候该补货?我用一轮数据做了一个决定 – 人人都是产品经理, 从“机械兜底”到“动态分流”:AI客服重复进线治理的4大底层逻辑 – 人人都是产品经理, 抖音拼效率,红书拼洞察 – 人人都是产品经理, 全民狂欢与退潮——为什么龙虾这波热潮冷却得如此之快? – 人人都是产品经理, Stripe押注!MPP重塑全球支付 – 人人都是产品经理, 小红书GEO:AI引用你的内容,不是因为你对,而是因为你看起来可信 – 人人都是产品经理, 前百度副总裁押注办公Agent,日韩付费爆发,Manus迎来强劲对手 – 人人都是产品经理,
AI 编程的“减肥”革命:CodeACT 带来的高效进化故事
yan · 2025-12-30 · via 人人都是产品经理

在代码大模型训练陷入‘数据海战术’困境的2024年,南京航空航天大学的研究团队带来了突破性解决方案CodeACT。这套结合‘学霸式精准刷题’CDAS算法与‘俄罗斯方块式打包’Dynamic Pack的技术框架,仅用40%数据就让模型性能提升8.6%,训练速度提升4倍,重新定义了AI训练的效率革命。本文深度解析这场关于‘少即是多’的技术哲学实践如何改变大模型进化范式。

2024 年的夏天,人工智能领域正处在一场无声的火并中。在大模型的竞技场上,代码生成(Code Generation)成了衡量一个模型“智商”的最高标准。不管是 DeepSeek、CodeLlama 还是闭源界的王者 GPT-4,大家都在疯狂地投喂数据。

但是,这种“题海战术”正在遇到一个尴尬的瓶颈:显卡太贵,数据太杂。

对于很多开源团队来说,训练一个强大的代码大模型就像是在烧钱。你不仅需要数以万计的 H100 显卡,还需要在浩如烟海的互联网数据中寻找那些真正能让模型“开窍”的精华信息。

南京航空航天大学的研究者们坐不住了。他们想到:能不能让模型别再“傻练”,而是学会像学霸一样“精准刷题”和“高效吸收”?

他们把这个想法变成了一个全新的框架,叫CodeACT

这个算法的出现,就像是给正在疯狂吃垃圾食品的 AI 模型制定了一套“有机饮食”+“高效燃脂”方案。它仅用 40% 的数据,就让模型的性能提升了 8.6%,同时训练速度快了近 4 倍。

这不仅是一个技术突破,更是一场关于“少即是多”的哲学实践。

“题海战术”的困境

在聊 CodeACT 之前,我们得先说说现在的 AI 是怎么变聪明的。

训练一个代码大模型,本质上是让它在大规模的代码库里玩“填空游戏”。你给它一段注释或者一段残缺的代码,它要猜出后面该写什么。

为了让它猜得准,开发者们发明了各种“合成数据”生成法。比如让 GPT-4 批量生成几十万道题,然后再喂给自家的开源模型。

合成数据(Synthetic Data):由人工智能模型(如 GPT-4)生成的训练数据,而非直接从互联网或现实世界中抓取的原始数据。在代码领域,通常表现为“指令-代码”对。

这种方法曾被视为“大力出奇迹”的典范。但很快,人们发现这像是在给模型吃“注水猪肉”:

  1. 质量参差不齐:生成的数十万道题里,有大量的重复、低级题,甚至有逻辑错。
  2. 训练效率低下:模型花了大把时间在做“1+1=2”的口算,真正能提升逻辑能力的“高考大题”却被淹没在题海中。

这种状况导致了一个致命问题:计算资源的极度浪费

就像你请了一个名师教学生,结果名师整天让学生抄写生字表,而不是讲解解题思路。学生学得很累,显卡费用还高得吓人。

这就是代码大模型面临的“效率红利期”结束的标志。

之前的人怎么尝试解决的?

为了解决“数据低效”和“计算昂贵”的问题,研究界其实已经做过两轮重要的尝试。

第一次尝试:AlpaGasus 和 InsTag(靠外力的“精选模式”)

2023 年,一些研究者提出:既然数据太杂,那我们就请个“超级判官”来筛选。

比如AlpaGasus,它请 ChatGPT 给每条数据打分,低于 4 分的扔掉。InsTag则让大模型贴标签,看哪些领域的数据稀缺,就练哪些。

数据筛选(Data Selection):从大规模原始数据集中,利用某种算法或规则选出最高质量或最具有代表性的子集。

这种方法有效,但硬伤在于:。你要筛选 100 万条数据,就得给 OpenAI 交 100 万次 API 费。而且这种筛选是“静态”的,判官觉得好的题,学生未必觉得难。

第二次尝试:动态填充(Dynamic Padding)

在计算方面,研究者发现了显卡的“懒政”:填充(Padding)

因为神经网络训练需要每一批数据长度一样,但代码有长有短。传统做法是往短代码后面塞一堆无效的“泡沫塑料”(Padding Tokens)。有时训练包里 80% 都是泡沫。

填充(Padding):在序列模型中,为了对齐序列长度而在末尾添加的占位符(通常是 0)。

有人提出了“动态填充”,每一批按该批最长的来补。虽有缓解,但依然没根治浪费。

CodeACT 的核心思想:自适应的“减肥”革命

CodeACT 的研究者们想做一件更酷的事:不要外面的判官,让学生自己当判官;不仅要动态填充,还要把包裹塞满。

这就是 CodeACT 的两个核心黑科技:CDASDynamic Pack

1. CDAS:挑选“高营养”题目

CDAS 的全称是Complexity and Diversity Aware Sampling(复杂性与多样性感知采样)。

图 1 展示了 CDAS 的完整工作流:首先通过聚类(Clustering)保证多样性,然后利用本地模型计算 IFD 分数来识别难度(Complexity),最后对每个簇进行重新排名并采样。这种“模型自我打分”的方式彻底告别了对 GPT-4 的昂贵依赖。

它如何判断“难不难”?(难度分)

CDAS 引入了一个非常巧妙的指标:IFD 评分(Instruction-Following Difficulty)

IFD 评分:通过比较模型在“有提示”和“无提示”下生成答案的困惑度之比,来衡量数据的认知价值。

我们可以把它想象成一个公式:

IFD = 模型在有题目时的“懵逼”程度 / 模型在没题目时的“懵逼”程度

翻译成人话:如果模型不看题就能猜出答案,说明这题太简单;如果看了题还是很懵,但比不看题明白了很多,说明这题有极大的“点拨”作用,是一道好题。

2. Dynamic Pack:告别“填不满的包裹”

如果说 CDAS 解决了“吃什么”,那Dynamic Pack就解决了“怎么吃得更快”。

研究者提出了俄罗斯方块式打包。在一批数据(Batch)里,不再补充填充符,而是把多份短代码首尾相连,拼成一个正好塞满显存限制的长序列。

打包(Packing):将多个短序列合并为一个长序列的操作,通过注意力掩码(Mask)确保不同序列互不影响。

比喻时间

  • 普通训练:一辆卡车只拉一个杯子,剩下全是泡沫。
  • Dynamic Pack:快递公司把几百个小快递塞满一辆卡车,不留空位,一趟运走。

显卡的每一分算力都用在了代码上,而不是在算“泡沫”。

为什么 CodeACT 这么好用?

1. 它是“量身定制”的

IFD 评分是基于基础模型(Base Model)生成的。针对 DeepSeek 选出来的题,最适合 DeepSeek 练。这是真正的“因材施教”。

2. 不同采样策略对比

研究者测试了不同的采样方法,结果显示 CDAS 在各个维度上都表现优异。

图 2 对比了随机采样(Random)、仅看难度(Complexity)、仅看多样性(Diversity)和 CDAS(Ours)。可以看到 CDAS 在 HumanEval、MBPP 等主流榜单上均稳居第一,证明了“难度+多样性”缺一不可。

实验结果:40% 的数据,翻倍的战力

实验数据非常震撼。在HumanEval这种硬核代码测试集上:

这意味着什么?数据量只用了原来的 40%,分数反而提高了 8.6 个百分点(相对于 Baseline)。更夸张的是,时间缩短了 4.5 倍。

图 3 揭示了一个有趣的现象:随着采样率提高,性能并不是无限增长的。在 40% 左右达到了一个黄金平衡点。这暗示了数据集中存在大量的“噪声”或“垃圾信息”,过多的低质数据反而会干扰模型的学习。

深层的启示:关于进化的三个思考

启示一:高质量的“减法”是最高级的“加法”

在信息爆炸时代,冗余信息反而会变成负担。不管是训练 AI 还是提升自我,“克制”比“贪婪”更能创造奇迹。

启示二:自适应系统需要“自我觉察”

只有系统本身知道自己的盲区在哪里。一个优秀的进化过程,不应该是被外界强行灌输,而是建立一种“自反性”。

启示三:工程细节决定了成败的上限

真正的卓越,往往隐藏在那些看似不起眼的“打包”细节里。

影响与争议

影响

CodeACT 降低了开源社区复现顶级代码模型的门槛。它证明了,普通算力通过巧妙的策略也能挑战巅峰。

争议与局限

  • 难题的正确性:CDAS 选出的“难题”本身代码逻辑是否正确?如果喂给模型“高难度的错题”,后果可能很严重。
  • 泛化边界:仅用精选数据是否会导致模型没见过“市面”?这还需要在更广阔的编程场景中验证。

写在最后

CodeACT 的故事告诉我们,当我们开始在数据和效率上运用“智慧”时,技术进化的齿轮才会真正加速。AI 训练的“自动挡”时代,才刚刚开始。

关键术语表

  • LLM(大模型):Large Language Model。
  • CDAS:复杂度与多样性感知采样,兼顾难题与覆盖广度。
  • IFD(指令跟随难度):衡量模型理解指令困难程度的指标。
  • Dynamic Pack(动态打包):首尾相连填满算力的策略。
  • HumanEval:OpenAI 发布的常用代码基准测试集。

原论文:CodeACT: Code Adaptive Compute-efficient Tuning Framework for Code LLMs作者:Weijie Lv, Xuan Xia, Sheng-Jun Huang (南京航空航天大学 & 深圳市人工智能与机器人研究院)

本文由 @yan 原创发布于人人都是产品经理。未经作者许可,禁止转载

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务