构建生成式 Agent 系统:从大纲到交付的全链路编排实战
前言
本文依托 YoudaoNoteLM 项目中 generation-agent 模块线上真实业务代码,围绕学习场景下四类内容生成需求,完整拆解生成式 Agent 系统的整体架构设计、流水线编排策略、Prompt 工程方案、异常降级兜底机制以及落地工程实践,梳理从需求拆解、架构分层、链路设计到线上稳定交付的全流程实现思路,为企业级生成式 AI 应用开发提供可复用的落地范式。
一、业务背景:传统 LLM 单次调用模式的痛点与 Agent 化改造必要性
1.1 传统一问一答调用模式局限性
常规大模型调用采用单次请求单次返回的交互逻辑,用户输入提示词后由大模型直接返回结果。但在面向 C 端学习类产品的落地场景中,单次内容生成需要依次完成多维度推理、多源异构数据融合、结构化输出校验、异常场景降级兜底等一系列操作,单一 LLM 调用无法满足稳定、规范、高质量的业务输出要求。
在 YoudaoNoteLM 业务场景下,平台需要基于用户上传的学习类原始资料,统一入口支撑四类标准化内容生成能力,不同类型业务对输出格式、内容规范、视觉样式、容错策略均存在差异化要求,具体业务类型定义如下:
- PPT 生成:输出 1920×1080 固定画布尺寸 HTML 幻灯片,用于学习课件在线预览与文件导出;
- 思维导图生成:输出 Markmap 标准格式 Markdown 文本,实现知识结构可视化交互式展示;
- 在线测验生成:输出标准化 JSON 结构化题目数据集,支持单选、多选、简答类在线答题交互;
- 学习笔记生成:输出规范排版 Markdown 文档,适配知识库归档、复习查阅场景。
若采用单一 LLM 调用实现四类内容生成,会频繁出现三大线上问题:输出格式错乱、内容同质化空洞、异常场景无兜底导致接口报错,严重影响用户使用体验。
1.2 核心矛盾与解决方案
大语言模型属于通用型能力载体,具备内容创作、逻辑梳理、文本生成等泛化能力,但无法在单次调用链路中串行完成原始资料解析、内容结构规划、视觉方案设计、结构化代码生成、输出格式校验、异常自动修复六大精细化工作。
项目最终落地解决方案为:单次大模型调用链路拆解为多节点流水线编排链路,每个执行节点仅负责单一业务能力,将通用型大模型能力约束为场景化专项执行单元,通过编排实现多节点协同作业,保障输出稳定性与规范性。
二、系统整体架构设计
2.1 分层架构整体结构
系统顶层统一封装 GenerationService 调度服务,作为整个 Agent 系统的调度中枢,不参与任何大模型调用与内容生成逻辑,仅负责上游数据预处理、多源数据聚合、上下文信息封装,根据用户请求的生成类型路由至对应业务 Agent 执行单元。
- 数据支撑层:集成 RAG 向量检索、全网联网搜索、用户历史生成记忆三大数据能力模块;
- 上下文构建层:通过 buildGenerationContext 方法完成多源数据清洗、分类、权重打分、冗余信息过滤,封装统一格式的调用上下文;
- Agent 调度层:基于统一接口规范,实现 PPT、思维导图、测验试题、学习笔记四类 Agent 的多实现设计;
- 模型抽象层:定义通用模型调用接口,业务 Agent 层无感知底层大模型实现,支持线上 Eino 框架封装的大模型、单元测试 Mock 模型灵活替换。
2.2 核心接口标准化设计
(1)生成式 Agent 统一业务接口
所有业务类型 Agent 强制实现 generationAgent 通用接口,保证调度层路由逻辑统一,输入、输出参数结构标准化,降低多类型业务维护成本。
type generationAgent interface {
Generate(ctx context.Context, input generationAgentInput) (generationAgentOutput, error)
}
(2)大模型调用抽象接口
通过 GenerationModel 接口完成模型能力抽象,实现业务代码与底层模型解耦,便于迭代、测试、多模型灰度切换。
type GenerationModel interface {
Generate(ctx context.Context, prompt GenerationPrompt) (string, error)
}
2.3 架构核心设计要点
- 调度层职责隔离:GenerationService 仅承担数据预处理、上下文组装、路由分发职责,不执行任何 LLM 调用逻辑,实现调度与业务生成解耦;
- 面向接口编程:多类型 Agent 遵循同一套入参、出参约束,编排框架可对所有 Agent 做统一的链路监控、日志埋点、指标统计;
- 模型层依赖倒置:业务 Agent 仅依赖模型抽象接口,不绑定具体大模型实现,线上生产、线下单元测试可无缝切换模型实例。
三、基于 Eino 框架的声明式链式流水线编排方案
3.1 链式编排实现方式
项目中每一类业务 Agent 的 Generate 核心方法,均依托 Eino 框架 compose.NewChain 构建声明式 Lambda 执行流水线,将复杂的串行业务逻辑拆解为多个独立可执行的 Lambda 节点,以基础通用生成 Agent 为例,基础标准化执行链路包含草稿生成、结构校验、事实信息增强、格式合法性校验、结果最终封装五大通用节点。
3.2 链式编排相较于原生函数串行调用的核心优势
- 可观测性:每一个独立 Lambda 节点均可单独埋点日志、耗时指标、异常指标,精准定位链路瓶颈与报错节点;
- 可测试性:单个业务执行节点支持独立调用调试,无需执行整条业务流水线,大幅降低单元测试、问题排查成本;
- 可复用性:结构校验、格式校验、结果封装等通用节点可在四类 Agent 链路中直接复用,仅需要在通用链路中插入业务专属执行节点;
- 类型安全:Eino 链式框架在代码编译阶段校验上下游节点入参、出参数据类型,规避手动函数串行引发的类型转换异常、参数传递错误等线上隐患。
四、PPT 生成 Agent 深度实战:14 节点精细化编排落地案例
PPT 生成 Agent 为当前系统业务链路最复杂的执行单元,也是多节点编排、约束化提示工程、多级降级策略的典型落地场景,整条业务流水线共计 14 个串行执行节点,其中仅 5 个节点触发大模型调用,其余节点均为确定性代码逻辑处理,通过 “大模型创意能力 + 代码确定性约束” 的组合模式,平衡内容丰富度与输出稳定性。
4.1 PPT Agent 完整流水线执行节点
- 内容解析(确定性逻辑):对用户原始学习资料做结构化解析,提取核心概念、业务流程、案例素材、参考证据库、文档章节结构、资料缺失维度六大类结构化信息,作为整条链路的事实基准数据;
- PPT 大纲规划(LLM 调用):依托标准化大纲规范生成课件整体页面大纲结构;
- 大纲合规审查(LLM 调用):基于预设审查规则校验并优化已生成大纲,修正内容遗漏、页面冗余、标题不规范等问题;
- 大纲内容批量扩展(确定性逻辑):基于关键词匹配算法从参考证据库中自动补充每页幻灯片核心要点;
- 文本内容精细化充实(LLM 调用):将大纲简短要点扩写为完整专业段落内容,采用 JSON 结构化格式约束输出,配置失败自动重试策略;
- 课件视觉风格自动匹配(确定性逻辑):基于文档主题关键词匹配预设商务、学术、科技、叙事四类视觉主题,自动确定配色、字体、布局规则;
- 页面样式 CSS 代码生成(LLM 调用):独立生成全局样式文件,统一约束所有幻灯片布局、配色、组件样式;
- HTML 幻灯片页面代码生成(LLM 调用):复用已生成 CSS 样式,按照既定大纲结构输出标准化 16:9 画布 HTML 页面代码;
- 输出结构合法性校验(确定性逻辑):检测 HTML 结构完整性、样式文件缺失、画布尺寸不规范等问题;
- HTML 文本精细化清洗抛光(确定性逻辑):批量清理模型输出附带的内部占位标签、冗余说明文本、重复标题、无效注释等噪音内容;
- 页面结构智能修复(确定性逻辑):多维度检测模型输出内容质量,低质量输出直接触发确定性模板兜底渲染;
- 内容事实信息增强(确定性逻辑):结合 RAG、搜索参考资料修正内容偏差,补充权威佐证信息;
- 输出格式强校验(确定性逻辑):校验 HTML 规范、样式复用规则、页面数量与大纲一致性;
- 最终结果统一封装:格式化输出结果,记录是否触发降级兜底标识,组装返回参数。
4.2 关键节点详细设计方案
4.2.1 内容解析节点(纯确定性逻辑)
该节点不依赖大模型能力,通过文本解析、关键词提取、语义分段等原生代码能力,将用户输入的 Markdown 原始资料拆解为结构化分析数据集,同时整合上游 RAG 检索、全网搜索的参考素材构建全局证据池,后续所有大模型调用节点均依托该数据集做内容生成,避免模型内容脱离原始业务资料、出现事实幻觉问题。
同时节点会自动标记当前学习资料的信息缺口维度,在后续内容扩充阶段定向补充对应维度参考内容,解决原始素材内容单薄导致生成 PPT 内容空洞的问题。
4.2.2 大纲生成 + 大纲双 LLM 联动审查机制
- 大纲生成节点:大模型按照预设课件大纲规范输出结构化页面规划内容,若模型输出格式解析失败,直接触发确定性模板降级,通过解析后的资料自动生成封面、目录、主体内容、结尾致谢标准化页面大纲;
- 大纲审查节点:仅对已有大纲做修正优化,不会重新全量生成大纲,当审查环节模型调用失败、输出格式异常时,直接保留原始生成大纲继续向下流转,不触发降级逻辑。
大纲审查提示词采用约束式设计,明确划定五大审查校验维度:内容覆盖完整性、页面信息冗余度、标题命名规范性、内部指令泄漏拦截、单页内容饱满度,从源头规避大纲逻辑缺陷。
4.2.3 大纲要点批量扩展(关键词匹配确定性方案)
放弃调用大模型批量补充页面要点的方案,采用文本关键词相似度匹配算法,基于当前幻灯片标题提取核心关键词,从全局参考证据池中按照匹配分数排序,自动为每一页幻灯片补充规定数量的内容要点,当参考素材不足时启用预设业务模板兜底填充。
该方案具备三大优势:接口响应速度更快、要点内容与主题强相关、输出结果可预测可控,由大模型在后续内容充实环节完成要点的专业扩写,兼顾效率与内容质量。
4.2.4 结构化内容充实 + 重试容错机制
该节点为整条链路核心创意生成节点,强制约束大模型输出标准 JSON 格式结构化数据,用于将简短大纲要点扩写为专业正文内容。 系统配置两级重试策略:首次调用格式解析失败后,第二次调用在提示词中追加强约束规则,要求模型仅返回纯净 JSON 字符串,禁止附带代码块标记、文字说明、前后注释等冗余内容;同时封装通用 JSON 提取工具类,自动清洗模型输出的各类文本噪音,提升结构化解析成功率。
即便两次调用均失败,链路不会直接报错终止,后续 HTML 生成节点会直接基于原始大纲要点完成页面渲染,保障业务链路正常流转。
4.2.5 CSS 样式、HTML 页面分离式双阶段模型生成设计
为解决单次大模型同时做视觉设计 + 代码结构开发带来的认知负荷过高、样式混乱、类名冲突、布局错乱等问题,将前端代码生成拆分为两个独立 LLM 调用节点:
- CSS 样式独立生成节点:模型仅负责全局样式开发,严格按照选定的视觉主题配置 CSS 变量,强制要求实现封面、目录、多类型内容布局、结尾页、进度条全套样式规则;
- HTML 页面生成节点:将上游生成的完整 CSS 样式注入调用上下文,强制模型复用已有样式类名,禁止重复定义样式代码,仅专注于页面内容结构编排。
分离式架构大幅降低大模型的任务复杂度,从工程层面提升课件视觉统一性、代码规范性,规避样式重复定义、布局错乱等高频线上问题。
4.2.6 视觉风格自动匹配机制
系统内置四款成熟课件视觉主题,通过对原始学习资料标题、正文关键词做模糊匹配,自动识别业务场景并匹配对应配色、字体、布局方案:
- 代码、编程、技术类资料:默认选用科技深色主题;
- 论文、学术、研究类资料:默认选用学术清新主题;
- 案例、故事、叙事类资料:默认选用暖色叙事主题;
- 通用办公、知识科普类资料:默认选用简约商务主题。
风格选择全程由确定性代码完成,无需调用大模型,保证同类型文档视觉风格统一,避免模型随机选择风格导致用户体验不一致。
4.2.7 HTML 清洗抛光 + 多维度质量检测自动修复机制
- HTML 抛光处理:属于轻量化文本修正逻辑,批量清除模型输出附带的内部规划标签、占位文本、重复标题、无效注释,强制校验画布尺寸、样式标签、页面布局属性合规性,仅做安全范围内的格式优化;
- 结构智能修复:系统设计 11 大类线上高频劣质输出检测规则,覆盖结构缺失、指令泄漏、占位文本、内容重复、页面稀疏、标题重复、内容不匹配、样式不规范等异常场景,只要命中任意一类规则,直接放弃大模型生成的 HTML 结果,基于结构化大纲数据通过代码确定性模板重新渲染完整课件页面。
4.3 多级兜底降级架构设计
PPT Agent 配置两级兜底保障方案,实现极端场景下零业务报错:
- 一级兜底:大模型调用无返回结果、接口调用异常时,执行全局兜底函数,基于原始资料解析结果直接全流程确定性生成完整 HTML 课件;
- 二级兜底:大模型成功返回结果,但内容质量、格式规范未通过多维度校验时,依托经过要点扩充的标准化大纲数据集,调用前端模板引擎渲染合规课件页面。
整套降级机制保障无论大模型调用是否成功、输出内容是否合规,用户最终均可获取一份可预览、可导出的完整 PPT 文件,从底层保障业务可用性。
五、多源上下文构建体系:RAG + 全网搜索 + 历史记忆三层数据支撑
所有业务 Agent 执行前,调度层统一完成多源数据聚合、清洗、分级、过滤,为每一次大模型调用提供可信、精准、精简的参考上下文,从源头抑制模型幻觉问题。
5.1 RAG 向量检索模块
- 优先提取用户上传 Markdown 内联参考素材,作为最高优先级可信数据源;
- 根据用户查询意图向量检索知识库内关联历史文档,限制单次检索 Top5 结果;
- 基于标题关键词匹配度、正文语义重合度对所有检索结果做权重打分,划分为强相关、弱相关、无关三个等级,过滤无关素材后将高权重参考内容注入上下文。
5.2 全网联网搜索模块
搜索功能为可选配置项,用户开启后执行全网摘要检索,若搜索服务异常,配置允许降级标识时直接跳过搜索环节,不阻断整条生成链路,仅依赖本地知识库与用户原始资料完成内容生成。
5.3 用户历史生成记忆模块
按照用户 ID、知识库 ID、生成类型三个维度做记忆数据隔离,拉取当前场景下最近 10 条历史生成记录,仅将用户历史生成偏好、内容风格注入上下文,明确约束历史记忆仅用于对齐用户使用习惯,不可作为事实参考依据,避免历史错误内容引发模型事实偏差。
六、Eino 模型调用层标准化封装实现
项目统一封装 Eino 大模型调用实例,通过标准化入参结构统一所有 Agent 的调用规则:
- 强制区分系统提示词、用户业务上下文,系统提示词固定承担角色定义、约束规则、禁止行为声明能力,用户侧内容承载原始资料、多源参考素材、业务执行要求、输出格式规范;
- 每一次模型调用均携带唯一 Agent 节点名称,用于日志追踪、调用频次统计、异常节点定位;
- 全局统一大模型超参数:最大上下文 Token8192、TopP0.9、温度系数 0.7,避免不同业务节点参数差异化导致输出风格不稳定。
七、四类生成 Agent 流水线编排模式横向对比
- PPT 生成 Agent:共计 14 个执行节点,包含大纲审查、内容精细化扩充、视觉风格匹配、CSS 独立生成等专属节点,整体链路最长,大模型调用次数最多,配套完整的视觉约束、多级质量校验、多层降级方案;
- 思维导图 Agent:8 个标准执行节点,无大纲人工审查、样式代码生成类节点,结构规划依托确定性算法实现,仅单次大模型负责 Markdown 内容生成;
- 学习笔记 Agent:8 个标准通用执行节点,基于资料解析结果做结构化规划,大模型负责 Markdown 笔记内容创作,侧重文本排版、知识点分层校验;
- 在线测验 Agent:8 个标准通用执行节点,结构化规划依托代码实现,大模型强制输出 JSON 试题格式,重点校验题目合理性、答案准确性、格式规范性。
除 PPT 业务外,其余三类 Agent 均复用基础通用编排链路,仅替换专属提示词策略与输出校验规则,实现架构能力复用,降低多业务迭代维护成本。
八、系统核心设计思想总结
8.1 确定性逻辑 + 生成式能力混合编排原则
大模型仅负责创意创作、内容评审、结构化代码生成、专业文本扩写等非标准化、创意类工作;文本解析、关键词匹配、格式校验、质量检测、模板渲染等规则明确、可量化的工作全部交由确定性代码实现,扬长避短,最大化两类技术能力优势。
8.2 优先降级、拒绝直接报错的业务容错思想
系统设计核心底线为:必须向用户返回完整可用的业务结果,大模型调用失败、格式异常、内容低质、第三方服务故障等场景均配置对应降级方案,禁止直接向上抛出异常导致业务接口失败,通过技术兜底保障用户产品使用体验。
8.3 分段式约束上下文设计思想
摒弃全局超长通用提示词方案,根据流水线不同节点的业务职责,动态注入当前节点所需的参考素材、约束规则、前置执行结果,每个大模型调用节点仅获取必要上下文,既减少冗余 Token 消耗,也避免全局复杂约束相互干扰导致模型遵守规则能力下降。
8.4 量化质量校验替代经验式结果预期
不依赖大模型自主约束输出质量,通过十余类可量化的文本、结构、格式检测规则自动化校验模型返回内容,一旦命中劣质输出特征,自动触发兜底方案,用工程化手段替代对模型输出效果的主观预判。
九、生产级提示词工程落地核心技巧
- 角色化系统提示词:精准定义当前子 Agent 所属业务场景、技术架构、输出使用场景,让大模型明确自身定位与输出交付对象,而非泛化的开放式内容生成;
- 模板化输出格式约束:为每一类结构化输出提供标准代码、文本模板,将模型无限的创作收敛到固定规范结构中,从根源降低格式错乱概率;
- 正反案例对照教学:在提示词中明确给出错误示例与标准正确示例,让模型清晰识别禁止行为与合规输出范式;
- 核心约束高亮标记:采用 CRITICAL 关键字标记不可违反的硬性规则,提升大模型对强约束条款的遵从度,规避关键业务规范被忽略。
十、落地实践总结
生成式 Agent 系统的核心竞争力不在于大模型选型与参数调优,而在于全链路的精细化业务编排、多维度的约束化提示工程、完善的异常降级兜底架构、可量化的输出质量管控体系。
本套基于 Eino 框架实现的多节点链式编排架构,通过能力拆分、职责隔离、分层兜底、规则约束四大设计思路,将通用大模型能力转化为稳定可落地的企业级业务能力,已在 YoudaoNoteLM 线上生产环境稳定承载海量学习资料智能生成业务,可为文档类、课件类、知识类生成式 AI 产品提供成熟可复用的架构落地参考方案
更多推荐


所有评论(0)