从0到1:企业级AI项目迭代日记 Vol.15|划清边界之后,AI 们自己就跑起来了
昨晚,一个工程师睡觉了。他的电脑没有睡觉。两个 AI 在他的机器和远端服务器之间来回传消息——一个写代码,一个审代码,审完推回去继续写,写完再推过来审。没有人盯着,没有人催,就这样转了十个小时。
早上他起来,打开 Codex 的总结报告,看了看方向有没有跑偏,文档有没有更新,有没有越界的地方。Codex 说:文档更新好了,方向可行,建议讨论一下某个模块的取舍。
他没有写一行代码。完成了平时三四天的工作量。
这件事在今天的会议上被分享出来,然后大家沉默了一会儿。
不是因为技术有多复杂——实现起来其实并不难。而是因为它在说一件更大的事:当 AI 开始管 AI,人该站在哪里?
一、系统探索器“吓到”了 GPT-5.5
昨天把系统探索器演示了一遍。
流程大家现在都熟了:录入目标系统的登录地址和凭证,后台起一个 worker 去登录、去点页面、去抓接口,最后整理成一个待审核的工具列表,审核通过之后挂到指定 Agent 上,企业员工发起对话时就能直接调用那些接口能力。
演示跑得还算顺。“一桌好酒”的仓库、门店、订单接口抓回来了二十多个,选几个审核通过,挂上去,新会话里 Agent 就能用了。
但中途出了个插曲。
在用 GPT-5.5 帮着写探索逻辑的时候,它突然说:
“我怀疑你在做网络安全逆向工程,我不能继续提供帮助。”
然后停了。
于是开始哄它。解释这是企业自己的系统,是合法授权的,是用来做内部 AI 集成的,不是黑产。哄了好一会儿,它才继续干活。
这件事有点好笑,但也有值得认真对待的地方。
从技术上说,我们在做的事情——架一个浏览器,用自己的凭证登录自己的系统,在网络层监听所有请求——本身就是标准的接口分析流程,并没有什么见不得人的。但 GPT-5.5 的判断逻辑没有这层“上下文”,它看到的是行为特征,一看就觉得像在搞安全逆向,于是直接拒掉了。

这反过来也提醒了一件事:当这个功能真正对外落地的时候,我们自己的系统提示词、交互描述,要把“目的”和“边界”说得足够清楚。 不只是为了不触发模型的安全判断,也是为了让企业客户在用这个功能的时候,能清晰理解这个工具在干什么、能干什么、不能干什么。
二、昨晚搞到凌晨,知识库终于接进去了
知识库这边,今天有一个简短但实在的进展:接进去了。
昨晚搞到凌晨两三点才跑通。接入方式确认为专属的 RAG 节点,由意图路由决定是否触发——不是每次对话都必走,只有当判定为查询型意图时才触发。
这个边界很关键。 知识库一旦变成受控节点,后续的权限控制、范围限制、查询治理才有地方接。
现在还有一些遗留问题:切片 overlap 偏小、语义断裂偶尔出现、处理链路对外部 API 依赖还比较重。但基础链路通了,可以一边用、一边调。
三、后台里有一道“知识的诅咒”
今天有一个观察,说的是产品本身的问题。
打开系统后台,能看到这些词:意图、Graph、Handler、节点、热加载、子图路由。
对做这个系统的人来说,这些词完全正常。但如果一个企业的管理员第一次进来,他会知道该干什么吗?
大概率不会。
这就是“知识的诅咒”——你知道得越多,越容易忘记别人不知道。你觉得“意图”是个普通词,但对方可能完全不知道这里的“意图”是什么意思,更不知道为什么要配置它。
把这个问题摊开讨论之后,大家达成了一个共识:Graph 管理、节点管理、意图配置——这些根本不是给企业客户用的,是给实施团队用的。是部署进去之后,根据企业业务形态做扩展时用的工具包。
面向客户的那一侧,早晚要用另一套语言——他们能看懂的话,告诉他们能干什么。 这两套界面,迟早需要认真拆开来做。

四、意图分析为什么会飘:一个参数的事
Agent 重构之后,意图判定节点上线了。
但测试发现:同样一句话,两次跑出来的意图可能不同。这次判定成 Task,下次跳成另一个相近意图,飘来飘去,不稳定。
解法出乎意料地简单——把 Temperature 调到 0。
Temperature 控制的是模型输出的随机性。调到 0,模型会走最确定的路径,不乱飘。对于意图识别这类分类任务,这个参数几乎是必调项。实测下来,正负 2% 以内的偏差,比之前用工程方法替代 LM 的效果还稳。
需要模型推理思考的地方可以适当调高,但也不用太高,0.3 左右够用。
不是所有模型能力问题都需要换模型,有时候就是参数没调对。
另外,意图管理界面已经改成树状结构,可以自己配置意图体系,不再是几个类型硬编码在代码里。落地到不同企业时,根据那家企业的业务形态去配,而不是一套意图用到底。
五、一个 AI 写代码,另一个 AI 盯着它
现在说今天最让人印象深刻的事。
这套做法的结构,说起来很朴素:
Claude Code 在本地负责开发。 每做完一段,它会停下来——这个“停”不是卡住了,而是一个信号点,官方叫 Stop Hook。系统捕捉到这个信号,自动把两样东西推给另一边的 Codex:这次停下来的问题是什么,以及 GitHub 上最新提交的代码是什么。
Codex 读完,给出审核意见和下一步计划,推回去,Claude Code 继续干。循环就这样转起来了,不需要人盯着。
这套分工有一个关键的权限设计:Codex 只能提意见,不能动代码。
这个限制很小,但它决定了整个链路不会失控。如果审核的那个 AI 也能改代码,最后没有人知道是谁改了什么、为什么改,整个系统就变成了黑盒。厨师只管做菜,服务员只管传菜和反馈,老板只管菜单方向——这套分工在餐厅里是常识,在 AI 协作里同样适用。

还有一个反直觉的细节:他要求测试响应时间必须是毫秒到秒级,超过一分钟就不通过,继续改。这个要求把原来50 分钟一轮的测试,最终压到了5.3 秒——不是模型变快了,是约束条件写进去了,模型自己想办法做到的。
当分工做清楚、边界定清楚、约束条件写进去,AI 和 AI 之间是可以自己转起来的。 你只需要管那个真正应该管的层面。
当然这件事有成本——每一次审核循环都要消耗 token,单次开发效率会下降一半左右。但当整体循环跑起来,积累下来,整体效率快出很多。
六、空回复为什么会发生,找到规律了
这套双 AI 循环在调试过程中,顺手解决了另一个困扰已久的问题:空回复。
这段时间系统里一直有个现象:AI 偶尔会给出空回复,有时空了就停,有时空了还继续跑,行为不一致,难以复现。
今天这个问题有了更清楚的答案:
只要 AI 说了话,但后面没有立刻跟工具调用,大概率就是空回复。
AI 一旦开始“说话”却不“做事”,这个回合就容易断。解法是在脚本层加干预:当 AI 触发“研究跟自己相关的事情”时,强制挂起一个工具调用,打破这个触发条件。加了这个处理之后,昨晚那套循环跑了十个小时没有中断。
用了 Hook 钩子还有一个附带好处:即便偶尔空回复了,钩子也会把 AI 重新勾起来,不会就这么断掉。
七、让 Claude 写出好代码,两个词够了
在用 Claude 编码的过程里,今天集中说了两个实用经验。
第一个:Claude 喜欢把所有功能堆在同一个文件里。
文件越来越大,多人同时编辑,合并冲突就越来越多。解法是在提示词里主动说清楚:“这个功能做成独立类”——它会把文件切小,冲突范围自然缩小,多人协作的摩擦就少了。
第二个:在提示词里加两个词,效果出奇地好。
-
“生产级”:让它开始考虑 Linux / Mac / Windows 兼容性、服务器和本地的差异、不同用户的情况,不再只顾当前环境能跑;
-
“优雅”:让它倾向于用最佳实践,而不是找最简路径,因为它的默认策略就是最简路径,能跑就行。
这两个词加进去,输出质量明显不一样。 不需要写长篇 prompt,就这两个约束。

八、那个上下文限制,不是技术问题,是价格问题
还有一个值得记的细节。
GPT-5.5 支持百万 token 的上下文,但系统里配的上限是 27.7 万。不少人以为这是技术限制——今天才澄清:这是价格原因。 OpenAI 的计费在 27.7 万 token 以内是一个价格,超过之后是另一档,明显更贵。
今天翻了一个企业客户的使用记录,一次会话里缓存了接近 30 万 token,单次调用成本快到一美元了。有人开玩笑说,不知道他们往上下文里塞了什么,像是把《红楼梦》全文传进去了。
这个数字背后是定价逻辑,不是能力瓶颈。对现阶段来说,维持 27.7 万的上限是合理的。如果以后有客户确实需要更长上下文,可以按需放开,成本也会同步变化,需要提前跟对方说清楚。
九、五一前,先把“能用”这件事做完
五一之后,有一个目标客户要开始认真推进,下个月可能就要带着这套系统去做现场部署。
这意味着一件事:稳定性现在就是主线,不是以后再说的事。
TODO 列表还有 50 多项,但功能项可以先放一放,先把已有的功能做稳、做通。现在的状态是各种地方报错、各种地方要绕,本地好用的功能合进去就废,集成层的摩擦积在一起,导致真正想用的人用不起来,也就没法积累真实反馈。
没有真实反馈,就不知道该加什么、该改什么。

加功能随时都能加。但一个不稳定的系统进了企业,留下的印象很难挽回。
今天这场会,最重要的不是某个功能上线了。
而是有人用一个晚上,演示了一件事:当分工做清楚、边界定清楚、约束条件写进去,AI 和 AI 之间是可以自己转起来的。人只需要管那个真正应该管的层面。
这件事如果做对了,可能比再加十个功能都更值钱。
这,是第十五天。
《从0到1:企业级AI项目迭代日记》记录一个企业级 AI 项目从创意、架构到落地的真实过程。不讲神话,只记录进化。
如果你也在做企业 AI 落地,欢迎留言来聊。或者,把这篇转发给一个正在踩同样坑的朋友。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐
所有评论(0)