月度归档:2025年10月

我在AI写文档与优腾科技的落地实践

软件架构师罗小东,多年架构和平台产品设计经验,目前在Agent场景落地结合中。

概述

此为针对于AIP智能体在企业长文档上的落地成果参考,在广州优腾科技内部落地实践

概述

这个场景落地的情况有一段时间(将近一年左右),主要解决的是外包和中小型团队的交付及项目过程、还有内部管理的文档问题。

优腾本在文档上常常会遇到项目文档、功能文档、标书编写等问题,遇到的情况是:

  • 产出问题:交付过程型文档编写需要高级工程师才能出稿,原模板文档需要对新人做培训,出版周期比较长;
  • 时间问题:每一份文档周期大概是半天或者到2周左右甚至1个月左右,比如周报、项目标书、解决方案;
  • 周期问题:项目前期(比如投标或者方案)情况不定,要求很紧,有些情况客户要求马上出东西或者看到东西,熬夜加班写稿会有常态;
  • 交付问题:交付过程需要有的时候非常多,不能调动新人参与或者交付内容有些文不对题;
  • 质量问题:内容前期都是通过经验或者前期的项目文档参考,这些有些新旧不接,各种错别字或者标点等;
  • ……

这些应该在很多项目里面都会有遇到,前期的管理流程大都会有评审环节,另外偏向于技术型团队,开发部分占了很大比例,写文档往往成本加班的活。这里主要是前期探索和引入AI能力来解决类似的问题,有一定的效果,过程人员也对AI有一定的粘性,这里主要是做了两方面:

  • AI智能体的构建: 针对于不同知识库,构建不同的智能体,比如标书与方案的知识库不一样的;
  • 配置多级别写文档场景: 针对于一般写文档场景和高级写文档的场景,对标的标书和一般的概要性文档,还有方案文档;

面对的内部人员有销售、商务、开发、管理几类型的角色,AI处理的流程是根据上传材料或者要求先出版本,然后产出的内容二次AI编辑,再导出合稿,以下为AIP团队在AI写文档上的一些落地探索。

AI写文档过程

这里为了更好的演示,我们以长文本为示例说明(即上百页的文档)

这里为了更好的理解,我们以一个管理的角色示例来进行阐述,以写方案的场景为示例。现在收到几个客户或者友商要一起针对于某个场景出方案,需要输出整体方案部分,这个时候,可能需要出多份。

AI整理初稿

这里我们选择高级的方案编写场景,如下图:

简单整理一下需求或者整理成文件上传,提要求,同时选择行业的固定模板,这里选择[数据分析项目方案]和[标书技术方案]部分,确定之后由AI进行编写。

进行二次编辑

AI输出的版本周期比较长,大概是半个小时或者1个小时左右,目前遇到很多情况下是商务会吃饭前执行,或者晚上执行。当然,也可以进入再次看他的执行情况,不过一般没有必要,可以在AI出来一版本之后再查看。

下面是出来的一份技术标书示例,已经按招标需求整理了需要的目录章节,然后再过一下内容点,基本上会环绕需求内容来进行描述,如果发现某个章节不符合或者偏离较大,或者重新生成或者进行小范围的二次修改,如下重新生成:

下面是进行小范围二次修改。

做过很多次对比,目前AI生成的情况还是可以有很大的优化空间,内容可以再进一步的贴近需求,这也是下一步提升的地方。

同时也对比前期人工方面的,专业性还有周期时间上是人工很难对比的,甚至有些没想到的,AI都会补充上去,效果其实是超过前期人员编写的情况。

其它的就是导出成Word,这里是按整理文档导出,大概是135页。

总结

这个是AIP智能体在AI写文档落地实践解决了项目文档编写过程的场景。面对以往交付文档需要高级工程师耗时半天到一个月编写、新人难以快速上手、经常熬夜加班、内容质量参差不齐等问题,

这里建立了”AI整理初稿+人工二次编辑”的高效工作流程,以提高效率,将编写周期缩短,体现AI的能力及实用价值,也是团队在AI落地场景上的一些落地实践。

以上为AI在团队管理上的一些实践,也期望有兴趣的同学可以互相交流。

我对Agent分步任务的设计思路

软件架构师罗小东,多年架构和平台产品设计经验,目前在Agent场景落地结合中。

概述

这里主要实现的是AIP在多步任务的能力设计,后续还会继续加强Agent专业程度,深度场景能力结合,这里的AI设计依然定位在辅助人的角色。

Agent分布任务会在很多地方有用到,比如Agentic AI、ReAct推理、深度搜索、CodeAct等都有使用到,类似于Manus、扣子空间交付结果型的场景都会有用到。

过程主要覆盖智能体任务拆解、状态记录、流信息、上下文处理、文件处理、长文本上传、内置工具、MCP工具等结合,还有异常处理策略等。这里是前期在用户使用还有项目比赛、实际场景中使用经验总结,大概内容如下:

  • 专家Agent交互形态的设计
  • Agent流程和自主多步角色的能力设计
  • 多步推理的提示词设计
  • 动态知识库和静态知识库的处理
  • 上下文及异常的处理
  • 并发能力和模型的选择处理
  • 专家Agent的定制化和提示词设计
  • 结果输出和可二次调整处理

场景是针对于和聚焦在垂直领域场景能力的设计,这里并不含使用CodeAct,当前主要以输出GC为主,通用Agent暂时并不考虑,可以针对不同领域建设专业型Agent(特定领域知识库)然后放置到不同的多步任务场景中。每个架构师有不同的设计,我有我思。

整体设计

这里的整体设计主要是部分主要能力的设计,涵盖的部分较多,给出一些设计参考。

专家Agent交互形态的设计

专家形态的交互主要有四个形态,分别是聊天窗口形态、深入搜索形态、长文本形态、Agent群组,以下为AIP界面状态:

这三种形态上切入不同的专家Agent来切入不同的场景:

  • 聊天窗口形态: 即时聊天,简单的聊天窗,展示形态会类似于AgenticAI的形式;
  • 深入搜索形态:大概几分钟的任务,任务的规划到分布任务的处理,针对于问题更深入的输出,同时整理成稿,而且可以二次编辑;
  • 长文本形态:执行十几分钟或者1个小时的任务,超长文本的状态,场景主要是标书类型,可以整理成搞,而且每部分都可二次编辑。
  • Agent群组:每个专家Agent完成每个角色,如果在过多专家Agent的情况下,可以拉入到同一个群组(在平台上叫频道),方便管理。

以下为是长文本形态:

在这几种形态下面,进行专家Agent的切换,以满足不同形态的输出结果,同时每个场景会有可以定制的模板能力设计、场景能力设计等,形态多种场景能力结合。为了达到更灵活的,每个专家Agent包含有自己的静态知识库、动态知识库、MCP工具、提示词等场景设定。

同时还会提供专业Agent指定的数据资产查询能力,能切入到实际的业务系统中,融合Agent到实际业务场景中。

Agent流程和自主多步角色的能力设计

多步能力的设计提供包括Workflow工作流的设计还有自动规划能力的设计,这里能力设计如下:

  • Workflow多步执行:常见的工作流设计,偏向于稳定型的业务流程设计,界面展示会以卡片形式输出;
  • 规划-执行设计:由Agent先规划,再执行设计,反思调用由ReAct来处理;
  • Agentic执行设计:由Agent系统主动思考、规划和执行任务的能力,进行多步推理执行结果。

在大的多步执行框架里面,会包含有很多小的设计技巧,但是整个设计思路不变,不管是哪一步,都会以按预期的结果进行输出为目标。

这个过程的设计流程大体定的情况下,会尽量的缩小与预期结果的距离,除了上面的工程能力以外,我们会还在数据质量上进一步的加强集成,以提高Agent的专业性和业务能力,这里暂时不涉及数据的说明。

多步推理的提示词设计

针对于提示词的设计,结合的是静态和动态的方式,还有过程中不断的嵌入场景提示词,以达到更好与大模型交互。

  • 静态提示词:通过设置初始的角色提示词,与工具方向大的结合,可能会有一些提示词工程技巧,比如COT、示例演示等,这也是为什么专业Agent与通用Agent不一样的地方。
  • 动态提示词:在过程中不断的设计提示词,结合输出结果与过程的问题等,进一步的整理成提示词;
  • 知识库结合:三方文档和知识库的结合整理的提示词,这也是动态处理的一部分,但是这部分数据是动态生成和动态结合的,包括不仅是向量、还有数据库、文档、API等。
  • 场景模板库:针对于不同的场景,在选择不同的模板输入与输出,会定向的指定结果的输出还有内容的形成,比如方案指定的输出结构。

比如下面的场景提示词模型,会形成不同的模板库:

这里的设计基本上会满足很多内容输出的场景,同时结合内部的业务实际情况,输出不同的结果。

动态知识库和静态知识库的处理

知识库是当前Agent最常见的处理方式,RAG也是常见的Agent能力体现之一,这里知识库有RAG应用,也有记忆能力的应用,我们分了静态和动态的区别:

  • 静态知识库:最常见的文本向量化、或者直接文本形态,这类型我们处理成静态的知识库,同时记忆在后期的处理之后,也会转变成静态的一部分;
  • 动态知识库:针对的是对外获取、实时更新的信息来源;

静态知识库的处理,可能是用户文件上传、或者知识库又或者是前端外挂的知识库等。我们主要关注的是动态知识库,因为这部分主要是跟垂直业务场景很直接的关联,包括数据的准确性,输出结果的准确性等。

动态知识库主要是由数据治理部分处理,使用数据湖技术和数据计算框架技术来实现,主要是解决中小型团队海量数据使用的问题。

会经过网络采集、业务数据采集、文档采集等,过程ETL等处理,确保数据质量。

同时形成湖仓一体的结构,提供到数据资产平台,提供对外的API接口,提供全文检索能力、数据查询能力等,这部分是专家Agent能力的核心重点。

上下文及异常的处理

智能体运行过程中的稳定性问题是一个大的卡点,由于模型能力的不同、过程中数据加载数据量的不一等,往往在循环多次之后,就会因为超时、请求内容过长、请求次数过多等出现异常,从而导致任务过程中断情况。这里处理的策略有几种:

  • Rag策略: 内容过长的文本会处理成RAG或者做截取处理(策略可在Agent配置),结合内置的RagTool来进行内容检索;
  • 上下文工程: 定制上下文策略,长度策略,消息超时策略等,确保每一次对话的消息长度;
  • 异常收集:异常动态结合到提示词中,异常的问题不会也不能丢失,多步执行过程中需要异常的收集规避下一步的问题;
  • 汇总处理: 在过程中不同模型的输入输出,也很难说可以按指定的结果输出,或者说按结果判断,最后在收集不到答案时,会做一次汇总处理,以接近用户答案。

这些做成了可配置化,以符合不同的场景,比如下面是上下文的工程的配置界面:

通过上下文和异常的处理,很大程度上会规避掉Agent过程处理到半跑不下去的问题,但是这里只是技巧,更多的我们会将精力放在业务数据治理上,以确保Agent以最少的执行获取到最优的答案。

并发能力和模型的选择处理

这里暂时不提多账号的情况,这里是SaaS化的配置。

分步任务很多部分是在后台任务运行的,在交互上为了体验最好,这里做了SSE流的输出,但这必然也会带来一些性能和并发的问题,还有后台资源的问题等。在并发的处理上,这里主要处理的策略是:

  • 请求限流:这个是针对于不同的用户或者组织进行的限流设计,每个对话或者任务针对于不同的用户或者组织配置限制,规避无限任务的情况;
  • 线程池:单独运行或者长时间运行的配置单独的线程池,同时也提高数据库连接的线程池能力;
  • 线程链: 过程中使用了较多的CompletableFuture编程,以提高异步编程的能力,规避阻塞主线程;
  • 状态管理:主要是针对工作流和过程中的状态执行久化处理,过程状态进行过程节点;
  • 模型选择:在不同的场景,结合不同的模型,并不是一个模型处理完整一个链路,小模型快,会适合处理简单部分,大模型能力强,适合推理增强部分;
  • 分布式:微服务分布式的设计结合,这个是Java带有的成熟的并发处理策略,以规避单机带来的问题,在这里主要是使用k8s部分。

比如下面的工作流部署配置:

些策略主要是提高性能、可靠性及可扩展,更重要的是提高基础平台的稳定性,同时也会提高

结果输出和可二次调整处理

在完成结果输出之后,一般情况来说并不是说马上就可以使用,大部分的情况下需要做二次的调整,同时可进一步的编辑,在这里的结果做了AI编辑的集成配置和导出策略。

  • 内容导出Word或者复制,然后进一步的二次编辑,这个是比较常见的;
  • 针对于长文本和深度搜索场景,结合AI编辑器的能力,可以在针对的结果上进行二次AI编辑和修改,同样也可以导出word;

如下图:

形成AI生成、即时预览、AI智能编辑、格式调整、Word导出 的闭环流程。

总结

上面主要是Agent分步任务的设计思路设计,整个设计体现了几个关键理念:

  • 专业性与场景化:不同于通用Agent的广泛覆盖,我们聚焦于垂直领域,通过专家Agent的深度定制、专业知识库的建设以及场景模板的设计,确保AI输出结果具备实际业务价值。
  • 工程化思维:从交互形态设计到并发处理,从异常管理到结果输出,每个环节都融入了软件工程的严谨思维,确保系统在真实业务环境中的稳定性、可靠性和可扩展性。
  • AI辅助人定位:始终将AI定位为辅助角色,通过可二次调整的结果输出、AI编辑器集成等设计,强调人类专家的最终决策权,实现人机优势互补。
  • 数据治理结合:认识到高质量数据是Agent专业能力的基石,特别设计了动态知识库治理体系,将数据资产真正转化为AI可理解、可利用的业务知识。

这里的设计,给下一步的演进预留了足够的扩展空间,随着基础模型能力的不断提升,可以平滑地集成更好的输出和专业领域落地的能力。以上是在AIP上的产品设计,也期望给其它同学一些参考,有兴趣的同学也可以一起交流。