做了半年多的AI产品,我最大的感受是:很多团队以为“模型跑通了,产品就能上线了”。这个想法非常危险。模型在Demo里跑通,和产品真的能在全渠道安全稳定地服务用户,中间隔着一条很长的路——评测、兜底、灰度、渠道适配、监控复盘,每一步都有AI产品特有的坑。这篇内容就是把这些坑趟过一遍之后沉淀下来的完整上线流程,以及一份可以直接复制到团队文档里改改就能用的checklist。如果你是正在独立带AI产品的人、小团队里身兼数职的负责人,或者是刚转型做AI产品经理的人,这篇应该能帮你省下一到两周的摸索时间。
1. 开发完成不等于可以上线:AI 产品为什么比普通软件多三道闸
传统软件上线的定义很清晰:功能开发完,测试通过,发到生产环境就算上线。但AI产品不是这样。代码可以完全按计划执行,模型输出却是概率性的——同一个问题,用户今天问和明天问,得到的答案可能不一样。这意味着你无法依赖传统软件的“功能验收”逻辑去判断“能不能上线”。我团队里后来立了一个规矩:任何人说“开发完成了”,都必须回答三个追问——评测过了吗?边界怎么兜底?出问题怎么灰度?回答不了,就不算完成。
1.1 第一道闸:模型指标不是“Demo 能跑通”就算达标
很多AI产品的开发阶段,团队验证模型的方式是拿几个精心挑选的问题试一遍,效果好就觉得可以上。但真实用户不会按你的“标准问题”来。他们会问长尾问题、会故意刁难、会输入错别字、会超出设定范围。所以上线前必须有一套正式评测集,而且这套评测集不能只有“正确答案”,还要包含边界场景和对抗场景。
以我做过的一个智能问答助手为例,上线前扫了三轮问题:第一轮是收集历史真实用户提问,按频次和类型分层抽样;第二轮是典型业务场景里的标准问题;第三轮是故意设计的对抗集——包含敏感词变体、多轮反问、无厘头问题和空内容。三轮加起来大概两千多条,每条都要标注预期行为是属于“准确回答”“婉拒回答”“转人工”还是“澄清追问”。模型必须在评测集上达到预设的通过率,才允许进入灰度。这一关就是第一道闸,目的是把“模型能力”和“产品可用性”之间的差距暴露在正式流量进来之前。
1.2 第二道闸:从 Prompt 到决策链路的联动回归
AI产品上线时,往往不只改模型本身,Prompt模板、知识库切片策略、输出格式约束、甚至底层的工具调用参数都会一起变。麻烦的是,这些改动是“叠加生效”的——单独看每一项都正常,组合起来却可能出现逻辑冲突。我曾经就遇到过一次:知识库的切片长度调大了,结果Prompt里又加了新的引导语句,两件事单独测都没问题,灰度时却在长问题场景里出现答非所问,排查了两天。
后来我就强制要求:任何涉及模型行为逻辑的改动,上线前都要在内部测试环境跑一遍“组合回归”。所谓组合回归,就是按真实流量顺序,把用户输入、检索结果、Prompt拼装、模型生成、结果后处理这一整条链路完整跑一遍,不能只测模型单点。第二道闸的本质是:让所有可能影响模型输出的改动,必须先以“组合后的产品形态”接受测试。
1.3 第三道闸:没有灰度入口,千万别提“上线”这两个字
传统软件也有灰度,但AI产品的灰度并不是“可有可无的加分项”,而是必需项。原因很简单:模型输出不确定性太高,你无法用一个测试版本覆盖所有真实用户场景。灰度就是给系统装一个安全阀,一旦发现行为异常,能立刻把流量切回去或降到零。
这里我要强调一个很多小团队容易忽略的点:灰度入口必须在开发阶段就设计进系统架构,不是上线当天临时配的。至少要有三层能力:按比例切流、按用户维度隔离、一键回滚开关。如果没有这三样,就算评测做得再好,我也不敢直接全量放量。因为线上环境总有评测集覆盖不到的情况,而那种情况一旦出现,留给你的反应时间往往只有几十分钟。
2. 多端多渠道怎么排优先级:Web、小程序、App 的发布策略与审核节奏
全渠道上线听起来很酷,但实际操作中,你不可能所有渠道一天之内全部铺完。每个渠道的发布机制不一样,审核周期不一样,回滚难度更不一样。产品管理者真正要做的是:定一个发布顺序,以及每个阶段各自要准备什么。先想清楚渠道差异,再谈节奏。
2.1 六类渠道的发布成本对比
我把常见的发布渠道整理成一个对比表,这是当初我拿来和团队对齐用的。建议你也先按这个维度去梳理自己的渠道体系,甚至可以把自家要覆盖的渠道都列进去,把“审核周期”“回滚难度”换成跟团队实际情况一致的估值。
| 渠道类型 | 典型发布成本 | 审核周期 | 回滚难度 | 主要限制 |
|---|---|---|---|---|
| 自有 Web 端 | 低,自己控制发版窗口 | 无审核 | 低,容器或网关层面即可调整 | 无太大约束,但需要关注并发与资源水位 |
| 小程序 / H5 | 中,需提交平台审核 | 1-3 个工作日 | 中,可提审新版本回滚,但审核等待有窗口 | 平台规则要求,素材、接口白名单等需提前配置 |
| iOS 应用商店 | 中高,需打包提审 | 一般 1-3 个工作日,存在不确定性 | 高,只能发新版本等待通过,不能秒级回滚 | 审核条款、隐私说明、测试账号必须齐备 |
| Android 各应用商店 | 中高,需逐家提审 | 各平台差异较大 | 高,同上 | 各家对权限声明、备案要求不一样 |
| 桌面客户端 | 高,涉及安装包、更新机制 | 视平台而定 | 中,可控但影响面大 | 离线安装包的兼容性、自动更新链路 |
| API / 合作伙伴通道 | 取决于对接方 | 依赖合作方排期 | 取决于接口设计与联调机制 | 需准备文档、沙箱环境、联调排期 |
从这个表能看出来,自有Web端和小程序渠道是AI产品首发最灵活的地方:审核压力小、回滚快、能快速验证用户体验。应用商店渠道更像“正式亮相”,虽然活跃度和信任感都更强,但要忍受审核和上架的不确定性。
2.2 首发顺序背后的逻辑:先打哪一寸,后补哪一块
我推荐的首发顺序是:自有Web端和小程序先上,跑通全链路;然后进入iOS与Android应用商店提审上架;最后才是API通道或对外合作集成。这个顺序不是拍脑袋,而是围绕三个原则:
第一,反馈速度优先。AI产品的早期阶段,拼的不是一次性完美,而是快速发现行为问题并调整。Web和小程序反馈链路最短,出现异常影响面可控,适合做试运行。第二,物料复用优先。应用商店需要的隐私说明、用户协议、功能截图等等,几乎都要在Web和小程序先验证过一轮才敢写准。第三,灰度体系一致优先。无论用户从哪个入口进来,后端的模型服务、日志埋点、灰度策略应该走同一套,不要给Web一套配置、给App再配一套,否则后面复盘数据时你会疯掉。
当然,如果你的产品形态天然只有App,比如强依赖系统级能力的工具,那就只能以App为主。这个时候我更建议在正式提审前,先用TestFlight或各家的内部测试渠道发一个尝鲜版给种子用户,把它当作灰度来用,不要直接冲向公开上架。
2.3 渠道物料准备:不是“写文案”,而是“一套话术包”
全渠道上线的物料准备工作量和体量,比大多数人想的大得多。很多团队以为就是“写一段产品介绍,配几张截图”,但实际运营中,每个渠道需要的物料各不相同,而且其中有一部分的缺失会直接卡住你的提审进度。
我把常用物料分为三类。第一类是合规协议类:用户协议、隐私政策、数据处理说明、算法机制说明(部分平台对AI生成内容有明确要求)。这一类的核心是“说清楚你是什么、收什么数据、生成什么内容、用户如何反馈”。第二类是展示素材类:一句话介绍、功能亮点文案、应用截图、演示视频、审核备注。注意截图里不能展示未经脱敏的真实数据,也不能用容易引起歧义的措辞。第三类是运营话术类:官网FAQ、客服接待话术、错误提示文案、用户反馈入口文案。AI产品尤其要提前写好“回答不了”和“生成内容不正确”时的道歉与纠正话术,因为幻觉问题永远存在,你不可能不遇到。
3. 灰度发布与切量节奏:小步快跑的具体操作和监控配置
灰度发布这个词在传统软件里就是“先放一部分流量试试”,但在AI产品里,它的核心已经不是“试稳定性”,而是“试模型行为”。相同的一段程序,线上真实用户的输入分布和评测集差得越远,你越需要灰度来当缓冲。这一章我讲几个实际操作层面的细节。
3.1 灰度方案怎么定:按比例、按人群,还是按渠道
三种常见维度:按比例、按人群、按渠道,建议组合着来,而不是只用一种。
按比例切流是最基础的,适合验证系统稳定性和整体指标。当后端模型只有一个版本时,按比例切流基本只能告诉你“总量撑不撑得住”,无法告诉你“哪类用户感知如何”。按人群切流是更推荐的方式——你可以圈定内部种子用户、连续活跃的高价值用户、或者特定业务线的用户,把新版本先给他们看。这样既能控制影响面,又能快速拿到有价值的行为反馈。按渠道切流则在多端产品里很自然:先让一部分渠道走新模型,其他渠道保持旧版本,方便横向对比。
我当时的做法是:第一轮按“内部加种子用户”放量,流量控制在总用户的5%;第二轮增加到20%,但只限Web端;第三轮才在全部渠道放量到50%,再观察24小时;最后确认无误才走100%。每一步之间都留了至少一个完整业务周期的时间来观察,没有急着跳级。
3.2 质量基线:三类监控指标缺一个都可能翻车
灰度期间看哪些指标,是AI产品和传统产品最大的分水岭。传统产品看的是可用性、接口错误率、页面转化。AI产品在这之外,还必须盯模型行为和内容质量。我把它拆成三层:
第一层是系统可用性层,包括接口成功率、调用延迟、平均Token消耗、错误率。AI服务通常依赖外部模型API,网络抖动、超时、限流都会有影响,这层指标看的是“服务骨架稳不稳”。第二层是模型质量层,包括拒绝率、无意义回复率、平均对话轮数、抽检bad case比例。这里的重点不是“有个指标就行”,而是要有可对比的基线——比如灰度前你要记录模型在评测集上的拒绝率,灰度后看真实流量上的拒绝率,两者差异过大就要警惕Prompt或检索链路在真实场景下适配不足。第三层是业务漏斗层,包括激活率、留存、核心功能使用率、付费转化等。模型质量好不代表业务好,用户可能是被聊天玩法吸引进来,但核心任务一直没完成。
每层指标都要做异常事件响应阈值:比如接口成功率低于99%触发告警,模型无意义回复率单日上升超过50%就开始摘流分析。阈值宁可定松一点,也不能不设。
3.3 灰度期间每天要看的三张表
我不建议灰度期间整天盯实时大屏,信息过载反而看不到问题。每天雷打不动看三张表就够了。
第一张是流量分布表:各渠道访问量、新老用户占比、各版本流量占比。主要用来确认灰度比例真实生效,有没有出现流量毛刺。第二张是bad case抽检表:从当天日志里按比例抽取若干条用户输入和模型回复,人工阅读并标记类别。我喜欢在抽检的时候按“答非所问、不完整、过度承诺、安全违规、逻辑错误、正常”这几个标签打标,这样到复盘时能直接算出各问题类别的占比。第三张是分层漏斗表:看灰度用户和非灰度用户在关键业务指标上的差异。如果两层用户表现没有统计学显著差异,说明模型改动没有产生预期的业务变化,需要回到评测层面找原因,而不是继续等量铺开。
4. 上线当天的值班节奏:从发版窗口到 24 小时盯盘清单
流程准备得再充分,上线当天也一定会有意外。区别只在于,有经验的人把意外控制在可处理的范围内,没经验的人直接被意外打懵。这一章讲上线当天实际怎么值班、怎么处理问题。
4.1 发布时段为什么不能拍脑袋
发布时段直接决定你遇到问题后有多少处理余量。我踩过几次坑之后有了一条铁律:周一到周四的工作日发布,绝不在周五下午发布,更不在节假日前一天发布。原因很好理解——AI产品一旦出现模型行为异常,你需要工程师、产品、运营、客服同时待命,而且可能要连续盯几小时甚至过夜。周五晚上发布,出了问题谁都赶不回来,回滚决策也会因为“联系不上人”而拖延。
具体时间段方面,我觉得上午十点到十一点比较合适。十点之前要留出发版检查时间,十一点后发布的话,用户高峰马上到了,给观察留的时间不太够。下午两三点也行,但要注意尽量避开大型平台的流量高峰。如果第二天就是节假日,普通活动还能拖一拖,AI产品这种边跑边修的东西,不建议赌。
4.2 上线后 4 小时:最容易暴露问题的时间窗
上线后的第一个4小时是问题集中爆发期,这个窗口内值班人员必须保持在岗在线状态。要做的核心事情有四件。
第一件,确认配置生效:灰度比例是否正确、功能开关有没有打开、新版本文案有没有同步、各渠道入口是否可见。别笑,产品配置错了标签导致用户看到旧说明的情况真的很多。第二件,走一遍核心链路:以新用户视角,从注册进来到完成业务主流程,每一步都不能跳过,尤其要看AI模块在真实环境里的响应速度和返回内容。第三件,盯监控告警:不是让你一直盯屏幕,而是确认告警通道真的能打通。提前拉一个群,系统告警触发后手动发一条消息验证机器人推送到人。第四件,看第一波用户反馈:包括客服消息、评论区、用户群发言,每半小时汇总一次,出现同类型问题三条以上就该升级。
4.3 客服话术与升级机制的提前约定
AI产品上线初期,客服一定会接到“这个东西回答不对”“它不理我了”之类的反馈。如果你没提前给客服准备好话术和升级路径,一线人员会自己瞎编解释,反而引发更多问题。
我的做法是设计三级问题分级。P0级:大规模崩溃、信息泄露、违法内容风险,发现后立即全量回滚,拉全体核心人员处理;P1级:核心功能不可用或模型大面积行为异常,灰度比例降到最低,专项排查;P2级:单点体验问题、个别bad case、文案错误,记录后走常规迭代。每一级都要规定“谁发现、通知谁、多长时间响应、用什么渠道上线处理”。客服侧也准备了两段标准话术:一段是“模型暂时遇到波动,正在优化,请稍后再试”的正常安抚文本;另一段是出现用户认为回答有误时的核实和纠正流程文本。这些看起来零碎,却是上线当天能不能稳住局面的关键。
5. 上线后 72 小时的 AI 特有问题排查:模型漂移、坏 Case 与反馈回流
全量上线成功不等于警报解除。72小时内,新的模型行为问题还会以你想象不到的方式冒出来。这一章专门讲AI产品上线后最核心的三件事:怎么区分异常、怎么排查根因、怎么把反馈变成下一轮的迭代燃料。
5.1 把异常分成四类,别一有风波就回滚
灰度期间的监控告警声音一多,人容易慌。我的经验是,先给异常分类,再决定响应力度,不要一看到某个指标异常就立刻全量回滚。绝大多数情况下,真没必要。
我把上线后的异常分成四类。第一类是基础设施类:接口超时、模型调用限流、网络抖动、数据库连接异常。这类是最容易处理的,看日志看监控就能定位,修复后一般能自愈。第二类是模型行为类:答非所问、回复质量变差、特定类型问题持续翻车。这类要回到输入样本里看,往往和真实流量分布有关,需要调整Prompt或切片策略。第三类是内容安全类:出现不当言论、敏感信息或误导信息。这类是最高优先级,不能等72小时,应立即降流量、临时加内容拦截规则。第四类是业务配置类:前端文案错误、显示异常、按钮失效。这类和AI无关,按普通bug处理即可。
处理原则是:先判断类别,再决定动作。基础设施类和业务配置类问题正常修;模型行为类问题记录样本、进入48小时排查流程;内容安全类问题立刻降流量并封锁相关输入源,不要犹豫。这样分类清楚之后,团队在值班时就能用一个统一的决策框架去应对,而不是凭个人恐慌程度判断要不要回滚。
5.2 Prompt / 策略变更和代码变更必须分开上线
这是我在真实项目里趟过最大的一个坑,值得单独拿出来说。大多数AI产品在迭代过程中,模型服务、Prompt模板、知识库、业务代码是各自独立发版的。问题在于,一旦这几样业务逻辑相近的改动凑在一起上线,出问题后你根本没法判断是谁引起的。
举个实际经历:当时我在做一个AI辅助创作的工具,灰度阶段同时改了Prompt里的角色设定和检索链路的排序逻辑。这两项分开测都正常,合并后在线上一部分用户的生成结果突然变得非常啰嗦、且经常把不相关内容混进回答。排查的时候,团队成员先怀疑是检索逻辑变了,回退了检索;结果Prompt还是新版,问题没消失;又怀疑模型服务版本热更新失败,白折腾了大半天。最后才发现根因是新的角色设定和更靠后的检索结果之间产生了叠加效应。那次之后我要求:任何涉及模型行为逻辑的变更,必须单独上线,单独验证。代码调整和Prompt调整哪怕都在同一天发布,也要走两个独立的上线流程,并记录各自的启动时间和版本号。这样一旦出问题,minimize排查耗时就是一分钟的事。
此外,所有模型相关配置要纳入版本管理。不要只把代码放进版本库,Prompt、知识库版本、模型参数和阈值都要有历史版本。AI产品排查问题时最怕的是“当前线上跑的到底是哪一版Prompt”都不清楚,这会让所有判断都失效。
5.3 72 小时复盘:三个“为什么”比数据大屏更有用
上线72小时后,系统基本稳定下来,工作重心要从“救火”转向“复盘”。很多团队的复盘是“数据上升了或下降了,归因到某个渠道活动,然后结束”。对AI产品来说,这远远不够。我建议复盘会只问三个问题。
第一,核心指标为什么变化?把波动拆到底层原因——是模型改版带来的行为变化,还是渠道流量结构变了,还是运营活动影响了用户构成。第二,为什么会出现这批bad case?是评测集覆盖不到,还是真实业务场景超出了Prompt边界,还是知识库内容本身存在矛盾。找到原因后,对应的动作一定是“把这一类bad case补进评测集”,而不是只在线上临时修一版Prompt。第三,为什么没有更早发现?是监控漏配了,还是告警阈值太高,还是客服反馈链路太慢。每一层都可以补机制:加监控、调阈值、缩短反馈同步时间。
复盘会的产出不是一份纪要,而是三类具体输入:更新的评测集、调整后的监控配置、下一轮迭代的任务列表。这才是AI产品上线后最稳定的进步循环。没有这个循环,你会在每一轮发版里重复踩同样的坑。
6. 可直接复用的全渠道上线 Checklist:按时间轴抄作业版
前面讲了全部的思考逻辑,这一章给你一套可以直接拿去用的checklist。我把它按时间轴组织,线上同学可以把它贴到共享文档里,每完成一项就打勾。单子不要求全做完才上线,但每一项都是被真实教训验证过的关键环节。
6.1 上线前 T-7 到 T-1 的准备清单
| 时间段 | 检查项 | 完成标准 |
|---|---|---|
| T-7 | 评测集冻结与通过率基准确认 | 评测集版本号清晰,通过率达标记录归档 |
| T-7 | 全链路组合回归完成 | 内部环境跑通完整链路,关键场景无阻断问题 |
| T-7 | 灰度配置评审 | 切流比例、人群规则、回滚开关均已验证 |
| T-7 | 监控看板与告警通道配置 | 三层指标全部接入,告警能推送到值班群 |
| T-3 | 各渠道物料完成度盘点 | 协议类、素材类、话术类物料齐备 |
| T-3 | 应用商店提审材料提交 | 已提交或已与渠道确认排期 |
| T-3 | 回滚预案评审 | 模型、Prompt、代码三类回滚方案都明确 |
| T-1 | 功能开关与版本号确认 | 各环境配置一致,开关状态可核查 |
| T-1 | 客服话术和升级机制同步 | 客服值班人员全部培训完毕 |
| T-1 | 值班表发布 | 核心责任人、替补责任人、联系方式清晰 |
这里有一个容易漏的细节:T-3就要把回滚预案评审完。不是到上线当天才找工程师说“你要准备随时回滚”,而是提前把回滚命令、步骤、负责人全部写在文档里,当天只需要执行。回滚预案写到什么程度?要写到任何一个不熟悉项目的人照着操作,都能在一分钟之内完成回滚动作的程度。
6.2 发布当天的执行清单
| 时间点 | 检查项 | 完成标准 |
|---|---|---|
| 发布前1小时 | 核心链路手测 | 注册、登录到主流程全部走通 |
| 发布前30分钟 | 配置核对 | 灰度比例、功能开关、渠道入口全部正确 |
| 发布后即时 | 告警通道验证 | 手动触发测试告警,确认推送到位 |
| 发布后10分钟 | 线上日志检查 | 无异常报错堆栈,日志正常落盘 |
| 发布后1小时 | 首轮bad case抽检 | 抽取50条真实会话,人工标注无重大问题 |
| 发布后2小时 | 客服反馈同步 | 无P0级问题,P1级问题有临时处理方案 |
| 发布后4小时 | 核心指标第一轮核对 | 三层指标均处于正常波动范围 |
| 发布会后 | 值班交接记录 | 重要事件、待办、决策全部写入值班记录 |
值班记录的格式也要提前定好:时间、事件、影响范围、处理动作、当前状态、责任人。别让交接变成口头一句话,72小时后复盘时,你就知道文字记录有多值钱了。
6.3 上线后 D+1 到 D+3 的复核清单
| 时间点 | 检查项 | 完成标准 |
|---|---|---|
| D+1 | 全量bad case人工审核 | 至少抽300条,分类占比清楚,Top问题进入排期 |
| D+1 | 分渠道漏斗对比 | 灰度用户与非灰度用户核心指标无显著异常 |
| D+2 | 增量评测集回测 | 新增bad case进入评测集,回归验证通过 |
| D+2 | 用户反馈渠道复盘 | 客服消息、评论区分级归类,P2级问题排队 |
| D+3 | 72小时复盘会 | 输出更新的评测集、监控配置、下轮迭代任务 |
| D+3 | 灰度比例扩量决策 | 数据平稳则放大至100%,否则保持收缩状态并出专项排查 |
D+1的全量bad case审核,建议至少两个人独立打标,避免一个人手滑误判。D+3的扩量决策不是“时间到了就扩”。如果72小时内有内容安全类问题或模型行为类问题尚未闭环,宁可继续维持当前灰度比例,也不要为了“按计划上线”而冒险。全渠道平安度过72小时后,可以适当把注意力转向下一轮的迭代点了。
最后分享一个我自己保持了很长时间的习惯:每次全渠道上线前,我都会找一个完全不了解这个项目的“围观群众”来用真机走一遍流程,全程录屏。这个人不需要懂产品,纯粹以用户身份玩一遍就够了。录屏里往往能发现测试报告里发现不了的奇怪操作路径和文案困惑,很多体验问题就是这么被“笨办法”逮到的。AI产品上线的逻辑也一样,越接近真实、越笨、越朴素的手段,越能兜住那些精致的计划表没有覆盖到的角落。