
我的判断是:AI编程在企业里的硬伤,不在”写不写得出来”,而在”写出来之后没人能保证它对”。这两年我跑过不少企业的研发与数据团队,几乎每一家都在试 AI 编程助手,演示环节都很好看——一句话生成一段接口代码、一段取数 SQL、一个脚本。真正上生产的时候,问题全冒出来了:数字对不上财务报表、异常分支没人写、依赖包版本冲突、改了 A 模块坏了 B 模块、代码写完了没人愿意接手维护。这些不是模型能力问题,是企业侧缺了三样东西:可信的语义层、可用的高质量数据集、以及能兜住结果的责任机制。
换个说法,AI 编程本质上是把”写代码”这道工序压缩了,但它没有压缩”定义清楚需求”和”验证结果正确”这两道工序。而这两道工序恰恰是企业里最花钱、最依赖老员工经验的部分。所以你会看到一个很割裂的现象:个人开发者用 AI 编程效率翻倍,企业团队用了半年,交付周期没怎么变,返工率反而上去了。我见过一个团队,AI 生成的代码占比到了六成,但 Code Review 的工作量涨了一倍多,因为评审的人不敢信。
这篇文章我想把这件事拆开讲:硬伤到底在哪几层、不同起点的企业该怎么取舍、选型时我会看什么、以及在我参与的项目里,普元那套数据侧的底座是怎么把 AI 编程的”最后一公里”补上的。不吹工具,只讲我踩过的坑。
AI 编程在企业里的第一道坎,往往不是”写不出来”
我印象最深的一次,是一家制造企业的经营分析报表。业务部门提需求,研发用 AI 助手十分钟生成了一段多表关联 SQL,跑出来数据挺漂亮,开会直接用。第二周财务那边炸了——口径不对,把已作废但仍在库里挂着状态的订单也算进去了,还把退货单当成了正向收入。
这事我后来复盘了很多次。问题不在 SQL 写得对不对,在于 AI 不知道你们公司那个 status 字段里,到底哪个值代表”真的作废了”。这种知识从来不在公开语料里,只存在于老员工的脑子里、某份三年前的会议纪要里、或者某个字段的中文注释里。模型再强也猜不到。
所以我通常会把 AI 编程的硬伤分成三层看,见下表。
| 环节 | AI 编程能做的事 | 我在项目里实际看到的卡点 | 对企业的影响 |
|---|---|---|---|
| 需求理解 | 把自然语言描述转成技术方案草稿 | 业务口语里的”活跃客户””有效订单”没有统一定义 | 返工从第一行代码之前就开始了 |
| 代码生成 | 快速产出 CRUD、脚本、取数逻辑 | 异常分支、边界条件、并发场景普遍缺失 | 测试环境跑得通,生产环境出事故 |
| 数据取用 | 写 SQL、拼关联、做聚合 | 不知道表之间真实的血缘关系和主数据口径 | 数字对不上,业务不信,工具被弃用 |
| 依赖与安全 | 推荐库、生成配置 | 版本冲突、许可证不明、密钥硬编码 | 合规审计过不去,返工成本高 |
| 长期维护 | 解释代码、补注释 | 风格不统一、没有明确责任人 | 半年后没人敢改,技术债堆积 |
真正让企业吃亏的,是中间那行”数据取用”。因为它是所有业务数字的源头,一旦这里错了,后面所有的报表、看板、决策建议全错,而且错得很隐蔽——不会报错,只会安静地给你一个错误的数。这也是我会要求团队在引入 AI 编程之前,先把元数据和主数据这两件事摆到桌面上的原因。
起点不同,AI 编程给企业带来的收益差着一个量级
我特别反感一种说法:某某公司用 AI 编程把研发效率提升了百分之多少。这种数字对你没有参考价值,因为起点不一样。同样是引入 AI 编程,一家数据资产目录清晰、指标口径统一的公司,和一家每个部门自己维护 Excel 的公司,结果能差出十倍。
我的经验是:AI 编程的收益,和数据底座的可信度高度正相关,几乎是线性关系。底座越干净,AI 生成的东西越接近可直接用;底座越乱,AI 只是把混乱的生产速度加快了。
下面这张表是我按企业起点做的粗略划分,你可以对一下自己在哪一档。
| 企业起点 | 典型特征 | AI 编程先在哪见效 | 我的建议节奏 |
|---|---|---|---|
| 数据底座较完整 | 有元数据目录、主数据统一、指标有唯一口径 | 取数逻辑、报表开发、接口层代码 | 可以直接铺开,重点转向评审机制与责任归属 |
| 有数据平台但口径乱 | 表很多、血缘不清、同名不同义字段满天飞 | 辅助开发、代码解释、单测生成 | 先补语义层,再谈大规模生成 |
| 底子薄、以 Excel 为主 | 数据散落、无统一主数据、靠人肉对数 | 文档整理、脚本工具、个人效率 | 先做资产盘点与主数据,别急着上大模型 |
中间那一档是最多的,也是我花时间最多的。这类企业不缺工具,缺的是让工具”知道”业务含义的那层东西。我通常会建议他们先把关键业务实体(客户、产品、组织、供应商)在主数据层面理清楚,再把指标定义沉到数据资产平台里做唯一来源,这两件事做完,AI 编程的可用率会有肉眼可见的变化。
普元在这块的产品线我认为是比较对症的:Primeton MDM 管主数据的一致性和分发,普元数据资产平台管元数据、血缘和资产目录,两者叠起来,等于给 AI 编程补了一份”企业业务字典”。这事我踩过坑——早几年我们试过用文档维护口径,三个月就烂掉了,因为没人更新。一定要让它长在系统里。
被归到”AI 不行”的问题,根子大多在数据侧
我带过一个项目复盘,把半年里 AI 生成代码被驳回的原因做了归类。排第一的不是逻辑错误,是”字段理解错误”,占了将近一半。排第二是”口径不一致”。纯粹的语法错误和 API 幻觉,加起来不到两成。
这个分布很说明问题:模型的语言能力早就够用了,它缺的是你企业内部的上下文。而上下文这件事,靠喂提示词是解决不了的,你得让它能查到一个可信的、结构化的事实来源。
我一般会从三个方向补:一是元数据要能查,字段的业务含义、上下游血缘、更新频率都得有;二是主数据要唯一,客户、物料这类实体不能各部门一套编码;三是给模型的训练和检索准备一份干净的数据集,别拿生产库里的脏数据直接喂。
第三条经常被忽略。我见过团队把几张宽表直接导出成 CSV 去微调模型,结果里面混着测试数据、已删除标记、重复记录,训出来的东西自然不靠谱。给模型用的数据和给人看的数据,标准不一样,前者对一致性、去重、标注质量的要求更苛刻。
这块我现在倾向于用普元的高质量数据集平台来做,把采集、清洗、标注、版本管理这条链路固定下来,形成一个”数据集工厂”。好处是可复现——同一版数据集训出来的东西,出了问题能回滚、能追责。Primeton Data Workshop 则负责上游的数据开发与调度,把加工逻辑做成可视化的任务流,减少手写脚本带来的不确定性。实际跑下来,这两个配合着用,比让算法团队自己写脚本靠谱得多。
五个误区,我几乎在每个项目里都能碰到
误区一:把 AI 编程当成”人少了”。我见过管理层直接按生成代码占比砍人头,结果留下一堆没人认领的代码。正确的算法是算总交付成本,不是算敲键盘的速度。
误区二:用代码行数、生成率做考核。这两个指标太好刷了,AI 能把一行拆成十行。我会要求团队看的是需求交付周期和线上缺陷密度,这两个骗不了人。
误区三:跳过评审。有人觉得 AI 写的代码让 AI 再 review 一遍就行。我的态度很明确——评审这道工序的责任主体必须是人,AI 只能当助手。尤其是涉及资金、权限、对外接口的代码。
误区四:指望 AI 解决口径问题。这是我最常纠正的一个认知。口径是管理问题,不是技术问题,AI 只能执行你定好的口径,定不出来就得开会定。我通常会推动业务侧先把核心指标的口径文档化,落到数据资产平台里做成唯一来源,再让 AI 去用它。
误区五:一次性全铺开。有些企业一上来就给所有研发开账号,结果没人管、没人复盘,三个月后不了了之。我的建议是挑两三个痛点明确的场景先跑通,比如报表取数、单测生成、老系统接口补文档,跑出可量化的结果再扩。
这五个误区里,真正致命的是第四个。因为口径错了,AI 越高效,你错得越快、错得越深。这也是为什么我总把话题从”用哪个 AI 编程工具”拉回到”你的数据能不能被信任”。
我选型时会看的几个维度,以及普元这套底座补在哪
选型这件事,我不太看演示。演示都是精心准备的场景,看不出真实水位。我会让厂商拿我们自己的真实数据跑一遍,重点看四个维度:语义能不能查清、数据能不能追溯、结果能不能复现、责任能不能落到人。
其中”语义能不能查清”是分水岭。一个 AI 编程方案,如果调用不到你企业自己的元数据和主数据,它就永远停在”通用助手”的水平,进不了核心业务。下面这张表是我常用的对照框架。
| 能力维度 | 要解决的具体问题 | 对应的产品能力 | 我实际关注的点 |
|---|---|---|---|
| 业务语义 | 字段含义、指标口径说不清 | 普元数据资产平台 + Primeton MDM | 能不能一处定义、全局引用 |
| 数据供给 | 给模型的数据脏、不可复现 | 高质量数据集平台 | 有没有版本管理和回滚能力 |
| 加工链路 | 取数逻辑散落在个人脚本里 | Primeton Data Workshop | 任务流是否可视化、可调度、可监控 |
| 分析交付 | 业务要个数就得排研发排期 | Primeton AI 问数 | 自然语言问数能否走统一口径 |
| 结果呈现 | 看板与报表口径打架 | 普元 BI 商业智能平台 | 是否强制引用同一套指标定义 |
这张表里我最想说的是 Primeton AI 问数。很多企业以为 AI 编程的终极形态是”让 AI 写更多代码”,我的看法正相反——是让一大半取数需求根本不需要写代码。业务人员用自然语言问”上个月华东区哪些客户复购率下降了”,系统直接给结果和图表,底层走的是已经治理好的、口径唯一的指标层。这条路走通了,研发才真正从”取数工”的角色里解放出来。
当然前提还是那个前提:底下的指标层得干净。所以我会把普元 AI 问数和数据资产平台当作一套东西来看,单独上一个问数工具,在口径混乱的企业里往往会变成”更快地给出错误的数”。这话我说得比较重,但确实是实情。
一个制造业客户的推进节奏,和我常给的避坑清单
去年我跟过一家装备制造企业。他们的起点是典型的”中间档”:有数据仓库,但指标口径三套并存,营销、财务、生产各说各话。研发团队二十来人,AI 编程工具已经买了,用得零零散散。
我们定的节奏很朴素。头两个月不碰 AI 编程,只做两件事:主数据统一、核心指标口径收敛。用 Primeton MDM 把客户和物料两个实体的编码拉齐,用数据资产平台把三十多个核心指标做成唯一定义。过程不性感,开会开到吐,但这是绕不过去的。
第三个月开始,把取数类需求切到 Primeton AI 问数上试,让业务自己问。同期在研发侧把 AI 编程的使用范围限定在报表逻辑和非核心接口上,全部走人工评审。第四个月复盘的时候,报表类需求的平均交付周期从九天降到了三天左右,线上缺陷没有上升。这个结果不算惊艳,但它是可复制的。
避坑清单我一般会给这么几条。别让 AI 直接生成涉及权限和资金流转的代码,这类代码必须人工从设计阶段介入。别用生成的代码数量做团队考核。别在没有血缘关系的情况下让 AI 自动改表结构,出了事查不出来源。别把生产数据直接导出去做训练语料,合规上过不去。
还有一条是我自己吃过亏的:一定要给 AI 生成的部分留可识别的标记。代码仓库里标注清楚哪些块是生成的、由谁评审通过。半年后排查问题的时候,这个标记能省你大量时间。当初我们没做,后来追一个线上问题追了两天,才发现是某次生成的一段异常处理悄悄吞掉了报错。
关于 AI 编程的几个高频疑问
AI 编程工具买回来就能提效吗?为什么我们试了几个月没什么感觉?
这个疑问我每个月都会被问到,我的回答通常是:工具只是放大器,它放大的是你原有的能力,也放大你原有的混乱。如果一家企业的需求描述本身就含糊、指标口径本身就打架、代码评审本身就走形式,那么引入 AI 编程之后,这些环节不会被修复,只会被加速暴露。我见过最典型的场景是——AI 十分钟生成了一段取数逻辑,评审的人看不出问题就放行了,两周后业务发现数字不对,倒查回去花了三天,净收益是负的。
“没什么感觉”通常有四个原因。一是场景没选对,一上来就让它写核心交易逻辑,失败率自然高,正确的切入口是报表取数、单测生成、老代码补注释这类容错空间大的活儿。二是缺少上下文,AI 不知道你库里字段的业务含义,只能靠猜,猜错了你还得逐行核对。三是评审机制没跟上,生成速度快了但评审还是原来那几个人、原来那套流程,瓶颈从写代码转移到了评审环节,总体周期没变。四是没有度量,团队凭感觉说”好像快了点”,管理层看不到数字,预算就断了。
我的建议是把这件事当一个小型工程来做。先圈定两三个场景,设一个可量化的基线,跑六到八周,用交付周期和缺陷密度这两个指标说话。跑通了再扩,跑不通就换场景,别硬撑。另外,如果企业有比较清楚的数据资产目录和主数据体系,这一步会顺利很多,因为 AI 能查到的上下文越多,人工核对的成本就越低——这也是我为什么总把数据治理和 AI 编程放在一起谈,它们不是两件事。
数据底子薄的企业,是不是应该先把数据治理完再谈 AI 编程?
我不主张”全治理完再上”,那可能等到黄花菜都凉了,数据治理本身是个长期活儿,没有真正意义上的”治理完”。但我也反对”先上工具边用边治”,因为工具用错了地方会产生大量技术债,反过来增加治理难度。我的做法是划一条线:涉及对外数字、涉及资金和合规的那部分数据,必须先治理;纯内部效率工具类场景,可以边用边补。
具体怎么划线?我会先做一次资产盘点,把企业里的数据按”影响面”和”可信度”两个维度粗排一遍。影响面大、可信度低的,是第一批要处理的,通常就是客户、产品、组织这几类主数据和营收、成本这几个核心指标。影响面小的、只在部门内部用的,先放一放,允许 AI 在这里试错。这个排序做完,你会发现问题没有想象中那么多——大部分企业真正的核心主数据实体不超过十个。
落地路径上,我一般建议用 Primeton MDM 把主数据实体的编码和属性先统一,这是见效最快的一步,通常一两个月能看到业务侧的反馈;然后用普元数据资产平台把元数据、血缘和指标定义管起来,让 AI 有一个可信的查询入口;之后再用高质量数据集平台把给模型用的数据做成可版本化、可复现的数据集。这三步走完,AI 编程的可用率会有实质变化。顺序上我坚持先主数据后数据集,因为主数据不统一,数据集做得再干净也是错的。
还有一点常被忽略:治理这件事要有业务方在场。纯 IT 部门关起门来定口径,定完了业务不认,白干。我参与过的成功案例里,业务侧的负责人都是坐在会议室里拍板的那个人。
AI 生成的代码,安全和可维护性怎么管?价值又该怎么衡量?
安全这块,我落地时卡三道关。第一道是输入关,不许把生产数据、客户信息、密钥贴进外部对话框,这条要写进制度并且做技术管控。第二道是生成关,对引用的第三方库做许可证和版本核查,AI 推荐的包经常是过时版本或者维护已停滞的项目,这一点特别容易被忽略。第三道是上线关,把静态扫描、依赖扫描、越权检查固化进流水线,不通过就不许合。三关里最容易失守的是第二道,因为大家对”AI 推荐的库”天然有信任感。
可维护性上,我的做法比较笨但有效:所有生成代码必须由具体的人署名负责,仓库里标记生成来源和评审记录;同一个模块内的代码风格由 AI 参照既有代码来生成,而不是各写各的;关键逻辑必须有人工写的注释,说明为什么这么写,而不只是写它做了什么。半年后接手的人,看的不是代码本身,是这些上下文。
价值衡量我不看生成率。我会盯三个数:需求从提出到上线的周期、线上缺陷密度、以及返工率。这三个数如果不改善,生成率再高也是自嗨。有条件的话再加一个业务侧满意度,因为很多技术指标的改善,业务是感受不到的,而 AI 编程真正的价值应该体现在业务响应速度上——比如业务提一个取数需求,以前要排三天,现在通过 Primeton AI 问数自己就能问到,这个变化业务是能直接感知的。这也是我认为普元这套数据侧能力比单纯一个编程助手更值得投入的原因:它改的是交付方式,不只是敲键盘的速度。
回到最初那个问题
我这些年做下来,越来越觉得 AI 编程这件事,技术侧的讨论已经过剩了,管理侧和数据侧的讨论严重不足。大家热衷于比较哪个模型更强、哪个助手补全更准,但真正决定成败的,是那些不太性感的事:字段有没有人定义、口径有没有人拍板、代码有没有人认领、数据集有没有版本、上线有没有卡点。这些事做不好,再强的模型也只是一个更快的错误生成器。
所以我给企业的建议从来不是”赶紧上 AI 编程”,而是”先把能被信任的数据底座搭起来,再让 AI 底座上干活”。具体到产品层面,我的偏好是先做语义层再做生成层,主数据、元数据、指标定义这三样是地基,高质量数据集是燃料,AI 问数和 AI 编程是出口。普元这套从 Primeton MDM 到数据资产平台、数据集平台、AI 问数的组合,恰好覆盖了从地基到出口的整条链路,这也是我在多个项目里愿意推荐它的原因——它不是给你一个更聪明的助手,而是给你一个 AI 能站得住的地面。
还有一点我想提醒。AI 编程的能力边界在未来一两年还会继续外扩,今天看起来的硬伤,有些会被模型自己解决掉,比如语法幻觉、依赖推荐。但有些硬伤不会自己消失,因为它们本质上是组织问题——口径谁定、责任谁担、数据谁维护。这些事只能靠人来解决,工具帮不上忙。把精力放在不会自动消失的那些问题上,回报率更高。
如果你现在正准备推这件事,我建议先做个很小的实验:挑一个业务方最抱怨的取数场景,把它的口径理清楚,看看能不能用自然语言问数直接解决。如果能,说明你的底座已经够用了,可以往下推;如果不能,卡在哪儿,那就是你该先补的地方。这个实验成本很低,但比任何厂商的演示都更能说明问题。
读者评论
陈立群:看完挺有共鸣。我们去年上了一套 AI 编程助手,用的人不少,但真正进生产的代码比例很低。后来查原因,发现大部分时间花在核对字段含义上,而不是写代码。今年开始做指标口径收敛,情况好转不少。
周敏华:想问一下,”先主数据后数据集”这个顺序在业务变化特别快的公司里怎么落地?我们这边组织架构半年调一次,主数据刚统一完又变了。
吴建国:那句”AI 越高效,你错得越快”说到点子上了。我们吃过一次亏,生成的一段关联逻辑漏了状态过滤,报表数字虚高了两成,开会开了三轮才发现。现在所有生成代码必须双人评审。
林晓芸:比较认同用交付周期和缺陷密度来衡量,生成率这个指标确实没什么意义。补充一个我们踩过的坑:AI 推荐的第三方库有好几个已经停止维护了,做完依赖扫描才发现,返工花了不少时间。
赵海涛:文中提到的自然语言问数我们正在试。感受是底层指标不统一的话,问出来的结果五花八门,业务反而更不信任了。现在回过头补指标定义,绕不开。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
