直达「 通往AGI之路 」飞书知识库 →
首页/问答列表/问答详情

rag 多智能体

回答

多智能体(Multi-Agent)是由多个自主、独立的智能体(Agent)组成的系统。在这个系统中,每个智能体都能感知环境、进行决策并执行任务,且它们之间可进行信息共享、任务协调与协同行动以实现整体目标。

随着大型语言模型(LLM)出现,以 LLM 为核心构建的 Agent 系统受广泛关注。Agent 系统会为不同 Agent 分配角色和任务信息,并配备工具插件以完成复杂任务。目前常见框架多集中在单 Agent 场景,其核心在于 LLM 与工具协同配合,可能需与用户多轮交互。同时,更多 Agent 框架开始关注多 Agent 场景,会为不同 Agent 指定角色并通过协作完成复杂任务,与用户交互可能减少。

构建多 Agent 框架,需考虑相对于单 Agent 增加的组件,如:

  1. 环境(environment):所有 Agent 处于同一环境,环境含全局状态信息,Agent 与环境有信息交互与更新。
  2. 阶段(stage):现有多 Agent 框架常采用 SOP 思想,将复杂任务分解为多个子任务。
  3. 控制器(controller):可以是 LLM 或预先定义好的规则,负责环境在不同 Agent 和阶段间切换。
  4. 记忆:多 Agent 框架中因 Agent 数量增多,消息数量及相关字段增多。

OpenAI 官方开源多智能体框架「Swarm」,其优势在于处理了不同智能体之间通信的“交接”逻辑。例如构建客服多智能体,可能只需准备普通接线客服和宽带客服两个 Agent。

另外,轨道智能体是一类更高级的智能体,被赋予更高级目标和更多自由度,仍受程序性知识指导,拥有预定义工具并受约束。运行时会产生特定模式,可能需要额外数据基础设施支持。

内容由 AI 大模型生成,请仔细甄别(powered by aily)

参考资料

问:Multi-Agent是什么

随着大型语言模型(LLM)的出现,以LLM为核心构建的Agent系统近期受到了广泛关注。Agent系统旨在利用LLM的归纳推理能力,为不同的Agent分配角色和任务信息,并配备相应的工具插件,以完成复杂的任务。目前,更常见的框架主要集中在单Agent场景下。单Agent的核心在于LLM与工具的协同配合。LLM根据用户任务的理解,推理出需要调用的工具,并根据调用结果向用户提供反馈。在任务完成过程中,Agent可能需要与用户进行多轮交互。与此同时,越来越多的Agent框架开始关注多Agent场景。为了完成任务,多Agent会为不同的Agent指定不同的角色,并通过Agent之间的协作来完成复杂的任务。与单Agent相比,在任务完成过程中,与用户的交互可能会减少一些。[heading2]主要组成部分[content]为构建一个多Agent框架,我们需要思考相对于单Agent,框架中增加了哪些组件。环境(environment):所有Agent应该处于同一个环境中。环境中包含全局状态信息,Agent与环境之间存在信息的交互与更新。阶段(stage):为了完成复杂任务,现有多Agent框架通常采用SOP思想,将复杂任务分解为多个子任务。控制器(controller):控制器可以是LLM,也可以是预先定义好的规则。它主要负责环境在不同Agent和阶段之间的切换。记忆:在单Agent中,记忆只包括用户、LLM回应和工具调用结果等部分。而在多Agent框架中,由于Agent数量增多,导致消息数量增多。同时,每条消息可能需要记录发送方、接收方等字段。

突发!OpenAI官方开源多智能体框架「Swarm」

[title]突发!OpenAI官方开源多智能体框架「Swarm」[heading1]为啥用Swarm的多智能体脚趾头:因为是OpenAI出的。(君不见现在大多数大模型都在遵循OpenAI的接口规范...他们对自己做的东西更了解)脑门:其实单Agent这块,没有啥花里胡哨的东西,简单业务,OpenAI就一个/api/completions接口。但是「Handoffs」这块,Swarm的确做的非常优雅。(这里不得不给自己吹个牛,年初我就写了Swarm类似的多智能体了。)多智能体的核心难题其实是不同智能体之间的通信问题。怎麼传递,传哪些信息,这些都很重要。其实之前很多多智能体开源框架,走的都是Room/Group的思路,就是把各个智能体都扔到一个大空间里,然后每个智能体都接收信息,每个智能体都存储信息。不说效率低下,光token的消耗都扛不住。实际上,多智能体,也只要在必要的时候被call起就可以,回到我们上文10086客服的例子。当接线小姐姐识别到这是个宽带问题需要转接的时候,她需要做2个事情:1.找到宽带部门的小姐姐,把会话权限交接过去;2.把记录「Messages」和我的问题「Query」交接过去(实际上会自动记录,共享查阅)那如果我们需要构建这样的一个客服多智能体,是不是只需要准备两个Agent:一个普通接线客服,一个宽带客服。Swarm的「Handoffs」处理了交接的逻辑。下面我用官方的例子魔改一下客服例子,方便大家理解。执行这段代码,打印出来的对话记录就可能会是是不是就变得非常清晰了?总得来说就是:

AI 智能体:企业自动化的新架构 - Menlo Ventures

[title]AI智能体:企业自动化的新架构- Menlo Ventures[heading3]轨道上的智能体人我们下一类要研究的智能体是轨道智能体。与决策智能体相比,轨道智能体被赋予了更高级的目标(例如,"将此发票与总账调节"、"帮助客户解决登录问题"、"重构此代码"),并赋予了更多自由度来选择实现这些目标的方法和工具。与此同时,这些智能体仍受程序性知识的指导,了解组织期望智能体如何执行(以自然语言编写的规则手册或说明手册表示的"轨道");拥有预定义的工具,可在外部软件系统中执行一组操作;并受到防止幻觉的保护栏和其他审查措施的约束。在运行时,这种设计可能会产生以下模式:规划智能体评估应用程序相对于手册(即当前位于DAG中的哪个节点)的当前状态,并检查从该节点开始的所有动作链。智能体人选择并执行最佳链条。每个链条可能包括预定义为代码的预写操作,或者甚至包括可执行特定任务的额外智能体人,包括传统的RAG。在采取任何行动之前,该系统都会进行审查和确保一致性和一致性的护栏规划智能体根据规则手册评估新状态,并重复该过程——从有向无环图中的新节点中选择最佳链来再次执行。请注意,这种架构为之前的设计增加了另一层复杂性,这可能需要额外的数据基础设施支持,包括持久化执行、状态和内存管理(包括情节性、工作和长期记忆)、多智能体协调以及防护机制。

其他人在问
RAG
RAG(RetrievalAugmented Generation)即检索增强生成,是一种结合检索和生成能力的自然语言处理架构。 它旨在为大语言模型(LLM)提供额外的、来自外部知识源的信息。通过检索的模式为大语言模型的生成提供帮助,使大模型生成的答案更符合要求。 LLM 需要 RAG 进行检索优化的原因在于 LLM 存在一些缺点: 1. 无法记住所有知识,尤其是长尾知识,受限于训练数据和学习方式,对长尾知识的接受能力不高。 2. 知识容易过时且不好更新,微调效果不佳且有丢失原有知识的风险。 3. 输出难以解释和验证,存在内容黑盒、不可控以及受幻觉问题干扰的情况。 4. 容易泄露隐私训练数据。 5. 规模大,训练和运行成本高。 RAG 具有以下优点: 1. 数据库对数据的存储和更新稳定,不存在模型学不会的风险。 2. 数据库的数据更新敏捷,可解释且对原有知识无影响。 3. 数据库内容明确、结构化,结合模型的理解能力,降低大模型输出出错的可能。 4. 便于管控用户隐私数据,可控、稳定、准确。 5. 可降低大模型的训练成本,新知识存储在数据库即可,无需频繁更新模型。 RAG 在 Natural Questions、WebQuestions 和 CuratedTrec 等基准测试中表现出色,在使用 MSMARCO 和 Jeopardy 问题进行测试时,生成的答案更符合事实、具体且多样,FEVER 事实验证使用 RAG 后也得到了更好的结果。基于检索器的方法越来越流行,常与 ChatGPT 等流行 LLM 结合使用来提高其能力和事实一致性。 在商业化问答场景中,优化 AI 更准确回答问题的过程中,RAG 是一个重要的术语。它由检索器和生成器两部分组成,检索器从外部知识中快速找到与问题相关的信息,生成器利用这些信息制作精确连贯的答案,适合处理需要广泛知识的任务,如问答系统,能提供详细准确的回答。
2024-11-04
RAG应该怎么使用呢
RAG(检索增强生成)是一种结合了检索和生成的技术,具有以下特点和使用流程: 特点: 可以让大模型在生成文本时利用额外的数据源,从而提高生成的质量和准确性。 能解决大语言模型在实际应用中的一些问题,如知识局限性、幻觉问题和数据安全性等。 使用流程: 1. 首先,给定一个用户的输入,如问题或话题。 2. RAG会从数据源(如网页、文档或数据库记录)中检索出与之相关的文本片段,这些片段称为上下文。 3. 将用户的输入和检索到的上下文拼接成一个完整的输入,并传递给大模型(如 GPT)。输入通常包含提示,指导模型生成期望的输出,如答案或摘要。 4. 最后,从大模型的输出中提取或格式化所需的信息,返回给用户。 此外,RAG 可以和微调结合使用,类似于为模型提供教科书,适用于模型回答特定询问或解决特定信息检索任务,但不适合教模型理解广泛领域或学习新的语言、格式或样式。
2024-11-04
有没有关于RAG的实践
以下是关于 RAG 的一些实践: OpenAI 的实践:从 45%的准确率开始,尝试多种方法,如假设性文档嵌入(HyDE)和精调嵌入等,效果不理想。通过尝试不同大小块的信息和嵌入不同的内容部分,准确率提升到 65%。通过 Reranking 和对不同类别问题特别处理,进一步提升到 85%。最终,通过提示工程、查询扩展等方法结合,达到 98%的准确率。团队强调了模型精调和 RAG 结合使用的强大潜力,尤其是在未使用复杂技术的情况下,仅通过简单的模型精调和提示工程就接近行业领先水平。 本地部署大模型以及搭建个人知识库:利用大模型的能力搭建知识库是 RAG 技术的应用。RAG 应用可抽象为 5 个过程,包括文档加载、文本分割、存储(包括嵌入和向量数据存储)、检索、输出(把问题及检索出的嵌入片提交给 LLM 生成答案)。 本地部署资讯问答机器人:基于用户问题从向量数据库中检索相关段落并过滤,让模型参考上下文信息回答,实现 RAG。通过 gradio 创建网页 UI 并进行评测,对不同模型如 Qwen7b、Gemma、Mistral、Mixtral 和 GPT4 进行测试,得出 GPT4 表现最好等结论。同时总结指出上下文数据质量和大模型性能决定 RAG 系统性能上限,RAG 能提升答案质量和相关性,但不能完全消除大模型幻觉、信息滞后问题。
2024-11-03
专门为大模型RAG设计的知识库产品 有哪些?
以下是一些专门为大模型 RAG 设计的知识库产品: 1. Metaso.cn:适用于学术、研究领域。 2. So.360.com:在生活方面提供便捷的搜索服务。 3. Felo.ai/search:具有综合性的特点。 4. Devv.ai:主要面向程序员、开发者。 5. Perplexity:属于付费产品,提供高质量的服务。 6. Bing.com:具有通用性。 7. Google.com:在全球范围内提供精准的搜索结果。 RAG 就像一个超级智能的图书馆员,其工作流程包括检索、增强和生成三个环节。在不改变大模型本身的基础上,通过外挂知识库等方式,为模型提供特定领域的数据信息输入,让模型能基于特定的数据生成内容、降低幻觉,实现对该内容更准确的信息检索和生成。 RAG 具有成本效益、灵活性和可扩展性等优点,比如实现成本更低,可以利用多种数据源,能随时增加或更新知识库中的内容。但也存在回答准确性不够的缺点。 在一些示例中,如设定使用阿里千问模型作为 AI 模型,将角色设定为“美嘉”并按照其人设、背景和对话风格设定提示词,放入《爱情公寓》全季剧情作为知识库,从而让“美嘉”拥有过往“记忆”。
2024-10-28
RAG
RAG(RetrievalAugmented Generation)即检索增强生成,是一种结合检索和生成能力的自然语言处理架构。 大语言模型(LLM)需要 RAG 进行检索优化,原因在于 LLM 存在一些缺点: 1. 无法记住所有知识,尤其是长尾知识,受限于训练数据和学习方式,对长尾知识的接受能力不高。 2. 知识容易过时且不好更新,微调效果不佳且有丢失原有知识的风险。 3. 输出难以解释和验证,存在内容黑盒、不可控及受幻觉问题干扰的情况。 4. 容易泄露隐私训练数据。 5. 规模大,训练和运行成本高。 RAG 具有以下优点: 1. 数据库对数据的存储和更新稳定,不存在模型学不会的风险。 2. 数据库的数据更新敏捷,可解释且不影响原有知识。 3. 数据库内容明确、结构化,加上模型的理解能力,能降低大模型输出出错的可能。 4. 便于管控用户隐私数据,且可控、稳定、准确。 5. 可降低大模型的训练成本,新知识存储在数据库即可,无需频繁更新模型。 RAG 在 Natural Questions、WebQuestions 和 CuratedTrec 等基准测试中表现出色,在知识密集型任务中能增强语言模型的输出。基于检索器的方法越来越流行,常与 ChatGPT 等流行 LLM 结合使用。 在商业化问答场景中,优化 AI 更准确回答问题的过程称为 RAG。RAG 由检索器和生成器组成,检索器从外部知识中找到与问题相关的信息,生成器利用这些信息制作精确连贯的答案,适合处理需要广泛知识的任务,如问答系统。
2024-10-26
怎么写文档会让RAG 效果更好
要让 RAG 效果更好地写文档,您可以参考以下要点: 1. 文档切割: 合理的文档切割能让系统返回更完整、连贯的结果。例如,对于“猫咪的饮食习惯是什么?”的查询,将相关内容切割为“猫咪的饮食习惯取决于它们的年龄、健康状况和品种。”和“幼猫需要更多的蛋白质,而成年猫则需要均衡的营养。”这样的文档块。 目前免费平台一般提供智能切割和手动切割两种方式。但在当下技术水平下,智能切割效果一般,对于以问答为主的客服场景,将一个问答对切成一个文档片,检索效果会很好。 2. 整理知识库文档阶段: 确定知识库包含的文档类型,如政策原文文档、业务积累的 QA、操作指引、产品说明等,并进行预处理。 知识库本身质量对最终效果至关重要,是大模型生成回答的原始语料。 优化方向包括: 文档格式:PDF 文档格式信息相对简洁,干扰少,但也有说.docx 效果更优的,需根据场景测试。 文档命名:尽量控制在 10 字左右,涵义简洁明了,避免无意义的数字、符号或缩写。 文档语言:尽量统一为同一种,避免中英文混切导致乱码和无用数据。 文档内容:设置清晰的一二级标题,对特殊元素进行处理。 构建问答对:能达到更好效果,但耗费人力和运营成本,需综合考虑。 3. 通用语言模型微调可完成常见任务,更复杂和知识密集型任务可基于语言模型构建系统,访问外部知识源。Meta AI 引入的 RAG 方法把信息检索组件和文本生成模型结合,可接受输入并检索相关文档,给出来源,适应事实变化,不用重新训练就能获取最新信息并生成可靠输出。Lewis 等人(2021)提出通用的 RAG 微调方法,使用预训练的 seq2seq 作为参数记忆,用维基百科的密集向量索引作为非参数记忆。
2024-10-21
如何用Coze智能体自动提前飞书知识库内容
要使用 Coze 智能体自动提取飞书知识库内容,您可以参考以下步骤: 1. 创建智能体: 手动清洗数据:上节课程是自动清洗数据,自动清洗可能出现数据不准的情况,本节尝试手动清洗以提高准确性。例如创建画小二课程的 FAQ 知识库,飞书在线文档中每个问题和答案以分割,可点击编辑修改和删除,然后添加 Bot 并在调试区测试效果。 本地文档:对于本地 word 文件,注意拆分内容以提高训练数据准确度,例如将画小二课程按章节进行人工标注和处理,然后创建自定义清洗数据的知识库。 发布应用:点击发布,确保在 Bot 商店中能搜到。 2. 创建机器人: 访问 Coze 官网(网址:Coze.cn)创建。 人设与回复逻辑设置。 创建知识库: 飞书知识库:在飞书中选择对应文件夹,一次最多选择 20 个文件(文件多可多建几个知识库),可选择自动进行数据清洗,图片资料会保留,测试对话,目前 Coze 存在不稳定版本,需调试完善。 Excel 知识库:可增加其他形式的知识库,上传表格的知识库不要过于复杂,不要有合并表格情况,系统不认不同的 Sheet,数据处理完成会显示 100%进度,加工出来的数据点击添加 Bot 增加到知识库中,然后测试发布和返回。 网页知识库:有自动采集和手动采集两种方式,手动采集需安装插件,可选择批量添加,写入网址,将全站数据解析并保存到知识库,按照默认自动清洗数据。 此外,在前期准备中,梳理 AI 智能体的功能需求时,要注意在稍后读的知识管理场景中,简化“收集”环节,自动化“整理”环节,根据待阅读内容列表的主题和当前阅读兴趣智能“选择”相关内容、推荐个人阅读计划。
2024-11-05
制作Coze智能体
以下是制作 Coze 智能体的步骤: 1. 打开 Coze 官网(https://www.coze.cn/home)。 2. 创建图像工作流,图像流分为智能生成、智能编辑、基础编辑三类,其很像 ComfyUI,但更普世化且简单易上手。 3. 空间风格化插件有相关参数,如 image_url 是毛坯房的图片地址;Strength 是提示词强度,影响效果图;Style 是生成效果的风格,如新中式、日式、美式、欧式、法式等;user_prompt 是用户输入的 Promot 提示词。 4. 按照构架配置工作流,包括调试效果和测试毛坯房等。 5. 开始节点对应配置三项内容,进行提示词优化。 6. 设定人设和回复逻辑,技能 1 中 3 项中的编译数字来源,然后点击右上角发布。 另外,分步构建和测试 Agent 功能时: 首先进入 Coze,点击「个人空间工作流创建工作流」,打开创建工作流的弹窗。根据弹窗要求自定义工作流信息,点击确认完成新建。编辑视图与功能中,左侧「选择节点」模块根据子任务需要,实际用到插件(提供能力工具)、大模型(生成文本内容)、代码(处理数据)。编辑面板中的开始节点和结束节点分别对应原文输入和结果输出环节。按照流程图在编辑面板中拖入对应的 LLM 大模型、插件、代码节点,完成工作流框架搭建。
2024-11-05
智能客服
智能客服相关信息如下: GPT 智能客服: GPTs 是 GPT 的一种 ID 账号形态,类似微信公众号,用户可开发自己垂类应用。其开放门槛低,基本是 0 代码,开发方式包括自然语言(prompt)、知识库(knowledge)、第三方 API 对接(Action)。GPTs 实现了目前最强的智能客服,具有对话流畅、多观点融合、答案准确等特点,但不太擅长推理计算。实现原理是将 FAQ 上传到知识库,让 GPTs 具有客服应答能力。猜测类似检索增强生成技术(RAG),将知识库(knowledge)和问题(prompt)一起做 embedding,扔给 LLM 作答。 零成本、零代码搭建智能微信客服: 平台选择扣子(官网地址:https://www.coze.cn)。扣子是新一代一站式 AI Bot 开发平台,无论是否有编程基础,都可以在扣子平台上快速搭建基于 AI 模型的各类问答 Bot,从解决简单的问答到处理复杂逻辑的对话,还可以将搭建的 Bot 发布到各类社交平台和通讯软件上。
2024-11-04
怎么做人工智能
实现人工智能主要有以下几种方法: 1. 自上而下的方法(符号推理):模拟人类通过推理来解决问题的方式,包括对人类知识的提炼并用计算机可读的形式表示,开发在计算机内部模拟推理的方法。人们在推理时知道自己的思考步骤,可将此过程形式化转化为计算机程序。但从人类专家提取知识可能困难,有些任务如根据照片判断年龄无法简化为对知识的操作。 2. 自下而上的方法(神经网络):模拟人脑的结构,由大量称为神经元的简单单元组成。每个神经元的行为取决于输入数据的加权平均值,可通过提供训练数据来训练神经元网络解决问题,类似于新生儿通过观察学习。 3. 多智能体系统(multiagent):基于大量简单智能系统的相互作用,复杂的智能行为可由此产生。 4. 进化方法或遗传算法:基于进化原理的优化过程。 此外,人工智能是研究如何使计算机表现出智能行为,例如做人类擅长的事。最初计算机用于按明确程序运算,而对于像根据照片判断年龄这类无法明确解法的任务,正是人工智能感兴趣的。在金融、医学和艺术等领域,人工智能都能带来益处。
2024-11-04
人工智能的定义
人工智能是一门研究如何使计算机表现出智能行为的科学。最初,计算机遵循着明确的程序和算法进行受控计算。但对于一些任务,如根据照片判断一个人的年龄,我们无法明确其解法和步骤,无法编写明确程序让计算机完成,这类任务正是人工智能感兴趣的。 “智能”的概念没有明确的定义。阿兰·图灵提出了图灵测试,将计算机系统和真人进行比较,若人类评审员在文本对话中无法区分真人和计算机系统,则认为该计算机系统是“智能”的。 在相关研究中,对于智能、人工智能和人工通用智能的定义存在多种观点和定义方式,但都存在问题或争议。例如,有以目标为导向的定义、围绕技能获取效率展开的定义等,但各自都有局限性。
2024-11-03
车载ai智能体
车载 AI 智能体是一种应用于车辆领域的智能体。 智能体一般被赋予更高级的目标,并拥有更多实现目标的方法和工具选择自由度。同时,受程序性知识指导,遵循组织期望的执行方式,拥有预定义工具,并受保护栏和审查措施约束。 在应用方面,智能体在各种领域扮演重要角色,如: 1. 自动驾驶:感知周围环境,做出驾驶决策。 2. 家居自动化:根据环境和用户行为自动调节设备。 3. 游戏 AI:游戏中的对手角色和智能行为系统。 4. 金融交易:根据市场数据做出交易决策。 5. 客服聊天机器人:通过自然语言处理提供客户支持。 6. 机器人:各类机器人中集成的智能控制系统。 设计和实现一个智能体通常涉及以下步骤: 1. 定义目标:明确需要实现的目标或任务。 2. 感知系统:设计传感器系统采集环境数据。 3. 决策机制:定义决策算法,根据感知数据和目标做决策。 4. 行动系统:设计执行器或输出设备执行决策。 5. 学习与优化:若为学习型智能体,设计学习算法以改进。 领先的智能体公司似乎正在收敛于一种在自主性和控制之间寻找折衷的架构。新兴的 AI 智能体示例包括;以及横跨销售、安全运营和供应链等领域的许多其他智能体。 请注意,以上内容由 AI 大模型生成,请仔细甄别。
2024-11-01