企业 AI 项目 Wiki · 环境、版本与上线
发布
也常写作Release · 软件发布 · 版本发布 · 功能发布
发布是组织授权一个可识别的软件版本、功能或配置,通过指定渠道在规定时间向明确受众变得可获得、可访问或生效,并持续确认其影响的受控过程。发布改变的是使用可用性和暴露范围;它可以通过流量路由、功能开关、账号授权、下载渠道或商店分发完成,也可以与部署发生在不同时间。
发布改变的是谁可以使用什么
一个版本已经构建、通过测试并部署到生产资源,并不自动表示它已经向用户发布。新代码可以保持零流量,功能可以默认关闭,下载包可以仍是草稿,账号也可以尚未获得权限。只有预定受众能够通过规定渠道取得或使用它时,发布状态才真正改变。
反过来,发布也不一定伴随当时的代码部署。团队可以提前部署隐藏功能,在批准时只改变功能开关或路由;客户端软件可以先完成打包与商店审核,再到指定日期向用户开放下载;API 新能力也可以只对获准客户启用。
因此发布记录必须同时识别对象和暴露状态。只记录 `v2.3.0 已发布`,却没有说明是源代码标签、安装包、生产功能、某个租户还是全部用户,无法支持客服解释、事故判断或撤回。
先定义发布单元、受众、渠道和状态
发布单元
明确本次开放的是完整产品版本、单个功能、API 版本、配置、模型能力、知识批次还是客户端安装包,并绑定不可变版本、制品摘要或配置快照。
目标受众
列明内部员工、试点用户、指定租户、某个地区、某种设备、已选择加入者、一定比例流量或全部用户;受众规则应可执行、可复现。
发布渠道
说明通过 Web 流量、功能开关、权限授权、API 网关、软件仓库、下载页、应用商店、设备更新或人工开通中的哪条路径提供。
时间与节奏
规定开始时间、各阶段持续时间、观察窗口、暂停点、全部开放条件和支持团队覆盖时间,避免技术操作与通知窗口失配。
可用状态
区分草稿、候选、已批准、内部可用、有限可用、逐步扩大、全面可用、暂停、撤回和结束支持,不能把流水线成功当成唯一状态。
责任与授权
记录谁准备发布、谁确认业务与风险条件、谁执行暴露变更、谁观察指标、谁可以暂停或撤回,以及紧急情况下谁拥有最终决定权。
发布前应满足哪些进入条件
- 对象可追溯
发布版本、组成制品、配置和依赖已经冻结并可重新取得。
版本清单、制品摘要、签名或来源记录
- 验证已完成
约定测试、验收、缺陷处置、安全检查和目标环境验证已经完成,未关闭问题有明确接受人和影响说明。
测试与验收记录、风险接受单
- 暴露机制已演练
流量、功能开关、权限、渠道或商店设置能够按目标受众生效,并确认缓存、会话和跨区域传播延迟。
定向账号检查、配置预览、演练记录
- 指标与阈值已定义
预先确定技术、业务、安全和用户影响指标的基线、成功区间、观察时长和硬停止条件。
发布仪表板、告警和判定规则
- 恢复路径可执行
能够停止扩大、关闭功能、切回旧路由、撤下分发包或启动技术回滚;数据与外部动作不能恢复时已单独说明。
撤回与回滚方案、恢复演练
- 支持和沟通已就绪
运维、客服、业务负责人和相关用户知道变化、已知限制、问题入口和应急联系人;有必要时准备发布说明。
发布说明、值守表、通知记录
常见发布方式控制的是什么
| 发布方式 | 控制范围与主要注意事项 |
|---|---|
| 一次性全面发布 | 在同一时间向全部目标受众开放。流程简单,但未知问题会立即影响最大范围,只适合影响可控、验证充分且能够快速恢复的变化。 |
| 内部或试点发布 | 先向员工、测试租户或真实业务试点开放,以生产条件发现问题;试点用户、数据权限和反馈责任必须明确,不能把试点自动等同于全面批准。 |
| 分层或分波发布 | 按风险层级、组织、区域、设备或时间批次扩大受众。每一层都需要观察期和继续、暂停、撤回判据。 |
| 百分比或金丝雀发布 | 让一小部分代表性请求或用户先使用新版本,再按证据扩大。分配应保持用户体验一致,并能把指标归因到新旧组。 |
| 功能开关发布 | 代码已部署但功能默认隐藏,通过开关向指定用户启用。开关本身需要权限、审计、默认值、失效行为和清理日期,不能长期形成不可理解的组合。 |
| 用户选择加入 | 由用户主动启用预览或新体验,适合风险偏好不同的受众;必须说明退出方法、兼容限制、数据影响和支持范围。 |
| 渠道或商店发布 | 通过软件仓库、下载页或应用商店提供版本。审核通过、上架、可下载、自动更新和实际采用是不同状态,并受缓存、地区和客户端更新策略影响。 |
一次受控发布怎样推进
确认当前状态
核对生产运行版本、已启用功能、当前受众、未结束的其他发布、服务健康和可用风险预算,避免多个变化相互污染信号。
批准发布合同
由授权人员确认发布单元、目标受众、渠道、阶段、指标、硬停止条件、撤回方法、通知和责任人。
建立对照基线
保存发布前的技术、业务、质量、安全和人工处理指标,并确认新旧组或未暴露人群能够区分。
开放第一组受众
按最小但足以发现主要风险的范围改变流量、开关、权限或渠道状态,同时记录精确时间和配置版本。
验证分配和功能
确认只有目标受众获得新能力,非目标受众保持原状态,并检查登录、权限、关键流程、数据写入和降级路径。
完成观察与判定
在预定时长内比较新旧组和绝对阈值,处理告警与用户反馈;样本不足或信号互相矛盾时保持当前范围,不把无告警视为成功。
扩大、暂停或撤回
每一阶段都留下明确决定和理由。只有满足继续条件才扩大;触发硬停止时立即阻止新增暴露并执行预定恢复动作。
关闭发布
确认最终受众与功能状态、遗留问题、支持信息和长期监控,归档发布对象、说明、证据和决定,并安排过期功能开关清理。
发布后怎样观察、停止和留证
观察用户结果而不只看服务器
同时跟踪可用性、错误、延迟和容量,以及关键任务完成、放弃、支持请求、权限异常、数据正确性和业务保护指标。
硬停止条件优先
数据泄露、越权、不可逆错误操作、错误计费、关键数据损坏、安全控制失效或无法追溯等事件应立即停止扩大,不等待统计显著性。
暂停不等于失败关闭
暂停保持当前暴露范围,用于等待更多样本、排除外部异常或完成调查;暂停期间仍需值守并规定最长等待时间。
撤回不一定等于回滚部署
关闭功能开关或切回旧流量可以迅速移除用户暴露,但新代码仍可能留在环境中。是否还要回滚制品、配置、数据库或模型,要按实际影响分别决定。
记录实际暴露历史
保存发布 ID、对象版本、每次受众规则、配置快照、开始结束时间、批准人、指标结果、告警、反馈、暂停撤回和最终状态,支持事故重建。
保留发布材料与来源
归档正式制品、完整性与来源信息、发布说明、已知限制和安全公告,使后续漏洞分析、客户通知和复现不依赖可移动标签。
企业 AI 系统发布还要确认什么
发布的是组合行为
用户体验由应用、模型快照或端点路由、系统提示词、护栏、知识索引、检索参数、工具权限和外部策略共同决定。发布记录要指向完整组合,不能只写模型名称。
模型可先部署后接流
新模型部署到端点并通过定向或影子验证后,才按发布阶段分配真实流量。路由权重、会话粘性、区域和降级模型都应进入受众规则。
质量门槛必须针对任务
除延迟、错误与成本外,观察有依据回答、正确拒答、检索命中、格式遵循、工具成功、人工接手和关键业务结果,并与固定评测和当前生产基线比较。
高风险能力先限制权限
对发送消息、修改记录、创建订单、审批或执行代码的智能体能力,先限制用户、工具、金额、对象和频率,保留人工批准与幂等控制后再扩大。
知识发布要处理权限传播
知识批次进入可检索状态前,检查文档增删、租户与岗位权限、索引完成度、引用指向和缓存刷新;权限错误属于硬停止,而不是普通相关性波动。
非确定性需要更长观察
相同输入可能产生不同输出,低频错误也可能只在复杂对话中出现。发布评估应使用足够样本、分层场景和重复运行,不能用少量演示成功替代生产观察。
供应商更新也是发布事件
托管模型别名、内容策略或 API 行为可能在本方没有部署时变化。应监测实际版本和质量漂移,必要时锁定版本、切换路由、关闭能力或重新完成发布评审。
发布容易与什么混淆
| 相关概念 | 与发布的区别 |
|---|---|
| 部署 | 部署把制品和配置应用到目标环境并形成经验证的运行状态;发布改变目标受众的可获得性或使用暴露。两者可以同一步发生,也可以解耦。 |
| 构建 | 构建从源码和依赖产生制品;发布选择并授权一个已经可识别的制品或功能向受众提供。 |
| 版本号 | 版本号标识对象,不证明对象已经发布。一个版本可以处于草稿、候选、有限发布、全面发布或停止支持等不同状态。 |
| 上线 | 上线是业务开始正式使用的综合节点,可能包含部署、发布、数据切换、培训、通知和值守接管;发布可以只面向一部分用户。 |
| 发布公告 | 公告传达变化,但文字已经公开不证明功能、安装包或权限实际可用;反之,内部发布也可能没有公开公告。 |
| 交付 | 交付向接收方移交合同约定的成果、资料、账号和责任;发布面向使用受众改变可用状态,不必发生所有权或维护责任移交。 |
| 回滚 | 回滚把技术状态恢复到先前基线;发布出现问题时也可以先撤回用户暴露,而不立即回滚整个部署。 |
依据与适用边界
本文解释企业软件和 AI 系统中把一个已准备版本或功能提供给约定受众的发布。不同组织和工具对 release 的用法并不完全相同:它有时指一组经过测试的配置项,有时指可下载的软件包或发布记录,也可能指逐步向用户开放功能的过程。因此项目必须写明发布对象、受众、渠道和完成条件,不能只使用“已发布”三个字。本文不替代部署、正式上线、应用商店审核、市场公告、交付或回滚的独立定义。
- NIST CSRC:Release 的配置项集合定义及术语来源边界
- GitHub Docs:可部署软件迭代、标签、发布说明与可下载制品
- Microsoft Azure:用功能开关将功能发布与代码部署解耦
- Microsoft Azure DevOps:按用户层级渐进暴露、功能开关与选择加入
- AWS DevOps Guidance:暗发布、两阶段、功能开关和增量功能发布
- Google SRE Workbook:发布工程、金丝雀受众、观察指标和回滚
- NIST SP 800-218:保存每个软件发布的制品、完整性和来源信息
- Google Cloud Deploy:Release、Rollout、目标、持续交付和持续部署的工具内术语