1. 认知与定位:AI辅助技术文档的价值边界
我平时带技术文档项目,接触过研发、产品、测试、法务和客户支持同事。大家提到“让AI辅助撰写技术文档”,第一反应常常是“能不能直接生成一篇能发的文档”。我的经验是,先把期待放低一点,效果反而更稳。技术文档写作的痛点很具体:信息散在会议纪要、代码注释、工单、聊天记录和旧文档里;同一个接口改了三次,文档还停在上一版;写作者被排期追着跑,审校时间被压缩;读者分层明显,开发要看参数和错误码,运维要看排障步骤,客户要看操作路径。AI介入的价值不在“替人写完”,而在把这些碎片先拢起来,把重复表达先压下去,把明显漏洞先挑出来。
我见过的有效介入场景有几类。需求评审后,用AI把零散结论整理成需求文档骨架;接口定义和代码注释比较完整时,用AI辅助生成API文档初稿;发布说明从合并请求和提交记录里先拉一版草稿;客服工单聚类后,用AI辅助提炼常见问题,给用户手册补章节;旧文档语言过时、结构混乱时,用AI做改写和分层。这个阶段我会盯住一个判断:输入材料是否足够支撑事实。材料不足,AI会补得很顺,顺到让人放松警惕。
我自己踩过坑。有次让模型根据一段接口描述补参数表,表格很齐整,字段说明也像模像样,版本号却对不上。问题出在输入里混了旧版示例。AI辅助撰写技术文档的边界,第一层就是“它能组织语言,不能替你确认事实”。把这个边界讲清楚,团队才愿意用它做草稿、做改写、做审校,而不是把它当成一键发布机。
1.1 技术文档写作痛点与AI介入场景
技术文档写作的痛点,表面看是“写得慢”,往里看是“找得难、对不齐、改不动”。我做过一次文档盘点,同一个鉴权流程在四篇文档里有四种说法,术语也不统一,读者搜“令牌”和搜“token”得到的结果不一样。写作者花大量时间在复制、粘贴、改标题、调格式,真正用来确认事实和梳理结构的时间反而不多。AI适合接手的,是那些模式化、重复性高、需要先出草稿的环节。
我会把介入场景分成“低风险高重复”和“高风险强责任”两类。低风险高重复的场景,比如把会议记录整理成大纲、把旧版操作步骤改成新读者能懂的语气、把提交记录归纳成发布说明条目、检查术语是否前后一致。高风险强责任的场景,比如安全配置说明、法律声明、计费规则、未公开路线图、客户数据处理流程,AI可以参与起草和检查,发布前必须由责任人逐条确认。这个分类不难做,难的是团队愿不愿意在项目启动时把它写进流程。
我的做法是先选一个窄场景试点。拿API文档里的“错误码说明”开刀,输入OpenAPI定义、代码里的异常枚举和最近三个月的工单,让AI生成初稿,再让接口负责人核对。试点两周,记录节省的时间、审阅轮次和错误类型。窄场景容易看出AI到底帮了哪一段,也容易让同事建立信任。场景铺太大,问题会混在一起,谁也说不清是工具不行还是流程没接好。
1.2 AI辅助的三种模式:生成、改写、审校
生成模式最容易被高估。我给它的定位是“出骨架、出初稿、出候选表达”。需求文档可以先让AI按背景、目标、用户故事、验收标准搭骨架;用户手册可以先按任务路径列步骤;发布说明可以先按新增、修复、已知问题分组。生成内容要标注“草稿”,不能直接进发布库。我的习惯是让AI一次只生成一节,输入里带上读者对象和已有术语表,输出后由人补业务上下文。整篇生成看起来快,后面返工往往更碎。
改写模式更像“翻译读者语言”。同一段接口说明,给开发看要保留技术细节,给客户看要减少内部术语,给运维看要突出排障顺序。AI做这类改写很顺手,前提是原文事实准确。我会在提示词里写清楚“不得新增事实、不得改变参数含义、不确定的地方保留原句并标记”。改写完再抽查关键句,尤其是条件、限制、默认值和异常处理。改写不是美化,它服务于读者理解和任务完成。
审校模式的价值常被低估。AI可以检查术语一致性、标题层级、步骤完整性、链接文本、被动语态过多、句子过长、同一概念多种叫法。它也能做“缺项检查”:操作步骤有没有前置条件,API文档有没有错误码,发布说明有没有升级影响。审校结果要分“必须改”和“建议改”,不然审阅人会淹没在提示里。我通常让AI先跑一遍机械检查,再让资深同事看事实和合规。人机分工清楚,审校才不变成互相甩锅。
1.3 人机协同的边界:事实准确性、合规与责任
事实准确性这条线要画得很硬。AI擅长根据上下文补全句式,不擅长判断“这个参数在新版本里是否还存在”“这个限制条件是否只对某类客户生效”。我的做法是给每篇文档设“事实源”:接口定义、配置项清单、测试报告、产品需求文档、法务确认邮件。AI输出里涉及数字、版本、权限、限制、费用、时效的内容,逐条回到事实源核对。核对人签名,不签“AI已检查”。这条规则听起来笨,救过我好几次。
合规边界涉及数据、版权和保密。内部文档、客户信息、未公开方案、源代码片段,进入外部模型前要过数据分类。能用私有化部署或企业版隔离的,优先走隔离环境;不能外发的材料,做脱敏、截断或改用本地模型。AI生成内容里可能带出训练数据里的相似表达,引用第三方文档时要看许可证。涉及安全配置、隐私政策、服务等级协议的内容,法务和安全同事要提前介入。合规不是发布前补一张检查表,它要在输入材料阶段就管住。
责任边界要说透。文档发布后出问题,读者不会找模型,只会找署名团队。AI可以参与起草、改写、审校,发布责任仍在人。我会在团队规范里写三句话:AI不署名,发布人署名;AI不承担事实责任,核对人承担;AI不替代审批,审批流照走。把这三句话讲清楚,同事用起来反而放松。大家知道哪些环节可以大胆试,哪些环节必须停一下。
1.4 成功落地的评估指标
评估AI辅助撰写技术文档,不能只看“生成速度”。我见过草稿十分钟出来,审阅花了两天,改到后面还不如人手写。指标体系要分过程指标和结果指标。过程指标看草稿时间、审阅轮次、返工率、提示词复用次数、事实核对耗时;结果指标看事实错误率、术语一致率、发布周期、文档搜索成功率、读者反馈、相关支持工单数量。指标不用多,每个试点选三四个,跑四周再看趋势。
我会先建基线。选五篇同类文档,记录人工写作耗时、审阅轮次、发布后三十天的工单量。试点组用AI辅助,对照组照旧。对比时看“从提纲到发布”的总时长,不只看生成环节。还要看审阅人反馈:哪些问题AI能提前发现,哪些问题AI制造了噪音。指标要能指导动作,比如术语一致率低,就补术语库和审校提示词;事实错误率高,就收紧输入材料清单和核对流程。
团队接受度也是指标。文档写作者愿不愿意继续用,审阅人觉得省事还是添乱,新同事能不能按模板上手,这些软指标要收。我的做法是每月做一次十五分钟复盘,问三个问题:这个月AI帮你省了哪段活,哪段活反而更累,下个月想停掉哪个场景。答案常常很具体,比如“发布说明生成有用,客户手册改写没用,因为读者反馈没变好”。这种复盘比看模型跑分有用。
评估的落点是把AI放在合适的位置。它适合做草稿、做改写、做机械审校,适合把碎片信息先拢成结构。事实确认、合规判断、发布责任要留在人这边。团队把这条边界认下来,再谈工具选型和提示词,落地会顺很多。我的建议是先拿一篇最近要更新的文档做小试验,记录输入材料、AI输出、人工修改和发布反馈,跑完一轮,你对价值边界的感受会比看十篇介绍更清楚。
2. 工具选择:AI写技术文档的工具对比推荐
聊工具之前,我先把一个误区说破。很多人找工具的方式是“哪个最强”,我找工具的方式是“哪个能嵌进我现在的文档流水线”。技术文档不是孤立的写作任务,它前面连着代码仓、需求库、工单系统,后面连着审校、发布、反馈。选工具的时候,我盯着一条线看:从输入到输出,中间要换几次手、断几次路。断点越少,这个工具越值得试。
我自己踩过的坑是“见一个试一个”。有段时间桌上开了七八个订阅,ChatGPT、Claude、Notion AI、几款文档生成插件,每个都试了两周,结果是哪个都没用深。后来我改成按维度打分,先定场景再挑工具,情况才好转。这章我把评估维度、工具分类、组合策略和成本安全拆开说,都是我在团队里实际用过的判断方式。
2.1 评估维度:文档类型、上下文长度、格式支持、私有化、协作与合规
第一个维度是文档类型。API文档要能读OpenAPI YAML、能理解参数和错误码的层级关系;用户手册要能处理步骤流和截图引用;发布说明要能消化合并请求和提交记录。我试过让一个通用聊天窗口生成API参考页,格式能出来,字段约束和枚举值经常缺。选工具时我会直接问:它有没有针对这类文档的输入接口或模板。没有的话,靠提示词硬掰,成本会转嫁到写作者身上。
第二个维度是上下文长度,这个维度容易被低估。一份中等规模的接口定义,加上代码片段、术语表和旧版说明,很容易超过两万字。上下文窗口不够,工具就会丢信息,丢的往往是最关键的约束条件。我现在的做法是先量一下常用文档的输入体量,再去看工具的实际可用上下文,不是看宣传数字。有些工具标称很长,实际用起来中间段落被截断,这种坑我遇到过不止一次。
格式支持、私有化和协作合在一起说。格式上,我要看它能不能直接吃Markdown、AsciiDoc、Confluence页面、Word里的样式表,输出能不能保留标题层级和表格。私有化看的是材料能不能出网,内部接口文档、客户数据、未公开方案,进不了外部模型就得走隔离部署。协作看的是多人编辑、评论、审批、版本留痕。合规看数据留存政策、是否用于训练、审计日志。这几个维度没有统一答案,团队规模和文档敏感度不同,权重完全不一样。
2.2 通用大模型与文档专用工具对比
通用大模型我用得最多,Claude、ChatGPT、Gemini这几家轮着试。它们的长处是理解力和灵活性,给它一段代码加一段工单,让它归纳错误场景,表现通常不差。短处是“什么都能做,什么都不专”。它不知道你的文档模板长什么样,不知道你的术语表,每次都要在提示词里重新交代。我有一段时间每周都在复制同一段背景说明,后来才意识到这不是模型的问题,是我没建可复用的配置。
文档专用工具是另一条路。Notion AI、Confluence的AI功能、各类文档生成插件,优势在于长在文档系统里,能直接读页面、读评论、读历史版本,输出也能原地落回页面。它们的短板是模型能力往往弱于一线通用模型,复杂推理和长文结构容易露怯。我一般把专用工具放在“轻改写、轻摘要、格式整理”这类环节,把需要深度理解和跨材料整合的活留给通用模型。
两边不是替代关系。我的实际组合是通用模型做重活,专用工具做贴身的活。比如写API文档,先在通用模型里把接口定义和异常枚举揉成初稿,再把稿子贴回Confluence,用页面内的AI做格式统一和术语检查。这个流程听起来多一步,实际比在一个工具里硬扛要顺。关键是别指望一个工具包打天下,那只会让你在每个环节都凑合。
2.3 代码理解型、知识库型与团队协作型工具选型
代码理解型工具是技术文档场景里被低估的一类。GitHub Copilot、Cursor、Sourcegraph这类工具,强项是读得懂代码结构、调用关系和注释。我让它们做过几件事:从函数签名和docstring反推参数说明,从异常类整理错误码清单,从提交历史归纳版本变更。效果比纯文本模型稳,因为它们看的是代码本身,不是二手描述。这类工具适合研发主导写文档的团队,写作者本身就在IDE里,顺手就把注释和文档初稿带出来了。
知识库型工具解决的是“材料散落”的问题。基于RAG的文档问答、企业知识库检索、向量库加模型这套组合,核心价值是把旧文档、工单、会议纪要、规范文档先拢到一个可检索的池子里,生成时带上引用。我做过一个内部试点,把三年的工单和旧版手册灌进去,让AI回答“这个功能在哪些版本有变更”,答案后面带来源链接,审阅人可以直接点回去核对。这类工具的上手成本在数据准备,不在模型本身。
团队协作型工具关注的是流程。飞书文档、Notion、Confluence、语雀这类平台,AI功能往往不是最强的,但评论、审批、版本对比、权限管理做得完整。技术文档不是一个人写完就完事,它要过接口负责人、安全同事、法务、本地化团队。协作型工具的价值在“让审校发生在文档里”,而不是导出Word发邮件改批注。我的选型习惯是先看团队的审校流在哪,再决定AI能力接在哪里。流程顺了,弱一点的模型也能用;流程断了,最强的模型也救不回来。
2.4 工具组合策略与试用清单
我不推荐追“全家桶”。现实里的组合往往是一个通用模型加一个文档平台加一个代码侧工具,再加一个内部知识库。组合的关键是接口要通:输入能不能直接粘、输出能不能直接落、引用能不能带回来。我见过团队买了很贵的文档AI,结果每次生成完要手动复制到另一个系统排版,省下的时间又还回去了。组合策略的第一条是减少搬运,第二条才是提升生成质量。
试用清单我会按场景列,不按工具列。拿API文档举例:输入OpenAPI文件加三个月的工单,要求生成错误码说明初稿,标注不确定项,输出Markdown表格。同一个任务丢给三四个工具跑,记录生成时间、事实错误数、格式返工次数、审阅人修改量。跑完一轮,哪个工具适合这个场景就清楚了。用户手册、发布说明、旧文档改写各列一条,四条场景跑下来,基本能定组合。
试用期我建议设两周,别拉太长。第一周跑标准任务,第二周让真实写作者用真实材料跑。评估的时候把“审阅人愿不愿意再看第二遍”作为一个硬指标。有些工具生成的东西看着漂亮,审阅人改起来比手写还累,这种就要早停。试用记录我习惯用一张表,场景、工具、耗时、错误类型、审阅反馈,攒够五六个场景,选型决策就有依据了,不用凭感觉。
2.5 成本、安全与数据治理考量
成本不只是订阅费。我算过一笔账,一个写作者每天花在复制、排版、切工具上的时间,一个月加起来比订阅费贵得多。反过来,如果一个工具生成快但事实错误多,审阅成本会吃掉省下的时间。我的算法是“总拥有成本”:订阅费加迁移成本加审阅返工加培训时间。按这个算法,有些便宜工具其实很贵,有些贵工具反而划算,关键看它嵌进流程后减少了多少断点。
安全这条线要前置。材料分级先做:公开文档、内部文档、客户数据、未公开方案、源代码片段,每一级对应能不能用外部模型、能不能用某家厂商、要不要脱敏。我见过团队在试点阶段用公开材料跑得很顺,一上真实项目就卡住,因为真实材料出不了网。选工具时直接问清楚:数据留存多久、是否用于训练、有没有企业级隔离、审计日志能不能导出。这些问题在采购前问,比出事后再补要省心。
数据治理是长期活。工具多了以后,提示词、术语表、模板、引用来源会散在各处,需要有地方存、有版本、有负责人。我的做法是在团队文档库里开一个“AI辅助写作资产”目录,提示词模板、评估记录、工具使用规范、常见错误清单都放进去,每季度更新一次。工具会换,资产留下来,换工具的时候迁移成本就低很多。选型选到最后,选的不是某个模型,是一套能持续运转的写作基础设施。
3. 提示词工程:AI辅助撰写技术文档的提示词模板
我一开始对提示词这件事挺不屑的。写技术文档嘛,把需求丢给AI,说一句“帮我写个接口说明”,能有多难。试了才发现,出来的东西看着像文档,细看全是坑:参数名编的、格式乱的、语气跟产品经理口述似的。我那段时间的日常就是对着屏幕骂AI不靠谱,骂了半个月才反应过来,问题不在模型,在我给它的指令太潦草。
后来我开始把提示词当代码写。有结构、有注释、有版本、有测试用例。这个转变挺关键的,提示词不是聊天,它是一份写给机器的需求文档。你写得越含糊,它返工越多。这一章我把手上在用的模板拆开讲,从基本结构到各类文档的具体写法,再到版本管理,都是我们团队实际跑过的。
3.1 提示词基本结构:角色、目标、读者、输入、约束、输出格式
我现在写提示词有个固定动作,先在草稿里敲六个小标题:角色、目标、读者、输入、约束、输出格式。六个格子填满再发给模型。这个习惯是被逼出来的,有次让AI写一份鉴权模块的说明,出来之后通篇“用户可以登录系统”,我给研发一看,人家问“哪种用户?什么登录方式?token存哪?”我才意识到我脑子里那些默认信息,模型一个都不知道。
角色这个格子别小看。写“你是一位写了五年后端接口文档的工程师”和什么都不写,输出质量差一个档。角色定了,模型会自动往那个语域靠,用词更收敛,废话更少。我有一个做安全的同事更极端,他写“你是即将离职的安全工程师,要把所有坑交代清楚”,出来的文档详细得吓人。
目标和读者要绑在一起写。我经常这么写:“目标是把这次订单服务的重构方案讲清楚,读者是刚接手这个模块的初级后端,他熟悉Spring Boot但不了解我们的分布式事务约定。”这一句比十句“写详细点”管用。读者画像给得越细,模型在解释深度上的自动调节越准。
输入这块我踩过一个坑。早期我只粘代码,不说明代码是哪来的、有没有配套的接口定义、旧版文档在哪。模型就开始脑补,补出来的东西有一半是错的。现在我给输入会分块标注,比如“【代码片段】来自order-service的OrderController”“【需求背景】来自JIRA-1234”“【术语表】见附件”。分块标注意思是告诉模型哪段材料该信、哪段材料只是背景。
约束这个格子是我写得最狠的。我会列一堆“不要”:不要编造输入材料里没有的字段名,不要用“简单来说”这种口水词,不要给每个段落加总结句,不要在文档里出现“我们”“你们”这类人称。约束写得越具体,返工越少。有次我忘了写“不要用markdown加粗强调”,AI把整篇文档的关键词全加粗了,看着跟划重点似的。
输出格式我一般直接给模板,甚至给一段填好的示例。模型模仿示例的能力远强于理解描述。写API文档的时候我会附一个完整的接口条目示例,告诉它“照这个结构写,字段名照抄,说明文字自己写”。这一步能把格式返工压到几乎为零。
3.2 需求文档、设计文档、API文档与用户手册模板
需求文档的模板我会在六格结构上加一个“业务上下文”块。AI不知道这个需求为什么做,你不给它业务背景,它写出来的需求描述就是功能清单的换皮。我一般给它三样东西:用户反馈原文、相关数据指标、竞品类似功能的截图描述。输出要求是“每个需求项用用户故事格式写,必须带至少两条可验证的验收条件”。验收条件这条约束很值,AI被逼着去想“怎么算做完了”,写出来的东西可测性明显提高。
设计文档的模板我换了个思路,让AI扮演技术方案评审人。输入是现有架构描述、新方案要点、约束条件清单,输出要求分四块:背景与问题、方案对比(至少两个备选)、选型理由、风险与缓解措施。这里有个细节,我会在约束里写“风险部分至少列三条,每条必须有对应的缓解动作,不允许写‘需进一步评估’”。这句话卡掉了很多糊弄式的风险描述。
API文档的模板是我用得最熟的一个。结构固定:接口用途、请求方法、路径、请求参数表、响应字段表、错误码、调用示例。输入给OpenAPI片段或者路由代码,输出要求Markdown表格。约束里我写“参数名、类型、是否必填必须与输入完全一致,输入中没有的字段标注【待确认】,不允许自行补充”。这个【待确认】标记特别好用,它让AI的不确定性显性化了,审阅的时候一眼能看到哪些地方需要人补。
用户手册的模板要加“操作场景”块。我会写“读者是第一次使用本产品的运营人员,没有技术背景,按步骤写,每步包含操作动作和预期界面反馈”。输入给功能说明文档和界面元素的描述。输出要求“用第二人称祈使句,每步不超过两句话,步骤之间空一行”。有次我没写“预期界面反馈”这条,出来的手册全是“点击保存按钮”,用户根本不知道点完该看到什么。
3.3 基于代码仓与日志生成文档的提示词模板
从代码生成文档,我吃过“一步到位”的亏。直接丢一段代码让AI写文档,它能写,但经常漏异常分支、漏边界条件、漏配置项。后来我改成两步走:第一步让AI分析代码,输出一份理解清单;第二步基于清单写文档。第一步的提示词我这么写:“分析以下代码,列出所有公开函数、每个函数的参数类型与取值范围、可能的异常抛出点、依赖的外部服务与配置项。以列表形式输出,不要写文档,不要解释。”
这一步的输出我人工过一遍,把错的划掉、缺的补上。这个过程花不了几分钟,但它把AI的理解偏差提前暴露了。第二步的提示词带上确认过的清单,加一句“以下理解清单已经人工确认,以此为准生成文档”。这句声明能让模型收敛很多,它知道哪些是事实、哪些不需要再猜。
日志相关的文档提示词我会给一段真实日志样本,要求“归纳日志中出现的事件类型,按严重级别分类,为每类事件写一段运维排查说明,包含常见原因和排查步骤”。约束里写“事件类型必须来自日志样本,不允许归纳样本中未出现的类型”。这个约束防止AI把通用运维知识往里塞,那些内容看着专业,跟你的系统没关系。
代码仓级别的文档生成我用得少一些,因为上下文太长。真要用的话,我会先让AI读目录结构和关键模块的README,输出一份模块地图,再针对具体模块生成文档。提示词里写“先输出模块清单和依赖关系,等我确认后再逐个模块生成说明”。分步加上人工确认点,是我用长上下文场景的固定套路。
3.4 改写润色、结构化摘要与术语一致性模板
改写润色的提示词我总结了一个“三不”原则,每次都写进去:不改事实、不改技术判断、不改术语。提示词正文写“只调整句子结构和用词,不改变任何技术含义,不引入原文没有的信息,不删除原文中的限定条件”。输入给原文和目标读者层级,输出要求“返回修改后的全文,用批注标出每处修改的原因”。
这个模板我用得最多的是旧文档翻新。有些三年前写的文档,技术内容还对,语言风格已经过时了。丢给AI跑一遍,选“面向新入职工程师”的读者层级,出来的稿子可读性提升明显。我会在约束里加“保留原文的所有代码示例和配置片段,一个字都不改”,因为AI有时候会“顺手优化”代码,那就出大事了。
结构化摘要的模板适合长文档和会议纪要。我会指定摘要骨架:“一段话概括、三个关键结论、待办事项列表(每项带负责人和截止时间)”。约束写“摘要不超过原文的百分之十五,关键结论必须能在原文中找到对应段落,找不到对应段落的结论标注【无出处】”。这个【无出处】标记能抓出AI的过度归纳,它有时候会把讨论中的假设写成结论。
术语一致性检查我单独做了个模板。输入给术语表和待检查文档,要求“找出文档中与术语表不一致的表述,输出格式:原文位置、原文表述、术语表标准词、建议替换”。这个跑一遍能揪出不少混用,比如“登录”和“登陆”、“令牌”和“token”、“用户ID”和“用户id”混着来。工具跑完我人工核一遍,把术语表里没有但实际在用的词补进去,术语表也跟着长。
3.5 审校与事实核查提示词模板
审校提示词最关键的一条是让AI别当老好人。我最早的写法是“请检查以下文档”,AI回来说“文档整体质量较高,建议小修几处”,跟没说一样。后来我改成“你是严格的审校人,逐段检查以下维度:事实错误、术语不一致、步骤缺失、格式问题、与输入材料冲突之处。每个问题单独一行,格式为:原文引用|问题类型|修改建议。没有问题就写‘本段无问题’。”
这个格式逼着AI逐段表态,没法用一句“整体不错”糊弄过去。我还会在约束里加“不允许提出风格偏好类建议,只报事实和一致性问题”。这条是为了压住AI的“写作老师”冲动,它特别喜欢建议你“可以更生动一些”,技术文档要那么生动干嘛。
事实核查的模板要带对照材料。我会给AI文档片段加相关的代码片段、配置说明、旧版文档,要求“对照输入材料检查文档中的每个事实陈述,标注三种状态:已验证、有冲突、材料未覆盖。有冲突的单独列出,附材料中的原文”。这个用法把AI从“写作者”切换成“比对工具”,它的价值在于不知疲倦地逐条核对,人做不到这个。
我得说清楚这个模板的边界。AI能抓格式和一致性,抓不了业务逻辑对不对。金额怎么算、权限怎么判、数据流向对不对,这些还得人来看。我把AI审校放在人工审校前面,当一道预筛,它筛过的稿子人工审起来快很多,但它筛完不代表没问题。
3.6 提示词版本管理与复用方法
提示词不管理一定会乱。我经历过一段混乱期,同一个API文档模板存了五六个版本,文件名分别是“api模板”“api模板2”“api模板-新”“api模板-最终”“api模板-最终确认”,自己都分不清哪个是哪个。有次发给同事一个所谓的“最新版”,人家用了之后说效果不对,一查是两个月前的旧版。
现在我改了规矩,团队文档库里开一个“提示词库”目录,每个模板一个文件,文件头写四行:适用场景、最近修改日期、修改人、修改说明。版本号用日期加序号,比如“api-doc-v20240612-01”。改模板的时候不覆盖旧版,新建一个版本,在修改说明里写清楚改了什么、为什么改。这个习惯救过我一次,新版模板在某类接口上效果变差,回滚到旧版五分钟搞定,不用凭记忆重写。
复用这块我有个心得:提示词模板分“骨架”和“填充”两层。骨架是所有技术文档共用的部分,角色、约束、输出格式这些。填充是具体场景的部分,输入材料、特殊要求、示例。团队里共享骨架,各自维护填充。新人上手的时候直接拿骨架加自己的材料,不用从零憋提示词。我们团队现在骨架有三个版本:严谨型(对外文档)、内部型(内部文档)、速记型(会议纪要转文档),覆盖了八成场景。
还有一个细节,提示词里我会写“如果输入材料不足以完成输出,列出缺失项并停止生成,不要猜测”。这句话让AI学会了说“我不知道”,比它硬编一个答案强太多。技术文档最怕的不是写得不好,是写得像真的但其实是错的。提示词工程做到最后,做的不是让AI多写,是让它在该停的地方停下来。
4. 协作流程:从提纲到发布的AI辅助写作闭环
上一章聊提示词模板,有朋友问我,模板有了,怎么把它串成日常干活儿的流程。这个问题问得挺实在。我见过不少人提示词写得漂亮,真到项目里还是乱成一锅粥:资料东一榔头西一棒子,AI生成一段改一段,改到最后都不知道哪版是准的。我们团队踩了半年坑,才把从提纲到发布这条线跑顺。这一章我把闭环拆开讲,每个环节都带着具体操作和我个人的翻车经验。
4.1 资料准备与知识库检索增强
我干活儿有个习惯,动手写之前先建一个“文档原料包”文件夹。这名字听着土,但管用。里面分五六个子目录:需求材料、代码片段、日志样本、旧版文档、术语表、参考链接。每个文件命名带日期和来源,比如“2024-06-10_订单服务重构需求_JIRA-1234.md”。这个动作花不了十分钟,后面省的时间翻倍。
资料收齐了,我会用AI跑一轮检索增强。具体做法是把原料包里的文本材料丢给支持知识库的工具,问它“这批材料里跟订单状态流转相关的内容有哪些,按主题归类并标注出处”。AI返回一个摘要列表,我对着列表快速过一遍,缺什么补什么。有次它提醒我“材料里缺少异常状态的回滚说明”,我一查还真是漏了,赶紧找研发要。这种漏项靠人眼扫很难发现。
知识库检索增强这块,我目前的用法比较轻。没上向量数据库那套重型方案,就是用工具自带的文件问答功能,把资料包传上去,让AI做交叉引用。比如写API文档的时候问它“请求参数里哪些字段在旧版文档和代码注释中说法不一致”,它能给我列一个对照表。这个用法不高级,但省掉了来回翻文件的功夫。我见过有团队把Confluence接进RAG流程,效果肯定更好,我们规模没到那一步,先用手头工具凑合。
4.2 大纲生成与人工确认
资料备齐,下一步让AI出大纲。我的提示词写得很直白:“基于以下材料,生成一份三级大纲,每个二级标题下标注对应的材料来源。大纲要覆盖背景、方案、接口说明、异常处理、上线检查清单五个部分。不确定的地方标【待确认】。”输出的大纲我从来不直接用,一定拉上研发和产品过一遍。
这个确认环节我吃过亏。有次赶一个紧急版本,AI大纲出来看着挺顺,我偷懒没评审直接开写。写到一半发现它把“灰度发布策略”整个漏了,原因是资料包里那份策略文档命名太随意,AI没识别出来。返工花了半天。从那以后我定了个死规矩:大纲必须过评审会,哪怕只有十五分钟。评审的时候我共享屏幕,逐条问“这块要不要”“这个顺序对不对”,研发经常在这时候补充关键信息,比后面写完了再改成本低太多。
人工确认还有一个好处,能把AI的“平均化倾向”掰过来。AI写大纲喜欢四平八稳,每个部分篇幅差不多。实际项目里重点模块可能占七成篇幅,边角功能一笔带过就行。评审的时候我会直接在大纲上标权重:这块展开写,那块给个链接就行。标完再喂回AI,它生成的正文详略得当很多。
4.3 分段生成、引用标注与多轮迭代
大纲定了,开始分段生成。我的做法是一节一节来,不整篇丢给AI。每节生成的时候,提示词里带上三样东西:本节对应的资料片段、上一节的结尾段落、本章的术语表。资料片段我会在原文件里截取,前面加一行“【本节输入材料】”,让AI知道这段是唯一可信来源。
引用标注这个要求我每次都写进提示词:“每写完一个自然段,在段末用括号标注该段信息来自哪份输入材料,格式为(来源:文件名 第几节)。”这个要求能逼着AI别瞎编。有次它写“订单超时时间默认三十分钟”,标注来源是需求文档,我翻回去一看,需求文档写的是“可配置,默认值待定”。AI把“待定”脑补成了三十分钟。没标注的话这种错误根本发现不了。
多轮迭代我一般跑三轮。第一轮粗稿,只看结构和信息覆盖,语言烂点无所谓。第二轮针对问题改,把技术审校提的意见逐条喂回去,提示词写“根据以下修改意见逐条修订,每条意见单独回复修改结果”。第三轮润色,用改写模板过一遍。这里有个细节,第二轮和第三轮之间我会把对话历史清掉,重新开一个干净会话,只喂当前稿子和修改要求。不清历史的话AI容易把前几轮的讨论内容混进正文,出来一堆“正如我们之前讨论的”这种废话。
4.4 技术审校、语言审校与合规检查
审校这块我们分三道。技术审校归研发,语言审校归我,合规检查归安全团队。AI在这三道里都只做预筛,不做终审。技术审校阶段,我把文档和代码片段一起丢给AI,用第3章那个事实核查模板跑一遍,输出“已验证、有冲突、材料未覆盖”三张清单。有冲突的条目我直接转发给研发,附上AI找出的原文对照。研发一看就明白哪里对不上,比我口头转述效率高得多。
语言审校我用AI跑两遍。第一遍查术语一致性,对着术语表揪混用词。第二遍查句式,把“通过……可以实现”这种翻译腔改成“用……就能”。改完我自己再读一遍,重点看段落之间的衔接顺不顺。AI改语言有个毛病,它喜欢把短句合并成长句,读着累。我一般会在提示词里加一条“保持原文段落长度,不允许合并相邻段落”,这条能压住它那股合并冲动。
合规检查我盯得最紧。对外发布的文档,我会先用AI扫一遍敏感信息,提示词写“检查以下文档中是否包含内网IP、数据库连接串、内部系统域名、未公开的产品代号。每发现一处,输出原文位置和替换建议”。这个预筛能抓住大部分低级失误,比如有人把测试环境的地址粘进文档了。扫完我再人工过一遍,重点看架构图里的标注和示例代码里的注释。AI看文本准,看图不行,这块还得靠眼睛。
4.5 发布、反馈与文档持续更新
发布环节我们用的是内部Wiki加对外文档站两套。内部Wiki走Git同步,每次合并请求自动触发构建。对外文档站手动发布,发布前跑一遍链接检查和术语检查。我在文档页脚固定放三样东西:最后更新日期、反馈入口链接、文档负责人名字。这个页脚模板是AI帮我生成的,我给它看了三份不同产品的文档页脚,让它归纳共同要素,出来的结果比我手写规范。
反馈收集我分了两个渠道。显性渠道是文档页脚的反馈表单,用户提交的问题直接进工单系统。隐性渠道是阅读数据,我们埋了个简单的点击统计,看哪些章节被反复查看、哪些链接被频繁点击。上个月数据显示“错误码说明”那节访问量是平均值的五倍,我就知道这块写得不够清楚,用户得反复查。马上安排了一轮重写,用AI把错误码按场景重新归类,加上了排查步骤。
持续更新这块,我每月跑一次“文档体检”。提示词写“扫描以下文档库,找出超过六个月未更新且关联代码有变动的文档,列出文档名、最后更新日期、关联代码最近提交日期”。AI返回清单,我按优先级排期修订。更新的时候不用从头写,把旧文档和新的代码变更一起喂给AI,让它输出“变更摘要加需要修订的段落清单”,我照着清单改,效率高很多。
4.6 团队协作规范与提示词资产沉淀
团队协作最怕各干各的。我们定了几条规矩:所有文档项目在同一个目录结构下开文件夹,原料包、大纲、生成稿、审校记录分开放。提示词不存个人电脑,统一放团队文档库的“提示词库”目录。每次大文档发布后开半小时复盘会,把这次好用的提示词和踩的坑记进复盘模板。这个复盘模板也是AI帮着迭代的,最早就是几个问题清单,现在长成了带评分栏的表格。
提示词资产沉淀我单独说两句。我们团队现在有个习惯,每次项目结束把提示词库过一遍,把这次新写的模板归档,把效果不好的模板标注“慎用”并写明原因。有次一个同事用“API文档模板-v3”生成的东西格式全乱,一查是模板里混进了另一个项目的示例,输出格式被带偏了。后来我们在每个模板文件头加了“适用场景”和“已知问题”两栏,填清楚再入库。这个动作看着琐碎,但新人上手的时候少走很多弯路。
最后说一个协作上的心得。AI辅助写作这件事,团队里得有一个“流程 owner”,负责盯着闭环有没有断。我们团队是我兼着这个角色,每周花半小时检查一遍:原料包是不是每个项目都有、大纲评审记录全不全、审校清单有没有人签字。听起来像行政活儿,但缺了这个人,流程跑两周就散架。工具再好,没人维护流程,最后还是回到各自为战的老路上。
5. 落地与进阶:质量保障、风险控制与规模化实践
流程跑通只算过了及格线。上一章末尾我提过一嘴,团队里得有人盯着闭环别散架。这一章往深了聊,讲的是怎么让这套东西从“能跑”变成“扛得住”。质量怎么保、风险怎么控、人怎么带、工具怎么长大,每个话题背后都是我们踩过的坑。
5.1 建立事实核查与术语库机制
我们最早的事实核查靠人肉。写完一篇文档,我拉着研发对着代码一行行比,眼睛看花不说,还老漏。有次一篇接口文档里写“单次查询上限500条”,代码里实际是200。发布出去被客户逮住了,闹得挺尴尬。那次之后我明白了一件事,事实核查不能靠自觉,得变成机制。
术语库的起点很朴素,就是一个共享的在线表格。三列:术语、定义、禁用写法。比如“用户ID”不能写成“用户id”或“UserID”,“订单”和“工单”必须分清。表格谁都能改,改完在群里说一声。半年攒了两百多条,我让AI把条目整理成分类索引,查起来快多了。这东西的价值不在多,在有人真用。我们现在的做法是AI生成内容先过一遍术语检查,输出一份混用词清单,作者照着改。
事实核查我们定了“双人复核加AI预筛”的规矩。AI预筛用第3章那个模板,把文档和对应代码片段一起喂进去,输出三张表:已验证、有冲突、材料没覆盖。研发看冲突表,我看未覆盖表,两边签字才能发。这个流程每篇文档平均多花四十分钟,听着费劲,省下来的返工和投诉比这多得多。上个月核查抓出一个版本号写错的,真发出去就是事故。
5.2 数据安全、版权与保密风险控制
数据分级是头一步。我把文档涉及的信息分了三档:公开、内部、机密。公开的随便喂,内部文档脱敏之后可以用企业版模型,机密材料一律不出内网,只能跑私有化部署的小模型或者干脆人工处理。判断标准写在团队手册里,拿不准的找我确认。规矩刚上的时候有同事嫌麻烦,觉得内部文档没什么敏感的。我给他看了个案例:一份“内部”需求文档里贴着生产库的表结构截图,差点就传上去了。
版权这块我也琢磨了很久。AI生成的技术文档,归属权在多数服务协议里都是模糊地带。我们的做法是生成稿一律当“初稿素材”,人工实质性修改之后才算定稿。引用外部文档的时候,要求AI给出原文出处,我再去核对授权。有回它引用了一段开源项目的说明文档,我顺着链接找到源头,发现协议要求署名,赶紧补上。这种事不查就是隐患。
保密风险离不开流程兜底。文档仓库配了个预提交钩子,提交前自动扫描内网IP、私有域名、密钥串这些特征,命中就拦。规则是AI帮我写的,我给它看了一个泄露事件的案例描述,让它生成正则匹配清单。扫完我还不放心,发布前人工翻一遍架构图和示例代码,这两块AI看不了。安全这件事,工具只能兜住八成,剩下两成靠人瞪眼。
5.3 度量AI辅助效率与质量的指标体系
效率指标我一开始只看一个数:写完一篇文档花了多少小时。跑了一个季度发现不对劲。时间确实降了,返工次数涨了。有人为了赶进度,AI生成完直接提交审校,问题一大堆。后来我把指标拆成三个:初稿用时、审校轮次、返工率。三个数一起看才有意义。初稿快但审校三轮往上的,说明提示词或者材料有问题,得单独拎出来复盘。
质量指标比效率难定。我们目前盯四个数:每千字的事实错误数、术语混用数、读者反馈里“看不懂”的占比、发布后因内容错误产生的工单数。这四个数每月统计一次,跟上月比。有个细节得说清楚,质量指标不能用来考核个人,只能用来找系统问题。一旦跟绩效挂钩,大家就开始挑简单文档写,数字好看但能力没长。
我现在的做法是给团队做月度简报,一页纸,左边三个效率数,右边四个质量数,底下附三行分析。分析让AI先起个稿,把数据丢进去让它找异常。上个月简报里AI提了一句“错误码章节的审校轮次是平均值的两倍”,我一查发现是表格格式不统一,每轮审校都在纠格式。改完模板就降下来了。从数据里挖出来的线索,比拍脑袋复盘管用得多。
5.4 团队培训、模板库与工作流集成
培训得分层。新人进来先学三件事:建原料包、用基础提示词模板、看审校清单。学会这三样就能上手干活。骨干层学提示词调优和流程设计,我让每人带一个小项目从头跑到尾,跑完做分享。管理层要理解的是边界和风险,给他们讲清楚哪些环节AI不能替代人,审批的时候就知道盯哪里。这个分层是我们试了两轮才定下来的。一开始全员上同一套课,新人听不懂,老手嫌啰嗦。
模板库治理我前面提过一点,这里补个机制。每月最后一个周五做“模板盘点”,把上个月新增和修改的模板过一遍,评两档:好用、慎用。评好用的写清楚适用场景和输入要求,评慎用的写明踩过什么坑。盘点会半小时,大家边吃午饭边聊,氛围轻松。有次一个实习生提出某个模板输出格式不稳定,一查还真是,把示例改掉就好了。新人也能发现问题,这个机制的好处就在这儿。
工作流集成我推荐从两个点切入。一个是提交环节,文档仓库的钩子做敏感信息扫描和术语检查。另一个是发布环节,构建脚本里加一步AI审校,跑完把报告贴进合并请求的评论区。这两个点都不需要改现有开发流程,接进去就生效。我们最初想一步到位搞“文档流水线”,设计图画了三版,实际落地的还是这两个小钩子。步子迈小一点,反而走得远。
5.5 从单篇文档到文档智能体的演进路径
我理解的演进像爬楼梯。头一级是AI辅助写作,人主导,AI干活。往上走一级是文档问答,把整个文档库建成知识库,用户和同事能直接问“订单超时怎么处理”,系统给出答案和出处。我们内部正在跑这一级的试点,用现成的知识库工具,效果还行,偶尔会串版本。再往上就是文档智能体,它能主动发现问题,自己提修改建议。
智能体能做的事比想象中多。代码仓库合并了重大变更,它自动比对关联文档,列出需要更新的段落。文档库里有半年没动过的页面,它查关联代码最近有没有提交,有就生成一份修订清单。用户反馈里反复出现的问题,它聚类分析,指出哪几篇文档写得不够清楚。这些能力单看都不难,串起来就是一个“文档健康度”的自动巡检。
我们走到哪一步了?说句实话,第二级刚起步,第三级还只是原型。我让一个同事用脚本加模型搭了个demo,监控三个核心仓库的代码变更,自动创建文档修订工单。跑了两周提了十一条工单,七条是真问题。准确率还不够上线,方向看得见。我的判断是,文档智能体短期内不会是全自动的,它更像一个不知疲倦的助理,帮你发现问题、提建议,拍板权还在人手里。
写到这里这一章就到头了。落地这件事没有终点,工具在变,团队在变,需求也在变。我唯一的建议是,每个月问自己一遍:我们的流程还有哪一环是靠“某人记得”在撑?找到它,把它变成机制。AI能帮上忙的地方,往往就藏在这些机制化改造的缝隙里。