百度搜索以RenderFlow闭环交付展现服务
概述
RenderFlow 针对搜索结果展现传统链路交付周期长、重复适配多、调整成本高的问题,构建输入准备、生成与修复、可执行引擎、结果输出四层架构加独立的发布与治理流程,本文称其为 RenderFlow 的 Agent Harness。输入准备层为每类业务场景定义独立适配器,封装该场景的 Prompt 模板、配置格式与测试策略,用户通过动态表单录入场景参数后系统自动选择适配器并把需求描述、API/字段说明、目标模板 Schema、输出约束与测试样例组装成结构化 Prompt,把原本依赖人工描述的适配经验变为可复用模板。 生成与修复层由 Coder 据 Prompt 生成转换代码并交可执行引擎运行验证,失败时错误信息整理为结构化反馈交 Reviewer 生成修复约束(只输出自然语言约束如访问切片前检查长度、类型断言需增加 ok 判断,不直接改代码),约束写入 Memory 后在下轮作为历史修复建议注入 Coder Prompt,只增不减并自动去重归并,避免局部补丁、修复回退与重复踩坑。 可执行引擎用 Yaegi 作为 Go 代码解释器,把转换逻辑从服务代码中剥离为配置存于配置管理系统、由执行服务运行时动态加载,每次请求创建独立解释器实例互不共享状态、异常统一转为可处理错误结果,多份逻辑并发执行择优返回,配置系统不可用时降级到已有版本,使每次迭代从发布服务简化为更新配置、生效以分钟计。 发布与治理上,发布前做静态分析、预览执行与镜像环境自动化回归(引入线上真实查询做新旧 Diff 与性能对比),发布中按机房分阶段推送并校验 SLA、panic 率、CPU/内存与核心场景接口(据变更场景动态选择校验用例),上线后对核心场景分钟级、全量场景天级巡查核心字段非空与数据一致性并支持版本快照回滚。 效果:单场景数据转化逻辑交付由天级甚至周级压缩到分钟级,30 分钟内可完成录入到发布的端到端交付。首轮生成代码用户接受率 82%,引入多轮修复后多数问题 2~3 轮收敛、需人工介入修改比例降至 5% 以下。已接入近千个场景、横跨多条主要业务线。作者给出边界:字段含义需结合业务规则判断的场景仍需人工介入,解释执行相对静态编译存在性能上限,修复记忆需持续去重归并。