网易首页 > 网易号 > 正文 申请入驻

让AI写技术文档时,工程师在做俯卧撑

0
分享至

一份机器可读的系统架构文档,能让代码审查从"抓拼写错误"变成"拦截系统性安全漏洞"。这不是假设——有人已经跑通了。

被忽视的上下文层


软件工程里有个顽固的假设:结构良好的代码能自我解释。干净的函数、清晰的命名、10分的代码检查分数——还不够吗?

代码描述系统如何执行。架构文档描述系统为何存在,以及它如何与周围一切交互。没有这个上下文层,每个自动化分析工具都在黑暗中摸索。

它看到一个函数,却看不到它在服务网格中的角色。它看到一个API调用,却看不到它应该执行的安全边界。

当你把AI工具引入工程流程时,这个区别变得极其关键。没有架构上下文的大语言模型分析原始代码,就像让资深工程师在没有系统设计权限的情况下做安全审查。

实验平台:Google Cloud上的微服务迷宫

实验对象是一个真实的生产平台。运行在Google Cloud,包含几十个微服务,部署在Cloud Run(谷歌的容器化无服务器平台)上,通过REST API交互,资产持久化到Google Cloud Storage(谷歌云的对象存储服务),所有AI操作路由经过集中式的Vertex AI(谷歌的统一机器学习平台)网关。

系统丰富且连接紧密——但唯一的文档散落在各处README文件里。

目标是:为每个服务生成标准化、机器可读的架构快照,直接提交到代码仓库。

方法是:引导式自主代理执行。

工程师设定方向,建立文档标准,然后退后。AI代理——由Gemini 3 Flash和Claude Sonnet 4.6驱动,运行在Antigravity(一个代理式AI编程助手)内部——接管任务。

它自主检查每个服务,阅读源代码,追踪服务间依赖,将现有实现与文档标准交叉比对,迭代生成结构化的ARCHITECTURE.md文件。工程师在大部分过程中的主要活动是体育锻炼。

三级文档架构的诞生

输出不是随意笔记,而是有纪律的多层级文档体系:

平台根目录下的ARCHITECTURE.md(Level 0):全局服务网格、拓扑结构、生命周期状态

每个服务目录下的ARCHITECTURE.md(Level 1):安全策略引擎、FinOps治理、API契约

关键模块内的ARCHITECTURE.md(Level 2):数据流、错误处理策略、合规控制

这种结构不是装饰。它让机器能够遍历——从全局拓扑钻取到具体实现细节,再返回。

AI质量门禁的质变

真正的测试在文档生成之后。这些架构文件被输入到AI驱动的质量流水线,结果改变了静态分析的本质。

传统静态分析工具检查代码语法、风格违规、明显的安全反模式。它们对架构层面的风险视而不见:一个服务绕过网关直接调用Vertex AI,破坏了统一的审计和计费策略;一个存储桶配置为公共读取,而架构要求私有;一个API端点暴露给外部,却没有对应的身份验证中间件声明。

有了架构文档作为输入,AI质量门禁获得了系统视角。它不再孤立地审查文件,而是对照ARCHITECTURE.md中声明的意图验证实现。

实际拦截的案例:某次提交中,一个微服务新增了对Cloud Storage的直接写入。代码本身无懈可击——正确的错误处理、适当的日志记录、符合Google Cloud最佳实践。但架构文档明确规定:所有存储操作必须通过核心AI网关,以确保统一的访问审计和成本归因。

AI门禁标记了这次偏离。不是代码错误,是架构违约。

从被动检查到主动治理

这个转变的核心在于文档的位置。架构文件与源代码共存于仓库,意味着它们参与版本控制、代码审查、CI/CD流程。

当架构意图变更时,ARCHITECTURE.md的修改与代码变更一起被审查。当实现偏离文档时,差异在合并请求阶段就被捕获。当新服务加入平台时,代理自动生成其架构快照,确保文档债务不会累积。

更重要的是,这为AI工具提供了可消费的上下文。大语言模型在分析代码时,可以检索相关的架构段落,理解这段代码在更大系统中的契约义务。

实验中的质量流水线使用了检索增强生成(RAG,一种让AI模型访问外部知识库的技术):代码变更触发对架构文档的向量检索,将相关系统上下文注入分析提示词。结果是诊断精度的显著提升——从"这里有个可疑的API调用"到"这个调用违反了服务网格第3.2节规定的认证流程"。

FinOps与安全的交叉验证

架构文档的一个意外收益领域是成本治理。Google Cloud平台的FinOps(云成本优化实践)控制分散在多个服务的实现中,缺乏统一视图。

代理生成的文档强制每个服务声明其资源类型、自动扩缩容策略、以及与其他服务的成本归属关系。当AI质量门禁检测到某次提交引入了新的Cloud Run服务实例类型时,它能交叉检查架构文档中的成本层级声明,标记潜在的预算偏离。

安全边界同样受益。实验平台的核心AI网关作为所有Vertex AI调用的单一入口,承担着统一的认证、审计、速率限制职责。架构文档明确记录了这条边界。当代码审查发现某服务尝试直接实例化Vertex AI客户端时,AI门禁立即识别为架构违规——无论该代码在孤立视角下多么"正确"。

人机协作的新边界

实验中最具启示的部分是工程师角色的重新定义。不是消失,而是转移。

工程师的核心贡献发生在前期:定义文档标准(基于C4模型和Arc42的混合结构)、建立代理的自主边界(哪些操作需要人工确认)、设计质量门禁的验证规则。

执行阶段,工程师的干预降至最低。代理在遇到模糊情况时记录待办事项,而非立即中断人类。这些待办事项在批量处理时段由工程师审阅——通常是运动后或会议间隙。

这种异步模式改变了技术文档的生产节奏。传统上,架构文档是项目初期的冲刺产物,随后逐渐腐烂。实验中,文档与代码同步演化,代理持续维护其新鲜度。

可复现的方法论

实验的具体配置值得记录,供类似平台参考:

代理核心采用Gemini 3 Flash处理大规模代码库遍历(其长上下文窗口适合跨文件分析),Claude Sonnet 4.6负责文档生成(在结构化输出和格式遵循上表现稳定)。两者通过Antigravity的代理编排层协调,该层管理工具调用序列和状态持久化。

文档标准融合了C4模型的层级视角(语境图、容器图、组件图)与Arc42的章节结构(引言与目标、架构约束、系统范围与上下文、解决方案策略)。关键创新是强制每个层级包含"机器验证点"——可被静态分析工具检查的声明,如"本服务所有出站流量必须经过core-ai-gateway"。

质量流水线集成在GitHub Actions中,触发条件包括:拉取请求创建、定时全量扫描、架构文档变更。分析引擎使用RAG检索相关架构上下文,生成针对具体变更的诊断报告。

局限与未解问题

实验也暴露了边界。代理在推断隐式依赖时偶尔出错——某服务通过共享库间接调用Cloud Storage,代理最初将其记录为直接依赖。需要人工审查来纠正这类误判。

架构文档的粒度也是持续权衡。过于详细导致维护负担和噪音;过于简略则失去机器验证价值。实验中的Level 2文档(模块级)经历了多次迭代才找到平衡点。

更根本的是,这种方法假设代码仓库是真相的单一来源。对于大量使用基础设施即代码(IaC,通过代码管理云资源)但配置分散在Terraform模块、Kustomize覆盖层、甚至云控制台手动变更的平台,代理的视图必然不完整。

行业信号的解读

这个实验发生在更广泛的工程实践转型背景中。GitHub Copilot、Cursor、Devin等工具正在将AI从代码补全扩展到任务级自主执行。但大多数关注焦点在代码生成本身,而非代码的上下文基础设施。

实验的价值在于指出:AI辅助工程的下一个瓶颈不是代码写得更快,而是代码被理解得更深。而理解需要结构化的、机器可消费的系统知识——这正是传统技术文档的角色,但传统生产模式无法跟上AI驱动的开发速度。

代理生成文档+AI消费文档的闭环,可能是解决这个瓶颈的可行路径。它不是消除人类工程师,而是将人类从重复性的信息搬运中解放,专注于更高阶的架构决策和异常处理。

立即验证的切入点

如果你管理着微服务平台,不需要等待完美方案。选择一个边界清晰的服务子集,定义最小可行的文档标准(即使只是强制包含:服务目的、依赖列表、关键安全边界),部署一个代理实验。

关键不是文档的完美,而是建立"文档作为代码"的管道——版本控制、自动验证、与质量门禁集成。一旦这个管道运转,迭代改进会自然发生。

最便宜的验证方式:在下次代码审查中,手动检查变更是否违背了任何隐含的架构假设。那些被标记的"这看起来不对"的直觉,就是应该被编码进ARCHITECTURE.md的验证点。让代理从那里开始。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
俄国防出口公司:已签署一系列苏-57E战机出口合同

俄国防出口公司:已签署一系列苏-57E战机出口合同

财联社
2026-04-14 18:35:12
萧旭岑事件新进展,马英九三十年好友发声,其健康确实出状况

萧旭岑事件新进展,马英九三十年好友发声,其健康确实出状况

别跟我提回忆
2026-04-15 17:30:09
苹果官微发文提醒iPhone用户立即更新设备

苹果官微发文提醒iPhone用户立即更新设备

界面新闻
2026-04-15 08:26:07
中国15岁“跨栏少年”横空出世!天赋异禀,网友:下一个刘翔

中国15岁“跨栏少年”横空出世!天赋异禀,网友:下一个刘翔

罗掌柜体育
2026-04-16 12:16:03
格力怒斥海信,称其没资格用“真铜实料”四字进行宣传,海信高管回怼:又当又立

格力怒斥海信,称其没资格用“真铜实料”四字进行宣传,海信高管回怼:又当又立

大风新闻
2026-04-15 15:07:03
广州仔张敬轩:宁要殖民太子道,不要家乡解放路

广州仔张敬轩:宁要殖民太子道,不要家乡解放路

南万说娱26
2026-04-15 12:25:10
金子涵陪睡早没人提了,身体开始不听使唤,她们到底被打了什么针

金子涵陪睡早没人提了,身体开始不听使唤,她们到底被打了什么针

草莓解说体育
2026-04-17 01:32:03
许家印认罪未满24小时,王健林传来了“噩耗”,马化腾当年没说错

许家印认罪未满24小时,王健林传来了“噩耗”,马化腾当年没说错

大鱼简科
2026-04-16 14:43:44
张馨予老公何捷在广州大学给保安上课,胸肌发达个子矮,一身爹味

张馨予老公何捷在广州大学给保安上课,胸肌发达个子矮,一身爹味

小娱乐悠悠
2026-04-15 08:49:29
一个人,能够在这3件事上很安静,往往是福厚之人

一个人,能够在这3件事上很安静,往往是福厚之人

知和大叔
2026-03-25 23:44:40
痛心!江西跑友刘涛去世,仅51岁,生前坚持晨跑,是3家公司老板

痛心!江西跑友刘涛去世,仅51岁,生前坚持晨跑,是3家公司老板

离离言几许
2026-02-25 10:43:45
拿到儿子亲子鉴定报告,我轻抚妻子头发:你上司的第三个孩子?

拿到儿子亲子鉴定报告,我轻抚妻子头发:你上司的第三个孩子?

晓艾故事汇
2026-02-07 09:19:00
申诉成功!东契奇和坎宁安均能参与评奖 爱德华兹却未能通过

申诉成功!东契奇和坎宁安均能参与评奖 爱德华兹却未能通过

惊奇侃球
2026-04-16 23:59:56
现场开炮!波兰议员当众嘲讽以色列:看好了,你们国旗长这样才对

现场开炮!波兰议员当众嘲讽以色列:看好了,你们国旗长这样才对

基斯默默
2026-04-15 21:31:52
互联网是有记忆的,她的黑历史一大堆啊!

互联网是有记忆的,她的黑历史一大堆啊!

BenSir本色说
2026-04-15 22:38:07
1996年蒋孝勇病重,向大儿子蒋友柏坦言:你奶奶是一个苦命的女人

1996年蒋孝勇病重,向大儿子蒋友柏坦言:你奶奶是一个苦命的女人

莫地方
2026-04-17 00:20:03
从282群的录屏看,就是陈某汐!网友:全红婵说活着就好,我悟了

从282群的录屏看,就是陈某汐!网友:全红婵说活着就好,我悟了

开成运动会
2026-04-14 18:32:59
北影红毯惊呆!刘雅瑟真空上阵,马思纯瘦脱相,戚薇大方露美背!

北影红毯惊呆!刘雅瑟真空上阵,马思纯瘦脱相,戚薇大方露美背!

螃蟹吃瓜摊
2026-04-17 01:25:03
北京今日降雨,已达中雨量级,下一波雨又来了!

北京今日降雨,已达中雨量级,下一波雨又来了!

鲁中晨报
2026-04-16 20:24:18
中国11人进世锦赛,张安达请客,5人小团体聚餐,跟赵心童开玩笑

中国11人进世锦赛,张安达请客,5人小团体聚餐,跟赵心童开玩笑

球场没跑道
2026-04-16 13:43:29
2026-04-17 02:47:00
硬核玩家2哈
硬核玩家2哈
沉淀中,勿扰
1475文章数 7关注度
往期回顾 全部

科技要闻

赵明:智驾之战,看谁在大模型上更高效

头条要闻

特朗普宣布黎以将停火后 以军大规模空袭黎巴嫩

头条要闻

特朗普宣布黎以将停火后 以军大规模空袭黎巴嫩

体育要闻

皇马拜仁踢出名局,但最抢镜的还是他

娱乐要闻

丝芭传媒创始人王子杰去世,享年63岁

财经要闻

海尔与医美女王互撕 换血抗衰谁的生意?

汽车要闻

空间大五个乘客都满意?体验岚图泰山X8

态度原创

数码
游戏
艺术
健康
亲子

数码要闻

荣耀史上最短发布会,发布荣耀史上最强MagicBook数字系列

《荒野大镖客3》最全新情报!前传还是新故事?

艺术要闻

你绝对想不到!这幅油画背后的美丽故事!

干细胞抗衰4大误区,90%的人都中招

亲子要闻

孩子被伤害,不要去责备妈妈!

无障碍浏览 进入关怀版