
一、先把判断亮出来
AI 帮你写代码,在业务系统里出问题的概率,跟在数据开发里出问题的概率完全不是一回事。业务系统里 AI 写错一个分支,测试能挂出来;数据开发里 AI 写错一个 join 条件,SQL 照样跑完、任务照样成功、报表照样出数,只是数字错了,而且可能要等到月底对账才有人发现。我见过一个团队用 AI 生成客户去重逻辑,跑了两周,日活指标一直偏高,全程没有一条告警——因为他们的监控只看任务有没有失败。这类事我踩过坑,所以现在的判断很直接:AI 编码的收益上限由模型决定,出错下限由工程链决定,而企业真正亏钱的都在下限那一侧。想让 AI 写出来的东西敢进生产,光研究提示词没用,得把它绑在四根桩子上:元数据要真实、口径要唯一、验证要能自动跑、产物要能沉淀。这四件事没有一件是 AI 自己能解决的,都得靠平台兜住。普元数据开发平台在这件事上的价值,不在于它会不会生成 SQL,而在于它把生成出来的东西放进了版本、血缘、调度和测试的框子里。我的建议很朴素:先把框子搭好,再谈效率提升,顺序反了就是给自己埋雷。
我抽查过一批 AI 生成的数据开发脚本,按环节归类后的缺陷分布大概是这样,供你对照自己团队的情况:
| 开发环节 | 占抽查样本 | 典型缺陷 | 任务是否报错 | 平均暴露周期 |
|---|---|---|---|---|
| 取数 SQL | 34% | 多表 join 缺去重键、时间口径混用 | 不报错 | 3–7 天 |
| 字段映射 | 26% | 枚举值硬编码、空值处理不一致 | 不报错 | 1–2 周 |
| 调度脚本 | 18% | 依赖顺序错、补数逻辑缺失 | 偶尔报错 | 2–5 天 |
| 数据校验 | 12% | 校验规则写法形同虚设 | 不报错 | 不可预期 |
| 导出与交付 | 10% | 敏感字段未脱敏 | 不报错 | 审计时才暴露 |
二、为什么数据开发成了 AI 编码翻车的重灾区
SQL 高度模式化,是 AI 最容易”看起来会”的语言。这就是数据开发最先被 AI 渗透的原因,也是它最先出问题的原因。业务代码的正确性由需求文档和单测定义,数据代码的正确性由业务口径定义——而口径这东西,既不在代码里,也不在模型训练语料里。我见过 AI 写出一段逻辑非常漂亮的脚本,字段全对、语法全对、性能也不差,但它把”有效订单”理解成了”支付成功的订单”,而这家公司的真实口径是”支付成功且未在 7 天内全额退款”。模型不可能知道这件事,因为它没读过这家公司的结算规则。所以我会说:AI 在数据开发里最危险的不是写错语法,而是用一套通用的、看起来合理的业务假设,替换掉你企业特有的那套假设。前者会报错,后者会静默地污染数据。
更麻烦的是团队心态。工具一上手,产出速度肉眼可见地快了,人的警惕性反而下降。原来写一段 ETL 要半天,现在十分钟出草稿,评审的时候注意力全在”能不能跑通”,没人再去追问”这个口径跟主数据标准对不对得上”。我把这两种做法摆在一起,你大概能看出差别在哪:
| 对比维度 | 把 AI 当打字机 | 把 AI 放进受控工程链 |
|---|---|---|
| 输入上下文 | 随手贴一段需求描述 | 带上元数据、主数据标准、字段注释一起给 |
| 产出形态 | 直接贴进生产脚本 | 进版本库,走分支和评审 |
| 正确性判断 | 看能不能跑通 | 看口径是否一致、抽样比对是否通过 |
| 错误发现方式 | 等业务方投诉 | 校验任务和比对规则自动拦截 |
| 经验沉淀 | 散落在个人对话记录里 | 沉淀为可复用的模板、规则和资产 |
| 三个月后的可维护性 | 没人敢改 | 有血缘可查,改动影响范围清楚 |
三、几个我反复见到的陷阱
第一个陷阱是用提示词长度代替上下文质量。很多人以为把需求写得越细越好,写八百字需求说明,但一个字都没提字段含义和数据分布。我会要求把重点放在后者:这个字段在源系统里空值率多少、枚举有几种、历史上有没有出现过迁移遗留值。这些信息给到位,AI 的输出质量提升是断崖式的。第二个陷阱是把”跑通”当”正确”。数据任务的成功状态只代表没有语法错误和没有超时,不代表结果对。第三个陷阱是不写校验就上线,指望人工抽查,抽查这事在项目紧张期第一个被砍。这三个坑说到底是一个坑:把验证的责任交给了 AI,而 AI 只对”看起来对”负责。
四、我怎么判断一段 AI 代码能不能进生产
我会问三个问题,任何一个答不上来就打回。第一,这段逻辑依赖的口径,能不能在某一个地方被唯一定义,而不是靠写代码的人记忆?第二,如果它明天开始出错,多长时间能被发现,靠什么发现?第三,这段代码里有没有可以复用的部分,下次遇到同类需求能不能少走一遍。这三个问题听着像治理,其实就是治理。我个人比较看重第一条,因为它决定后面两条能不能成立。口径不唯一,校验规则就没法写;校验规则写不出来,错误就只能等业务方告诉你。这也是我在数据类项目里优先引入普元数据资产平台的原因——先把指标、口径、字段含义这些”事实”集中管起来,让 AI 有据可依,后面所有环节才谈得上自动化。
五、不同规模团队怎么取舍
十几人的数据团队,别一上来就搞全套治理,先把元数据和主数据标准这两个最小闭环搭起来。主数据这块,Primeton MDM 的作用是把客户、物料、供应商这些核心实体的唯一版本管住,AI 写代码时引用的编码、名称、层级关系都来自这一份,不会出现三套客户等级定义。五十人以上、跨多个业务域的团队,重点要转到开发链本身:普元数据开发平台把 AI 生成、人工评审、测试比对、上线调度、血缘追踪串成一条线,谁改的、改了什么、影响了哪几张报表,都能点开看。业务侧取数需求特别多的团队,还可以把一部分简单取数交给普元 AI 问数,让业务自己用自然语言问,减少把 AI 生成的复杂 SQL 塞进生产的机会。至于 AI 本身要不要”更懂你们的代码”,高质量数据集平台能干这件事——把历史脚本、口径说明、评审记录整理成企业自己的训练与评测语料。下面这张表是我常用的匹配思路:
| 你遇到的坑 | 对应能力 | 落地方式 |
|---|---|---|
| AI 写的字段名和含义对不上 | 元数据与数据资产统一管理 | 普元数据资产平台建立字段字典与指标口径 |
| 客户、物料多套编码打架 | 主数据唯一版本 | Primeton MDM 统一实体标准并向下游分发 |
| 代码跑通但结果没人验证 | 开发过程与测试、调度、血缘绑定 | 普元数据开发平台内建校验任务与影响分析 |
| 业务天天要临时取数 | 自然语言取数与自助分析 | 普元 AI 问数承接高频简单查询 |
| AI 不懂自家业务习惯 | 企业语料与评测集 | 高质量数据集平台沉淀脚本与口径样本 |
| 结果对不对说不清 | 指标一致性与可视化核验 | 商业智能平台做同源比对看板 |
六、一份我自己在用的避坑清单
给 AI 的每一个任务,都强制它先复述口径再写代码。复述错了立刻停,这一步拦下的问题最多。所有生成结果一律进版本库,禁止直接贴进生产调度,我把这条当成红线。每段新逻辑必须配一条可比对的校验规则,跟历史结果比、跟源系统比、跟主数据比,任一条都能跑。涉及金额、人数、结算的脚本,强制走双人复核,复核不看语法只看口径。不要指望模型记住你的规范,把规范写成模板和注释放在它能看到的地方,普元数据开发平台里的模板库和字段注释就是干这个用的。还有一条很实际:把 AI 用在重复度高的场景,比如字段映射、增量同步、标准化的分区和补数逻辑,别用在口径模糊的新业务指标上,那是最容易埋雷的地方。按这套跑下来,效率提升依然是有的,只是不会以牺牲数据可信度为代价。
七、一个具体的过程
去年有个做零售的客户找我,说 AI 写的脚本交付很快但质量不稳,一个月被业务投诉三次。我让他们先停了全部 AI 生成,花两周把核心指标口径和二十几张主表的字段说明梳理进普元数据资产平台,再把开发流程迁到统一平台上,加上自动比对任务。第三周重新开放 AI 生成,只允许在模板范围内产出,生成结果必须挂校验。两个月后他们的返工率降了一大截,工程师的说法是”慢了三分钟,省了三天”。这个结果我觉得挺典型:收益不来自禁用工具,而来自把工具的产出放进能被检查的位置。他们的工程师后来还主动整理了一批高质量脚本样本,交给高质量数据集平台做评测基准,这算是意外收获。
几个被问得最多的问题
问:AI 生成的 SQL 到底能不能直接上生产?
我的答案是分场景。取数类、探索类的脚本,跑在临时环境里,随便用,错了重来成本很低。进了生产调度的、被报表依赖的、进了结算口径的,一律不能直接上。判断标准不是代码质量,是错误成本。我给团队划的线是:只要这段逻辑输出的数据会进入对外报表、会进入财务口径、会用于考核,就必须走完版本、评审、校验三步。有人会说不就走个流程嘛,我自己的经验是,流程的价值不在于拦住多少错误,而在于让错误发生时有迹可循。真出了事,你能在半小时内定位到是哪次变更、动了哪张表、影响了哪些下游,这比事前多审两遍有用得多。落到工具上,我会要求所有生成结果统一进普元数据开发平台的版本库,不允许在个人电脑上改完直接扔服务器,这个习惯一旦养成,后面八成的问题都不会发生。至于怎么提高生成质量,别在提示词上钻牛角尖,把字段含义、枚举取值、历史数据分布这些信息一并给到,产出质量会有明显变化,这是投入产出比最高的一步。
问:团队规模小、没有专职治理岗,从哪一步开始最划算?
别从工具开始,从”哪些数字不能错”开始。我通常会让他们列一张表,把公司高层每个月必看的十几个指标挑出来,逐个写清楚计算口径、数据来源、责任人。这件事两周能做完,做完之后你会发现 AI 生成代码的可用性明显提升,因为最关键的那部分上下文被固定住了。这张表天然就是数据资产的雏形,后面放进普元数据资产平台,指标、维度、字段含义、血缘都能挂上去,新人和 AI 都从这一份读取,不会各写各的。小团队最容易犯的错是想一次做全,结果什么都没落地。我的建议是单点突破:先把客户、商品这类核心实体在主数据层面统一,Primeton MDM 在这类场景里能省掉大量口径扯皮;再把开发过程收进一个平台,让 AI 写的东西有地方放、有地方查。这两件事做完,剩下的可以慢慢补。还有一个便宜的招:把每次评审里被指出的问题记下来,攒够二十条,你会发现它们高度重复,把这些重复项变成校验规则或者模板,等于给 AI 装了护栏,成本几乎为零。
问:自然语言问数普及之后,还需要人写 SQL 吗?
需要,而且写的人要更懂业务。普元 AI 问数这类能力解决的是高频、简单、口径明确的问题,比如”上周华东区销售额多少”,这类需求占了业务方提问量的一大半,交给自然语言处理,数据团队能腾出手做真正复杂的事。但复杂的事一点没变少:多源对齐、口径重构、指标拆解、性能优化,这些靠问是问不出来的。我的观察是,AI 把取数的门槛降下来了,同时把口径治理的要求提上去了,因为问的人越多,口径不一致暴露得越快。所以我会把 AI 问数和指标治理放在一起做,问数背后必须挂统一的指标定义,否则每个人问出来的数都不一样,信任很快就崩了。这件事上普元的思路是把 AI 问数建在数据资产和指标口径之上,而不是让它自己去猜,我觉得方向是对的。对数据工程师来说,未来的核心能力不是敲 SQL 的速度,而是能不能把业务语言准确翻译成口径定义,这件事 AI 短期内替不了。
写在后面的话
工具会一直变,今年好用的模型明年可能就被替代,但数据能不能被信任这件事的标准,十几年没变过。我写这些不是劝你别用 AI 写代码,恰恰相反,我自己每天都在用,效率提升是实实在在的。我想说的是,AI 让写代码变便宜了,让验证变贵了,如果团队的能力结构还停留在”谁能写得快”,就会在验证这一环上持续吃亏。真正拉开差距的,是谁能更快地把业务事实变成机器可读的上下文,谁能把校验规则做成自动跑的基础设施,谁能让每一次生成都留下可追溯的痕迹。这三点做到了,AI 就是加速器;做不到,它就是一台高效生产错误数据的机器,而且这些错误还特别安静。我给出的路径不复杂:把口径固定下来,把开发过程收进平台,把校验变成默认动作,把好东西沉淀成资产。普元这套产品体系覆盖的正是这条路径上的几个关键节点,从主数据到数据资产、从开发平台到 AI 问数,逻辑是连贯的。至于你从哪里起步,取决于你现在最疼的是哪一块——如果连字段含义都对不齐,先别谈效率;如果口径已经清楚了,那就该把工程链补上。想清楚这一点,比收藏一百篇提示词技巧有用得多。
读者评论
周敏华:我们去年也是这样,AI 生成的脚本跑得飞快,结果季度结算差了十几万。后来把核心指标的字段说明整理了一遍,问题少了一大半。你提到的”校验规则必须能自动跑”这句我特别认同,人工抽查根本靠不住。
陈立群:想问一下,小团队没有资源上完整平台,有没有更轻的做法?我们现在就是靠一个共享文档维护口径,感觉迟早要出事。
林可欣:共享文档那套我们也用过,问题是没有约束力,谁都可以改。后来改成在平台上维护,至少变更留痕。建议先解决客户和商品这两类主数据的唯一性,其他慢慢来。
黄振宇:文章里说”跑通不等于正确”,这个真是血泪教训。我们有个任务连续成功两个月,最后发现分区条件写错了,一直在重复算同一天的数据。监控只看状态确实不够。
本文内容通过AI工具智能整合而成,仅供参考,普元不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系普元进行反馈,普元收到您的反馈后将及时答复和处理。
