作者姓名:AIease

所谓AI智能体(AIagent),是一种能够感知环境、进行决策和执行动作的智能实体。它们拥有自主性和自适应性,可以依靠AI赋予的能力完成特定任务,并在此过程中不断对自我进行完善和改进。此外,不同的AI智能体之间也可以进行交互,从而共同完成某些工作。

智能体(AI Agent)能够自己感知、决策和行动。随着大语言模型(LLM)驱动的人工智能体(AI Agent)的兴起,我们正处于一个新时代的边缘:人工智能体可能会形成自己的社会,与人类和谐共存。

吴恩达认为,AI Agent将在今年推动人工智能的大规模进步。甚至,有可能超过下一代基础模型所带来的影响。他希望所有从事人工智能工作的人,都能关注AI智能体的发展。吴恩达分享了很多关于智能体的见解,并定义了AI Agent的四大设计模式,Reflection(反思)、Tool use(工具使用)、Planning(规划)和Multi-agent collaboration(多智能体协同)。

智能体通常具备以下几个关键特性:

  1. 自主性:能够在没有人类直接干预的情况下执行任务和做出决策。
  2. 社交能力:能够与人类或其他智能体进行交流和协作。
  3. 反应性:能够感知其所处的环境变化,并根据这些变化做出快速响应。
  4. 主动性:不仅能够响应环境,还能主动采取行动以实现特定的目标或适应环境变化。
  5. 智能:能够运用知识、推理和规划来解决问题和执行任务。

在人工智能的发展历程中,智能体(Agent AI)的概念已经成为实现人工通用智能(AGI)的一个有前景的途径。智能体AI不仅仅是被动地处理信息,而是能够在虚拟或物理环境中主动感知、推理并执行行动。

智能体通常具有以下能力:
1. 预测建模:智能体可以根据历史数据和趋势预测可能的结果或建议下一步行动。例如,他们可能会预测文本的延续、问题的答案、机器人的下一步行动或场景的解决方案
2. 决策:在一些应用程序中,智能体可以根据他们的推断做出决策。通常,智能体会根据最有可能实现特定目标的内容做出决定。对于推荐系统等人工智能应用程序,智能体可以根据其对用户偏好的推断来决定推荐什么产品或内容。
3. 处理歧义:智能体通常可以通过基于上下文和训练推断最可能的解释来处理歧义输入。然而,他们这样做的能力受到训练数据和算法的限制。
4. 持续改进:虽然一些智能体有能力从新的数据和交互中学习,但许多大型语言模型在训练后不会不断更新其知识库或内部表示。他们的推断通常仅基于截至上次训练更新时可用的数据。

AI Agent起源以及历史发展:
1.起源:智能体的概念源于早期的人工智能研究,特别是在1956年达特茅斯会议上,AI被定义为能够从环境中收集信息并与其有用互动的人工生命形式。

智能体AI的核心技术包括:

  1. 多模态理解:智能体AI能够处理和解释来自视觉、语言、音频等多种模态的数据。
  2. 强化学习:通过与环境的交互,智能体学习如何通过行动获得最大的累积奖励。
  3. 模仿学习:智能体通过模仿专家的行为来学习任务,这在机器人技术中尤其有用。
  4. 大语言模型(LLMs):利用预训练的语言模型来提升智能体的自然语言处理能力。
  5. 视觉语言模型(VLMs):结合视觉和语言信息,用于图像标注、视觉问答等任务。
  6. 上下文学习:智能体通过提供的少量示例来学习新任务。
  7. 优化算法:在空间和时间上优化智能体的行为,以提高任务执行的效率。
  8. 知识表示和推理:智能体能够利用和推理知识库中的信息,以支持复杂的决策。
  9. 工具使用和接口:能够使用外部工具和API,如数据库、搜索引擎、传感器数据等

智能体AI在多个领域展现出广泛的应用潜力:

  1. 游戏:在游戏领域,智能体AI可以作为非玩家角色(None-Player Character, NPC)提供更加丰富和真实的互动体验。
  2. 机器人:智能体AI赋予机器人更强的自主性,使其能够在复杂环境中执行任务。
  3. 医疗保健:在医疗领域,智能体AI可以辅助诊断、患者护理和治疗计划的制定。
  4. 教育:智能体AI可以作为个性化学习助手,根据学生的学习进度和风格调整教学内容。
  5. 客户服务:在客户服务领域,智能体AI可以通过聊天机器人提供24/7的咨询服务。
  6. 私人助理:比如知识检索、生活问答服务等等。

如何构建一个智能体:

以LLM为核心,首先需要定义智能体需要具备的能力,比如自然语言处理、视觉识别、决策制定等。同时,明确智能体的目标,比如完成特定的任务、与人类用户交互或者在多智能体系统中协作。

  1. 自然语言交互:智能体需要能够理解和生成自然语言,以便与用户或其他智能体进行交流。
  2. 知识:智能体需要有一个知识库,包含常识、专业知识、行动知识等,以支持决策和问题解决。
  3. 记忆:智能体应具备记忆能力,能够存储和回忆过去的观察、思考和行动。
  4. 推理和规划:智能体需要能够进行逻辑推理、规划行动步骤,并根据环境反馈调整计划。
  5. 文本输入:智能体需要能够解析和理解文本信息。
  6. 视觉输入:通过视觉传感器或图像处理,智能体可以感知视觉信息。
  7. 听觉输入:智能体可以处理和理解音频输入。
  8. 其他输入:智能体还可以集成其他感官输入,如触觉、嗅觉等。
  9. 文本输出:智能体能够生成文本响应或命令。
  10. 工具使用:智能体可以利用各种工具来扩展其行动能力。
  11. 实际行动:智能体可以执行物理世界中的行动,如机器人控制。

LLM在智能体中的作用:

在AI智能体中,大型语言模型(LLM)起到了核心的“大脑”作用,负责处理信息、进行决策和规划行动。以下是LLM在AI智能体中的一些关键作用:

  1. 自然语言交互:LLM提供了强大的自然语言理解和生成能力,使得AI智能体能够与人类或其他智能体进行有效的交流。
  2. 知识存储与检索:LLM可以存储大量的知识,包括常识、专业知识和行动知识,这些知识对于智能体进行决策和解决问题至关重要。
  3. 记忆能力:LLM可以记住过去的交互和经验,这种记忆机制对于智能体在复杂任务中的表现至关重要。
  4. 推理和规划:LLM能够进行逻辑推理和规划,帮助智能体分解任务、制定行动计划,并根据环境反馈调整策略。
  5. 自主性:LLM赋予智能体一定程度的自主性,使其能够在没有人类干预的情况下执行任务。
  6. 反应性:LLM使智能体能够对环境变化做出快速反应,处理多模态输入,并及时做出决策。
  7. 主动性:LLM可以帮助智能体展示出主动性,通过规划和推理来采取目标导向的行动。
  8. 社交能力:LLM支持智能体与人类或其他智能体进行社交互动,包括合作和竞争。
  9. 工具使用:LLM可以帮助智能体理解和使用各种工具,以扩展其行动能力。
  10. 具体行动:在具有物理形态的智能体中,LLM可以指导智能体进行具体的物理动作,如机器人操控
  11. 多模态感知:LLM可以与其他模型(如视觉或听觉模型)结合,使AI智能体能够处理和理解来自不同感官模式的信息。
  12. 持续学习和适应:LLM的预训练知识和能力使AI智能体能够适应新任务,并通过持续学习不断提升性能。
  13. 安全性和可信度:LLM可以在智能体中实现安全机制,确保其行为符合预定的道德和安全标准。

智能体面临的挑战:

  1. 数据隐私和安全性:智能体AI需要处理大量用户数据,如何保护这些数据的安全和隐私成为一个重要问题。
  2. 可解释性和透明度:智能体AI的决策过程需要足够透明,以便用户和监管机构能够理解和信任。
  3. 偏见和公平性:智能体AI必须避免学习和放大训练数据中的偏见,确保其行为的公平性。
  4. 泛化能力:智能体AI需要具备良好的泛化能力,以便能够在未见过的环境中有效工作。
  5. 伦理和社会责任:智能体AI的开发和部署需要遵循伦理原则,避免对社会造成不利影响。

智能体未来发展前景:

  1. 自我改进:智能体AI将能够通过与环境的互动不断学习和适应,提高其性能。
  2. 跨模态交互:智能体AI将更加注重跨模态的交互能力,提供更自然和丰富的用户体验。
  3. 伦理和社会责任:智能体AI的设计和应用将更加注重伦理和社会责任,确保技术的发展造福社会。
  4. 社会影响:智能体AI将在医疗、教育、娱乐等多个领域产生深远的影响,改变现有的工作和生活方式。

智能体AI的发展是一个多学科、多领域的综合努力,它将推动人工智能技术的边界,为人类社会带来新的机遇和挑战。随着技术的不断进步,我们可以期待智能体AI在未来发挥更加重要的作用。

1.1 人工智能体(AI Agent)角色

人工智能体(AI Agent),扮演着AI监工的角色。它们以自我导向的循环方式工作,为人工智能设置任务、确定优先级和重新确定任务的优先级,直到完成总体目标。

1.2 人工智能体(AI Agent)原理

图源:https://arxiv.org/pdf/2309.07864.pdf

人工智能体(AI Agent)总体框架由大脑、感知、行动三个关键部分组成 :

  • 大脑(Brain):大脑主要由一个大型语言模型组成,不仅存储知识和记忆,还承担着信息处理和决策等功能,并可以呈现推理和规划的过程,能很好地应对未知任务。
  • 感知(Perception):感知模块的核心目的是将Agent的感知空间从纯文字领域扩展到包括文字、听觉和视觉模式在内的多模态领域。
  • 行动(Action):在Agent的构建过程中,行动模块接收大脑模块发送的行动序列,并执行与环境互动的行动。

人类在感知环境后,大脑会对感知到的信息进行整合、分析和推理,并做出决策。随后,他们利用神经系统控制自己的身体,做出适应环境或创造性的行动,如交谈、躲避障碍或生火。当一个Agent拥有类似大脑的结构,具备知识、记忆、推理、规划和概括能力以及多模态感知能力时,它也有望拥有类似人类的各种行动来应对周围环境。在Agent的构建过程中,行动模块接收大脑模块发送的行动序列,并执行与环境互动的行动。

1.3 人工智能体(AI Agent)优势

大语言模型驱动的人工智能体(AI Agent)有如下优势:

  • 语言交互:他们理解和产生语言的固有能力确保了无缝的用户交互。
  • 决策能力:大语言模型有能力推理和决策,使他们善于解决复杂的问题。
  • 灵活适配:Agent的适应性确保它们可以针对不同的应用进行成型。
  • 协作交互:Agent可以与人类或其他Agent协作,为多方面的交互铺平道路。

1.4 人工智能体(AI Agent)应用

图源:https://arxiv.org/pdf/2309.07864.pdf

人工智能体(AI Agent)的用例广泛且多样。这些智能体由大型语言模型(LLM)进行驱动,可用于各种场景,包括:

  • 单智能体应用:Agent可以作为个人助理,帮助用户摆脱日常任务和重复劳动。他们能够独立分析、计划和解决问题,减轻个人的工作压力,提高任务解决效率。
  • 多智能体系统:Agent可以以协作或竞争的方式相互交互。这使他们能够通过团队合作或对抗性互动来实现进步。在这些系统中,Agent可以共同完成复杂的任务或相互竞争以提高其性能。
  • 人机合作:Agent可以与人互动,为人提供帮助并更高效、安全地执行任务。他们可以理解人类的意图并调整他们的行为以提供更好的服务。人类反馈还可以帮助Agent提高性能。
  • 专业领域:Agent可以针对特定领域进行训练和专门化,例如软件开发、科学研究或其他行业特定任务。他们可以利用大规模语料库的预训练以及泛化到新任务的能力,在这些领域提供专业知识和支持。

这些只是人工智能体(AI Agent)的几个示例。这些智能体的多功能性和功能使其适合广泛的应用和行业。

1.5 智能体社会(Agent Society)

智能体社会(Agent Society)是一个概念,其中使用语言模型创建的人工智能智能体在模拟环境中相互交互。这些智能体可以像人类一样行动、做出决策并参与社交活动。

图源:https://arxiv.org/pdf/2309.07864.pdf

它帮助我们了解人工智能体如何在类似社会的环境中协同工作和行为。这种模拟可以提供对协作、政策制定和道德考虑的见解。总体而言,智能体社会帮助我们探索人工智能智能体的社交方面及其在现实和受控环境中的交互。

2 人工智能体(AI Agent)最佳开发框架

有许多框架可以帮助创建人工智能体(AI Agent),以下是一些最好的框架:

2.1 ️ LangChain

框架网址:https://github.com/langchain-ai/langchain

LangChain是一个用于开发由语言模型支持的应用程序的框架。它使应用程序能够:

  • 感知上下文:将语言模型连接到上下文源(提示说明、小样本示例、响应的内容等)
  • 推理:依靠语言模型进行推理(关于如何根据提供的上下文进行回答、采取什么操作等)
图源:https://github.com/langchain-ai/langchain

LangChain框架有以下几个核心组成部分:

  • LangChain库:Python和JavaScript库。包含无数组件的接口和集成、将这些组件组合成链和Agent的基本运行时,以及链和Agent的现成实现。
  • LangChain模板:一系列易于部署的参考架构,适用于各种任务。
  • LangServe:用于将LangChain链部署为RESTAPI的库。
  • LangSmith:一个开发者平台,可让您调试、测试、评估和监控基于任何LLM框架构建的链,并与LangChain无缝集成。

2.2 AutoGen

框架网址:https://github.com/microsoft/autogen

AutoGen是一个支持使用多个智能体(Agent)开发LLM应用程序的框架,这些Agent可以相互对话来解决任务。AutoGen的智能体是可定制的、可对话的,并且无缝地允许人类参与。AutoGen应用可以采用大语言模型、人工输入和使用工具的各种模式的组合运作。

图源:https://github.com/microsoft/autogen
  • AutoGen可以轻松构建基于多智能体对话的下一代LLM应用程序。它简化了复杂的LLM工作流程的编排、自动化和优化。它最大限度地提高了LLM模型的性能并克服了它们的弱点。
  • 它支持复杂工作流程的多种对话模式。借助可定制和可对话的Agent,开发人员可以使用AutoGen构建各种涉及对话自主性、智能体数量和智能体对话拓扑的对话模式。
  • 它提供了一系列具有不同复杂性的工作系统。这些系统涵盖各种领域和复杂性的广泛应用。这演示了AutoGen如何轻松支持不同的对话模式。
  • AutoGen提供增强的LLM推理。它提供API统一和缓存等实用程序,以及错误处理、多配置推理、上下文编程等高级使用模式。

2.3 PromptAppGPT

框架网址:https://github.com/mleoking/PromptAppGPT

PromptAppGPT是首个基于LLM的自然语言应用开发框架:支持全自动编译、运行、界面生成,支持无代码配置实现流程调度,支持几十行低代码实现AutoGPT类全自主智能体(Autonomous Agent)。

PromptAppGPT显著降低了Agent开发门槛:无需下载任何软件,打开网址(https://promptappgpt.wangzhishi.net/)就能开发。

图源:https://github.com/mleoking/PromptAppGPT

PromptAppGPT包含基于低代码提示的开发、GPT文本生成、DALLE图像生成、在线提示编辑器+编译器+运行器、自动用户界面生成、支持插件扩展等功能:

  • ⚡基于低代码提示的快速应用程序开发
  • 用于文本生成的GPT3/4执行器
  • 用于图像生成的Dalle执行器
  • 自定义扩展执行器(插件)
  • #️⃣在线提示编辑器、编译器和运行器
  • ⚙️自动生成用户界面
  • 英文和中文用户界面

PromptAppGPT同时包含以下内置智能体示例:

  • 所有执行器(All Executors):使用所有执行器的应用程序。
  • 我的ChatGPT(My ChatGPT):聊天机器人应用。
  • 创意图像生成器(Imaginative Image Creator):使用GPT和DALL·E从任何语言创建富有想象力的图像的智能体。
  • 披萨订单机器人(Pizza Order Bot):收集披萨餐厅订单的自动化智能体。
  • 通用翻译器(Universal Translator):将任何语言的文本翻译成英语/中文/法语/西班牙语的智能体。
  • 英语润色师(English Improver):进行英语翻译和润色的智能体。
  • 网页和图像搜索(Web & ImageSearcher):使用Bing搜索搜索网页和图像的智能体。
  • 我的AutoGPT(My AutoGPT):一个类似于AutoGPT,能够完全自主使用GPT和执行器(插件)来实现任何目标的智能体。

3 人工智能体(AI Agent)最佳应用项目

3.1 AutoGPT

项目网址:https://github.com/Significant-Gravitas/AutoGPT

AutoGPT由SignificantGravitasLtd.视频游戏公司的创始人ToranBruceRichards开发,是2023年3月推出的早期Agent之一。它也是当今GitHub上最受欢迎的Agent项目。

AutoGPT工作原理。图源:lesswrong.com

AutoGPT背后的想法很简单—它是一个完整的工具包,用于为各种项目构建和运行自定义AI Agent。该工具使用OpenAI的GPT-4和GPT-3.5大语言模型(LLM),允许为各种个人和商业项目构建Agent。

3.2 BabyAGI

项目网址:https://github.com/yoheinakajima/babyagi

BabyAGI是任务驱动自主智能体的精简版。Python脚本只有140个字的代码,根据官方GitHub存储库,“使用OpenAI和矢量数据库(例如Chroma或Weaviate)来创建、确定优先级和执行任务。”

自推出以来,BabyAGI已扩展到多个有趣的项目。有些像twitter-agent 或Slack上的BabyAGI将智能体的力量带到了现有平台。其他人添加插件和附加功能或将BabyAGI移植到其他语言(例如Babyagi-perl)。

BabyAGI Agent循环。图源:github.com/yoheinakajima/babyagi

3.3 SuperAGI

项目网址:https://github.com/TransformerOptimus/SuperAGI

SuperAGI是AutoGPT的更灵活且用户友好的替代方案。将其视为开源AI智能体的集成者,其中包含构建、维护和运行自己的Agent所需的一切。它还包括插件和云版本,可以在其中进行测试。

该框架具有多个人工智能模型、图形用户界面、与矢量数据库的集成(用于存储/检索数据)以及性能洞察。还有一个带有工具包的市场,可让您将其连接到流行的应用程序和服务,例如GoogleAnalytics。

SuperAGI包含如下特性:

  • 配置、生成和部署自主AI Agent-创建生产就绪且可扩展的自主Agent。
  • 使用工具包扩展Agent功能-将我们市场中的工具包添加到Agent工作流程中。
  • 图形用户界面-通过图形用户界面访问Agent。
  • 操作控制台-通过向Agent提供输入和权限来与他们交互。
  • 多个向量数据库-连接到多个向量数据库以增强Agent的性能。
  • 性能遥测-深入了解Agent的性能并进行相应优化。
  • 优化令牌使用-控制令牌使用以有效管理成本。
  • Agent记忆存储-使Agent能够通过存储记忆来学习和适应。
  • 模型-针对特定业务用例的自定义微调模型。
  • 工作流程-使用ReActLLM的预定义步骤轻松自动化任务。

3.4 ShortGPT

项目网址:https://github.com/RayVentura/ShortGPT

ShortGPT是一个用于自动化内容创建的强大框架。它简化了视频创建、素材来源、配音合成和编辑任务。

ShortGPT可以处理大多数典型的视频相关任务,例如编写视频脚本、生成画外音、选择背景音乐、编写标题和描述,甚至编辑视频。该工具适用于跨平台的短视频内容和长视频内容相关任务。

ShortGPT循环和功能。图源:github.com/RayVentura/ShortGPT

ShortGPT框架包含以下主要特性:

  • ️自动编辑框架:使用面向LLM的视频编辑语言简化视频创建过程。
  • 脚本和提示:为各种LLM自动编辑流程提供即用型脚本和提示。
  • ️配音/内容创作:支持多种语言,包括英语 、西班牙语 、阿拉伯语 、法语 、波兰语 、德语 、意大利语 、葡萄牙语 、俄语 、普通话 、日语 、印地语 、韩语 以及其他30多种语言(使用EdgeTTS)
  • 字幕生成:自动生成视频字幕。
  • 资源来源:从互联网获取图像和视频片段,根据需要连接网络和PexelsAPI。
  • 内存和持久性:确保使用TinyDB自动编辑变量的长期持久性。

3.5 ChatDev

项目网址:https://github.com/OpenBMB/ChatDev

ChatDev是一家虚拟软件公司,通过担任不同角色的各种智能体进行运营,包括首席执行官、首席产品官、首席技术官、程序员、审阅者、测试员、美术设计师。这些智能体形成了一个多智能体组织结构,并因“通过编程彻底改变数字世界”的使命而团结在一起。ChatDev中的Agent通过参加专门的功能研讨会进行协作,包括设计、编码、测试和记录等任务。

ChatDev的主要目标是提供一个易于使用、高度可定制和可扩展的框架,该框架基于大型语言模型(LLM),是研究集体智慧的理想场景。

图源:https://github.com/OpenBMB/ChatDev

CoPilot、Bard、ChatGPT和许多其他工具都是强大的编码助手。但像ChatDev这样的项目可能很快就会与他们展开竞争。ChatDev被称为“一家虚拟软件公司”,它使用的不是一个而是多个智能体,这些Agent在传统开发组织中扮演不同的角色。每个智能体都分配有独特的角色,可以协作处理各种任务,从设计软件到编写代码和文档。

3.6 MetaGPT

项目网址:https://github.com/geekan/MetaGPT

MetaGPT是另一个开源人工智能体框架,试图模仿传统软件公司的结构。与ChatDev类似,Agent被分配产品经理、项目经理和工程师的角色,并且他们在用户定义的编码任务上进行协作。

软件公司多角色示意图。图源:https://github.com/geekan/MetaGPT

到目前为止,MetaGPT只能解决中等挑战性的任务—比如编写蛇游戏或构建简单的实用应用程序——但它是一个有前景的工具,未来可能会迅速发展。生成一个完整的项目将花费大约2美元的OpenAI接口调用费用。

3.7 Camel

项目网址:https://github.com/camel-ai/camel

简而言之,Camel是早期的多智能体框架之一,它使用独特的角色扮演设计来使多个智能体能够相互通信和协作。

CAMEL框架中两个ChatGPT智能体之间的对话。图源:https://github.com/camel-ai/camel

一切都始于人类定义的任务。该框架利用LLM的强大功能,动态地将角色分配给Agent,指定和开发复杂的任务,并安排角色扮演场景以实现Agent之间的协作。

3.8 JARVIS

项目网址:https://github.com/microsoft/JARVIS

JARVIS处理任务规划、模型选择、任务执行和内容生成。通过访问HuggingFace中心中的数十个专用模型,JARVIS利用ChatGPT的推理能力将最佳模型应用于给定任务。这使得它对于各种任务(从简单的摘要到对象检测)都具有相当不错的灵活性。

JARVIS整体框架。图源:https://github.com/microsoft/JARVIS

JARVIS引入了一个协作系统,该系统由作为控制器的大语言模型和作为协作执行器的众多专家模型(来自 HuggingFace Hub)组成。系统的工作流程由四个阶段组成:

  • 任务规划:使用ChatGPT分析用户的请求,了解他们的意图,并将其分解为可能的可解决的任务。
  • 模型选择:为了解决计划的任务,ChatGPT根据描述选择Hugging Face上托管的专家模型。
  • 任务执行:调用并执行每个选定的模型,并将结果返回给ChatGPT。
  • 响应生成:最后,使用ChatGPT整合所有模型的预测,并生成响应。
JARVIS工作流程示例。图源:https://github.com/microsoft/JARVIS

3.9 OpenAGI

项目网址:https://github.com/agiresearch/OpenAGI

OpenAGI是一个开源AGI(通用人工智能)研究平台,结合了小型专家模型(为情感分析或图像去模糊等任务量身定制的模型)和任务反馈强化学习(RLTF),以提高其输出。它汇集了ChatGPT等流行平台、LLaMa2等大语言模型以及其他专业模型,并根据任务上下文动态选择正确的工具。

OpenAGI框架。图源:https://github.com/agiresearch/OpenAGI

OpenAGI是一个开源AGI研究平台,专门设计用于提供复杂的多步骤任务,并附带特定于任务的数据集、评估指标和各种可扩展模型。OpenAGI将复杂的任务表述为自然语言查询,作为LLM的输入。LLM随后选择、综合和执行OpenAGI提供的模型来解决任务。此外,该项目还提出了任务反馈强化学习(RLTF)机制,以任务解决结果作为反馈,提高LLM的任务解决能力。因此,LLM负责综合各种外部模型来解决复杂的任务,而RLTF则提供反馈以提高其任务解决能力,从而为自我改进的AI提供反馈循环。,LLM操作各种专家模型来解决复杂任务的范例是实现AGI的一种有前途的方法。

指导OpenAGI创作一幅以“高山流水”为主题的国画,并配以一首生成的中国古诗词和一首与画作相一致的音乐。OpenAGI首先在网上搜索“理解”“高山流水”的古老故事,然后基于大语言模型和领域专家模型的协作逐步生成绘画、诗歌和音乐。所创作的绘画、诗歌、音乐都与古代故事相吻合。图源:https://github.com/a
指示OpenAGI创建中国之旅的旅行报告,包括景点、活动和当地美食的推荐,以及为旅行者提供的实用信息,例如如何保持安全和健康以及如何在该国旅游。图源:https://github.com/agiresearch/OpenAGI

2.10 XAgent

框架网址:https://github.com/OpenBMB/XAgent

XAgent是一个开源实验性大型语言模型(LLM)驱动的自主智能体,可以自动解决各种任务。它被设计为一个通用Agent,可以应用于广泛的任务。XAgent仍处于早期阶段,开发人员正在努力改进它。 XAgent旨在创建一个可以解决任何给定任务的超级智能Agent。

XAgent组成。图源:https://github.com/OpenBMB/XAgent

XAgent的设计具有以下特点:

  • 自主性:XAgent可以自动解决各种任务,无需人工参与。
  • 安全:XAgent旨在安全运行。无论如何运行它,所有操作都限制在docker容器内!
  • 可扩展性:XAgent被设计为可扩展的,可以轻松添加新工具来增强特工能力甚至新特性!
  • GUI:XAgent为用户与Agent交互提供了友好的GUI。也还可以使用命令行界面与Agent交互。
  • 与人合作:XAgent可以与人协作处理任务。它不仅能够在旅途中遵循人的指导来解决复杂的任务,而且在遇到挑战时还可以寻求人的帮助。

XAgent由三部分组成:

  • Dispatcher:负责动态实例化任务并将任务分派给不同的Agent。它允许添加新的Agent并提高Agent的能力。
  • Planner:负责生成和修正任务计划。它将任务划分为子任务并为它们生成里程碑,允许Agent逐步解决任务。
  • Actor:负责执行行动以实现目标并完成子任务。Actor利用各种工具来解决子任务,它也可以与人协作来解决任务。
XAgent工作流程。图源:https://github.com/OpenBMB/XAgent

4 人工智能体(AI Agent)的作用和挑战

4.1 人工智能体(AI Agent)的作用

“那么,我可以使用智能体做什么呢?”这是一个很好的问题,我们很想说出“一切”,但考虑到当前的技术状况,这与事实相去甚远。尽管如此,即使在其初始阶段,人工智能体也可以通过以下方式让生活和工作变得更轻松:

  • 简化研究和数据收集。
  • ✏️生成多种不同风格和语气的内容。
  • 爬行网络并提取关键见解。
  • 总结文档和电子表格。
  • 在语言之间翻译内容。
  • 充当创意任务的虚拟助手。
  • ⚡️自动化管理任务,例如安排和跟踪。

Agent未来将不断演进,从需要人交互的基于提示的工具转变为在自我引导循环中运行的全自主系统。毕竟,这就是人工智能工具应有的样子—自动、可信、可靠,不需要冗长的提示或审查每个步骤。

假设您想要分析电动汽车(EV)行业过去十年的市场趋势。您可以在做其他事情时将这些任务委托给智能体,而不是手动收集数据、阅读无数文章和解析财务报告。

即使使用像ChatGPT这样的工具,人仍然需要随时掌握最新动态。Agent可以帮助找到正确的信息、做笔记并组织一切。如果已经有一些数据,Agent将在几秒钟内给出充实关键的见解。

有时,一个项目可能过于复杂,以至于一个Agent无法管理。通过多Agent设置,每个Agent负责处理项目的一部分。一个Agent可以收集数据,而另一个可以创建报告大纲。然后,第三个Agent可以编译信息并生成实际内容。

4.2 人工智能体(AI Agents)的挑战

全自主智能体(Autonomous Agents)仍然处于人工智能工具的狂野西部,它们在很大程度上是实验性的,需要一定的技术知识来设置、部署和维护。这对于DIY项目来说非常好,但如果只想完成工作,那么这并不是一种即插即用的体验。可以在技术上将开源Agent与现有工作流程结合起来。但这需要时间、专业知识和资源。

当然,还有幻觉的问题。由于Agent依赖大语言模型来生成信息,因此他们同样容易陷入没有事实依据的怪异叙述中。Agent运行的时间越长,就越有可能捏造和扭曲现实。从生产力的角度来看,这造成了一些困境。有一些环节的简单方案,包括:限制Agent的运行时间、缩小任务范围、让一个人参与循环来审查输出等等。

通过部署多个具有专业知识和独特技能的Agent,可以获得更好的结果-因此多智能体框架可能会更受欢迎。

5 总结与展望

人工智能的发展,随着GPT-4、Bard和LlaMa2等人工智能模型更快、更准确和更大规模的迭代即将出现,我们可能会在未来几个月看到更多令人兴奋的突破。尤其是人工智能体(AI Agent)的兴起,标志着数字领域的巨大转变。这些智能体具有理解、创造和交互的能力,它们不仅仅是工具,而且是各个领域的潜在合作者。当我们站在这场革命的风口浪尖时,必须负责任地利用他们的能力。

当今可用的工具和平台使我们能够为不同的任务定制Agent,但我们也必须保持警惕并考虑这些进步的道德影响。人类与人工智能之间的桥梁从未如此短,随着我们前进,和谐共存似乎不仅可能,而且迫在眉睫。

在可以预见的未来,Agent将重新定义我们对工作、规划和协作的看法。它们将彻底改变生产力并增强传统工作流程。

在当今信息爆炸的时代,有效地获取和生成信息变得越来越重要。检索增强生成(Retrieval Augmented Generation,简称RAG)是一种创新的技术,旨在通过集成检索和生成模型,提供更强大的信息处理和创造能力。

检索增强生成为大型语言模型(LLMs)提供了从某些数据源检索到的信息,以此作为生成答案的基础。简而言之,RAG是搜索+LLM提示的结合,即在有搜索算法找到的信息作为上下文的情况下,让模型回答提出的查询。查询和检索到的上下文都被注入到发送给LLM的提示中。

目前,RAG是基于LLM系统中最受欢迎的架构。许多产品几乎完全基于RAG构建,包括将网络搜索引擎与LLMs相结合的问答服务,以及数百种与数据聊天的应用程序。

有两个最突出的开源库用于基于LLM的管道和应用程序——LangChain和LlamaIndex,它们分别于2022年10月和11月成立,并在2023年获得了大量的应用。

RAG可以通过将检索模型和生成模型结合在一起,从而提高了生成内容的相关性和质量。

通俗一点讲就是大模型LLM如何很好的与外部知识源结合在一起, 使其生成的内容质量更高,缓解大模型LLM生成内容「幻觉」的问题。

检索模型

检索模型旨在从一组给定的文档或知识库中检索相关信息。

检索模型的工作就像是在一个巨大的图书馆中寻找信息。设想你有成千上万本书籍和文章,当你提出一个问题时,检索模型就像一个聪明的图书管理员,能迅速理解你的问题并找到与之最相关的最佳信息。

检索的核心分为如下两部分:

  • 索引:嵌入(Embeddings),将知识库转换为可搜索/查询的内容。
  • 查询:从搜索内容中提取最相关的、最佳知识片段。

生成模型

生成模型指的是大型语言模型LLM,例如chatGPT。生成模型是实现高质量、高相关性内容生成的关键。它不仅利用自身的强大语言生成能力,还结合检索模型提供的确切信息,以生成更准确、更丰富的内容。

简单来说,检索模型擅长”找”信息,生成模型擅长”创造”内容。

执行流程

执行流程图

索引生成部分

文档处理:将私有知识库中的文档转换成可以处理的文本块。

嵌入模型:使用嵌入模型(如BERT、GPT等)将文本块转换成向量。

索引:创建文本块向量的索引,以便能够快速检索。

数据库:嵌入向量被存储在一个向量数据库中,通常使用近似最近邻(ANN)搜索来优化检索速度。

用户问答部分

查询:用户在聊天界面输入查询。

查询嵌入:查询也被转换成向量,以便与文档的嵌入向量进行比较。

检索向量:查询的向量在向量索引中被用来找出最相近的文本块向量,最相近的文本块向量代表了与用户查询最相关的知识片段。

提示和回答:生成模型(LLM)接收到用户的查询和检索到的知识片段,然后生成回答。这个回答既包含了用户查询的上下文,也融合了从知识库中检索到的信息。

RAG的作用

保持知识更新

将大型语言模型(LLM)如ChatGPT配备能够随时查阅最新资讯的能力,就好比为它安装了一对能够观察现实世界的“眼睛”。这种能力的增加不仅极大地扩展了模型的知识范围,还提高了其与现实世界同步的能力,让它能够更有效地参与到关于时事的对话中。

提供专业知识

如果你的问题涉及特定的专业领域,RAG就像一个熟练的图书管理员,它不仅掌握着大量的专业书籍,还能够迅速而准确地从这些书籍中找到与你的问题最相关的答案。这样的能力使得RAG在处理复杂和专业性问题时表现出色。

私有知识的安全

随着人工智能的发展,数据安全成为了企业关注的重点。对于企业而言,将长期累积的独有的知识库、敏感的经营数据、合同文件等机密信息上传到互联网上的大型模型可能会带来安全风险。在这种背景下,RAG技术提供了一种有效的解决方案。

增加可信度

RAG赋予机器人在回答问题时提供信息来源的能力,这是一个重要的特性。当你向机器人提问时,它不仅能给出答案,还能明确告诉你这些答案是基于哪些资料或数据得出的。这种透明度极大地增加了机器人提供的信息的可信度,并帮助用户区分信息的真实性和准确性。

减少大模型LLM的“幻觉”

大型语言模型(如GPT系列)在生成文本时偶尔出现的“幻觉”(hallucination)现象,是由于模型在处理特定查询时,可能会生成不准确、不相关或虚构的信息。这种现象往往发生在模型对于回答问题所需的知识不了解或不熟悉的情况下。RAG的出现,通过利用外部知识源,可以有效地弥补这一缺陷。

面临的挑战

RAG在实施过程中确实面临着多项挑战,其中包括嵌入质量、性能优化和上下文理解。这些难点不仅关系到RAG系统的效率,还直接影响到最终生成文本的准确性和可用性。

提升嵌入的质量

将外部知识源转换为向量时,需要保证嵌入(embedding)的高质量至关重要,这一过程对于提高查询与知识库信息匹配的准确性至关重要。技术上,这要求嵌入能够捕获和保留文本的深层语义特征,包括上下文关系和词汇间的微妙联系。

此外,为了避免训练过程中的数据偏见,需要用到平衡和多样化的数据集。只有这样,通过嵌入生成的向量才能真正代表原始文本的意图和内容,从而在查询时提供更准确、更相关的结果。

查找精确知识的挑战

从外部知识源中准确地查找与当前问题最匹配的知识是一个复杂的挑战。这要求大模型LLM能够深入理解用户查询的真实意图,同时利用高效的检索算法在庞大的数据集中快速定位相关信息。此外,确保检索结果的相关性和质量,以及处理大量数据的能力,也是这一挑战的关键部分。同时,系统还需要适应模糊或复杂的查询,并保持知识库的时效性和准确性。

上下文内容的理解

上下文理解是一个核心挑战,要求生成模型不仅深入理解检索到的上下文信息,包括其隐含含义和语境;
在理解检索到的内容后,挑战在于如何将这些信息与原始查询请求以及模型已有的知识库相结合。这要求模型能够在回答生成过程中,不仅准确地引用检索信息,还要保证信息的连贯性和逻辑性。

上下文理解的挑战要求RAG在处理和生成回答时,能够展现出高度的理解能力和灵活的信息整合能力。这对于提升回答的质量和用户满意度至关重要。

应用场景

RAG在未来的应用前景非常广阔,几乎覆盖了所有企业和行业。这是因为RAG能够结合大型语言模型的强大处理能力和企业或行业自身独有的知识体系,从而制定出行业或企业专属的AI解决方案。无论是金融、医疗、法律、教育,还是零售、制造、娱乐等行业,企业都可以利用RAG技术构建专门的小型模型,以满足特定的业务需求。

医疗行业

在医疗领域,RAG可以被用作临床决策支持工具。通过结合医学数据库和研究论文,RAG能够帮助医生快速获得关于疾病诊断、治疗方案和药物信息的最新研究。例如,对于罕见病的诊断,RAG可以通过检索最新的医学文献和病例报告,提供可能的诊断建议和治疗方法。

法律行业

在法律行业,RAG可以辅助律师进行案例研究和提供法律咨询。通过访问法律数据库和历史案例,RAG能够帮助律师找到相关的法律先例和法规,从而提高案件分析的效率和准确性。这对于处理复杂的法律问题,如知识产权纠纷或国际法案,尤为有用。

教育领域

在教育领域,RAG可以作为学习资源和研究辅助工具。教师和学生可以利用RAG快速访问大量的教育资料、学术论文和案例研究,从而丰富教学内容和加深学习理解。例如,学生在准备论文时,可以用RAG来查找相关的研究工作和理论框架。

基础的RAG技术

本文中,我们用一组文本文档的语料库来代表RAG的起点——我们跳过了在此之前的步骤,留给那些开源数据加载器去处理,这些加载器可以连接到任何可想象的来源,从YouTube到Notion。

2.png

简单RAG案例大致如下:

  • 将文本分割成块,然后使用基于Transformer decoder的模型将这些块嵌入到向量中,将所有这些向量放入一个索引中,最后为LLM创建一个提示,告诉模型在我们在搜索步骤中找到的上下文中回答用户的查询。
  • 在运行时,我们使用相同的编码器模型将用户的查询向量化,然后对索引执行这个查询向量的搜索,找到前k个结果,从我们的数据库中检索相应的文本块,并将它们作为上下文输入到LLM的提示中。

提示可能看起来是这样的:

def question_answering(context, query): prompt = f""" Give the answer to the user query delimited by triple backticks ```{query}```\ using the information given in context delimited by triple backticks ```{context}```.\ If there is no relevant information in the provided context, try to answer yourself, but tell user that you did not have any relevant context to base your answer on. Be concise and output the answer of size less than 80 tokens. """ response = get_completion(instruction, prompt, model="gpt-3.5-turbo") answer = response.choices[0].message["content"] return answer

提示工程是提升RAG管道性能最经济的尝试之一。确保您已经查看了OpenAI提供的提示工程指南[2]。

尽管OpenAI作为LLM领域领导公司,但还有一些替代品,如Anthropic的Claude,最近流行的小型但非常强大的模型,如Mistral的Mixtral,Microsoft的Phi-2,以及许多开源选项,如Llama2、OpenLLaMA、Falcon等,所以您可以为您的RAG管道选择一个“大脑”。

高级RAG技术

现在我们将深入了解高级RAG技术的概述。下面是一个展示核心步骤的示意图。为了保持图表的可读性,省略了一些逻辑循环和复杂的多步骤代理行为。

3.png

图中的绿色元素是接下来讨论的核心RAG技术,蓝色元素代表文本。并非所有高级RAG理念都能轻易在单一图表上可视化,例如,省略了各种扩大上下文的方法——我们将在后面深入探讨这些。

切分和向量化

首先,我们想创建一个向量索引,代表我们文档的内容,然后在运行时搜索这些向量与查询向量之间最小的余弦距离,对应于最接近的语义含义。

切分: Transformer模型有固定的输入序列长度,即使输入上下文窗口很大,一个句子或几个句子的向量也比几页文本的平均向量更好地代表它们的语义含义(也取决于模型,但通常如此),所以要切分你的数据——将初始文档切分为某个大小的块,不会丢失它们的含义(将文本切分为句子或段落,而不是将单个句子切成两部分)。有各种文本分割器实现能够完成这项任务。

块的大小是一个需要考虑的参数——它取决于你使用的嵌入模型及其在令牌上的容量,标准的Transformer编码器模型如基于BERT的句子转换器最多接受512个令牌,OpenAI ada-002能够处理更长的序列,如8191个令牌,但这里的折中是为LLM提供足够的上下文进行推理与执行搜索的足够具体的文本嵌入。最近的一项研究[3]说明了块大小选择的考虑因素。在LlamaIndex中,这是通过NodeParser类来覆盖的,它提供了一些高级选项,如定义自己的文本分割器、元数据、节点/块关系等。

向量化: 下一步是选择一个模型来嵌入切割后的块——有很多选择,例如像bge-large或E5嵌入系列这样的搜索优化模型——只需查看MTEB排行榜上[4]的最新更新。

要了解切分和向量化步骤的端到端实现,请查看LlamaIndex中的一个完整的示例。

搜索索引

向量存储索引: RAG管道的关键部分是搜索索引,它存储了我们在上一步中获得的向量化内容。最简单的实现使用平面索引——在查询向量和所有块向量之间进行暴力距离计算。

4.png

一个为10000+元素规模上的高效检索优化的索引是一个向量索引,如faiss、nmslib或annoy,使用某种近似最近邻实现,如聚类、树或HNSW算法。

还有一些托管解决方案,如OpenSearch或ElasticSearch,以及向量数据库,它们在后台处理第1步中描述的数据摄取管道,如Pinecone、Weaviate或Chroma。根据选择的索引、数据和搜索需求,可以将元数据与向量一起存储,然后使用元数据过滤器来搜索某些日期或来源内的信息。

LlamaIndex支持许多向量存储索引,但还支持其他更简单的索引实现,如列表索引、树索引和关键词表索引——我们将在融合检索部分讨论后者。

分层索引: 如果您需要从许多文档中检索信息,您需要能够有效地在其中搜索,找到相关信息,并将其综合为带有来源引用的单一答案。在大型数据库中做到这一点的有效方法是创建两个索引——一个由摘要组成,另一个由文档块组成,并分两步进行搜索,首先通过摘要筛选出相关文档,然后仅在这个相关组内搜索。

5.png

假设性问题和HyDE: 另一种方法是让LLM为每个块生成一个问题,并将这些问题嵌入向量中,在运行时针对这个问题向量索引进行查询搜索(在我们的索引中用问题向量替换块向量),然后在检索后路由到原始文本块,并将它们作为上下文发送给LLM以获得答案。这种方法通过查询与假设性问题之间更高的语义相似性,提高了搜索质量。

还有一种逆向逻辑方法称为HyDE——让LLM给定查询生成一个假设性回应,然后使用其向量和查询向量来提高搜索质量。

上下文丰富化: 上下文丰富化是检索更小的块以提高搜索质量,但添加周围上下文让LLM进行推理。通常有两种做法——通过在检索到的较小块周围的句子扩展上下文,或者将文档递归地分割成包含较小子块的多个较大的父块。

  • 句子窗口检索: 在这个方案中,文档中的每个句子都分别嵌入,这提供了极高的查询与上下文余弦距离搜索的准确性。为了在找到最相关的单个句子后更好地推理所发现的上下文,我们通过在检索到的句子前后扩展k个句子的上下文窗口,然后将这个扩展的上下文发送给LLM。
6.png
  • 自动合并检索器(又称父文档检索器): 这里的想法与句子窗口检索非常相似——搜索更精细的信息片段,然后在将这些上下文提供给LLM进行推理之前扩展上下文窗口。文档被分割成较小的子块,这些子块引用较大的父块。
7.png

在这种方法中,首先在更细粒度的子块上进行搜索,找到与查询最相关的块。然后,系统会自动将这些子块与它们所属的更大的父块结合起来。这样做的目的是在回答查询时为LLM提供更丰富的上下文。例如,如果一个子块是一段或一小节,父块可能是整个章节或文档的一大部分。这种方法既保留了检索精度(因为是在更小的块上搜索),同时也通过提供更广泛的上下文来增强LLM的推理能力。

在检索过程中首先获取较小的块,然后如果在检索到的前k个块中有超过n个块与同一个父节点(较大的块)相关联,我们就用这个父节点替换提供给LLM的上下文——这就像自动将几个检索到的块合并成一个较大的父块,因此得名。需要注意的是——搜索仅在子节点索引中进行。想要更深入地了解,请查看LlamaIndex关于递归检索器+节点引用的教程[5]。

融合检索或混合搜索: 这是一个相对较老的想法,即从两个世界中各取所长——基于关键字的传统搜索(稀疏检索算法,如tf-idf或搜索行业标准BM25)和现代语义或向量搜索,并将它们结合在一个检索结果中。这里唯一的技巧是正确组合具有不同相似性得分的检索结果——这个问题通常通过使用倒数排名融合算法来解决,重新排列检索结果以获得最终输出。

8.png

在LangChain[6]中,这是通过Ensemble Retriever类实现的,它结合了你定义的一系列检索器,例如faiss向量索引和基于BM25的检索器,并使用RRF进行重排。在LlamaIndex[7]中这种做法也非常类似。

混合或融合搜索通常会提供更好的检索结果,因为它结合了两种互补的搜索算法,同时考虑了查询和存储文档之间的语义相似性和关键词匹配。

重排和过滤

使用上述任何算法得到检索结果后,现在是时候通过过滤、重排或一些转换来精炼这些结果了。在LlamaIndex中,有多种可用的后处理器,可以根据相似性分数、关键词、元数据过滤结果,或者使用其他模型进行重排,比如LLM、句子转换器交叉编码器、Cohere重排端点,或者基于日期的最新性等元数据——基本上,你能想到的都可以。

重排和过滤是在将检索到的上下文提供给LLM以获取最终答案之前的最后一步。现在是时候进入更复杂的RAG技术,如查询转换和路由,这两者都涉及到LLM,因此代表了主动性行为——在我们的RAG流程中涉及到一些复杂的逻辑,包括LLM的推理。

查询转换

查询转换是一系列技术,利用LLM作为推理引擎来修改用户输入,以提高检索质量。

9.png

有几种不同的方式可以做到这一点。如果查询很复杂,LLM可以将其分解成几个子查询。例如,如果你问:

  • “在Github上,Langchain和LlamaIndex哪个框架的星星更多?” 由于我们不太可能在语料库中找到直接的比较,所以将这个问题分解成两个预设简单和具体信息检索的子查询是有意义的:
  • “Langchain在Github上有多少星星?”
  • “LlamaIndex在Github上有多少星星?” 这两个查询将并行执行,然后将检索到的上下文合并成一个提示,供LLM合成最初查询的最终答案。Langchain和LlamaIndex都实现了这一功能——在Langchain中作为多查询检索器,在LlamaIndex中作为子问题查询引擎。

回溯提示使用LLM生成更一般的查询,我们为此检索获得更一般或高层次的上下文,有助于支撑我们对原始查询的回答。也会对原始查询进行检索,两种上下文都在最终生成答案的步骤中输入给LLM。这是LangChain的实现方法。

查询重写使用LLM重构初始查询以改善检索。LangChain和LlamaIndex都有实现,虽然有些不同,但我认为在这里LlamaIndex的解决方案更为强大。

此外, 还有一个概念是参考引用。这一部分不作为单独的一章来介绍,因为它更像是一种工具而不是检索改进技术,尽管它非常重要。如果我们为了回答一个问题而使用了多个来源,可能是因为初始查询的复杂性(我们需要执行多个子查询,然后将检索到的上下文合并成一个答案),或者是因为我们在不同的文档中找到了与单个查询相关的上下文,那么就会出现一个问题:我们能否准确地回溯引用我们的来源。

有几种方法可以做到这一点:

  • 将引用任务插入我们的提示中,并要求LLM提及使用的来源的ID。
  • 将生成的响应部分与我们索引中的原始文本块匹配——llamaindex为这种情况提供了一个基于模糊匹配的高效解决方案。如果你还没有听说过模糊匹配,这是一种非常强大的字符串匹配技术。

聊天引擎

在构建一个能够针对单个查询多次运行的优秀RAG系统中,下一个重要的环节是聊天逻辑,这与前LLM时代的经典聊天机器人一样,需要考虑对话上下文。这对于支持后续问题、指代消解或与先前对话上下文相关的任意用户命令是必要的。这可以通过查询压缩技术来解决,同时考虑聊天上下文和用户查询。

如同往常,有几种处理上述上下文压缩的方法 — 一种流行且相对简单的方法是ContextChatEngine,它首先检索与用户查询相关的上下文,然后将其连同聊天历史记录从内存缓冲区发送给LLM,以便LLM在生成下一个回答时能够了解之前的上下文。

更复杂的一个例子是CondensePlusContextMode — 在这种模式中,每次交互时都会将聊天历史和最后一条消息压缩成一个新的查询,然后这个查询会进入索引,检索到的上下文连同原始用户消息一起传递给LLM,以生成答案。

10.png

值得注意的是,LlamaIndex还支持基于OpenAI代理的聊天引擎,提供更灵活的聊天模式,Langchain也支持OpenAI功能性API。还有其他类型的聊天引擎,如ReAct Agent,但我们在后面再讨论代理本身。

查询路由

查询路由是一个以LLM为驱动的决策步骤,决定针对用户查询接下来要做什么——通常的选项包括概括总结、针对某些数据索引执行搜索,或尝试多种不同的路径,然后将它们的输出合成一个答案。

查询路由器还用于选择索引,或更广泛地说,数据存储位置,以发送用户查询——无论你拥有多个数据来源,例如经典的向量存储、图形数据库或关系型数据库,还是拥有一个索引层次结构——对于多文档存储,一个相当典型的情况可能是一个概要索引和另一个文档块向量的索引。

定义查询路由器包括设置它可以做出的选择。路由选项的选择是通过LLM调用进行的,返回预定义格式的结果,用于将查询路由到给定的索引,或者,如果我们谈论主动性行为,路由到子链或甚至其他代理,如下面的多文档代理方案所示。

LlamaIndex和LangChain都支持查询路由器。

RAG中的代理

Langchain和LlamaIndex都支持的代理(Agents),自从第一个LLM API发布以来就已经存在——这个想法是为一个能够进行推理的LLM提供一套工具和一个要完成的任务。这些工具可能包括一些确定性函数,如任何代码函数、外部API甚至其他代理——LLM链式调用的这个想法是LangChain名字的由来。

代理本身是一个巨大的领域,要在RAG概览中深入探讨是不可能的,所以我将继续讨论基于代理的多文档检索案例,并在OpenAI助手这个相对较新的领域短暂停留,因为它是最近OpenAI开发者大会上作为GPTs介绍的,并在下面描述的RAG系统的底层工作。

OpenAI助手基本上实现了围绕LLM所需的许多工具,我们之前在开源中拥有这些工具——聊天历史记录、知识存储、文档上传界面,以及或许最重要的,函数调用API。后者提供了将自然语言转换为对外部工具或数据库查询的API调用的能力。

在LlamaIndex中,OpenAIAgent类将这种高级逻辑与ChatEngine和QueryEngine类结合起来,提供基于知识和上下文的聊天,以及在一次对话中调用多个OpenAI函数的能力,这确实带来了智能的代理行为。

让我们来看一下多文档代理方案——一个相当复杂的设置,涉及对每个文档初始化一个代理(OpenAIAgent),能够进行文档概要和经典的问答机制,并有一个顶级代理,负责将查询路由到文档代理,并进行最终答案的合成。

每个文档代理都有两个工具——一个向量存储索引和一个概要索引,并根据路由查询决定使用哪一个。而对于顶级代理来说,所有文档代理都分别是工具。

这个方案展示了一个高级的RAG架构,其中每个参与的代理都做出了许多路由决策。这种方法的好处是能够比较不同的解决方案或实体,这些解决方案或实体描述在不同的文档及其概要中,同时包括经典的单文档概要和问答机制——这基本上涵盖了最常见的与文档集合聊天的用例。这种复杂方案的缺点可以从图中猜测——由于涉及代理中LLM的多次来回迭代,它有些慢。顺便说一下,LLM调用总是RAG流程中最长的操作——搜索本身就是为速度优化的设计。所以对于大型多文档存储,我建议考虑对这个方案进行一些简化,使其可扩展。

11.png

响应合成器

这是任何RAG流程的最后一步——基于我们仔细检索的所有上下文和初始用户查询生成答案。最简单的方法可能是将所有获取到的上下文(超过某个相关性阈值的)连同查询一起一次性输入给LLM。但是,像往常一样,还有其他更复杂的选项,涉及多次LLM调用以优化检索到的上下文并生成更好的答案。

响应合成的主要方法包括:

  1. 通过逐块将检索到的上下文发送给LLM来迭代地完善答案。
  2. 概括检索到的上下文以适应提示。
  3. 基于不同的上下文块生成多个答案,然后将它们连接或概括起来。有关更多细节,请查阅响应合成器模块文档[8]。

编码器和LLM微调

这种方法涉及对RAG流程中的两个深度学习模型之一进行微调——要么是负责嵌入质量和上下文检索质量的Transformer编码器,要么是负责最佳利用提供的上下文来回答用户查询的LLM,幸运的是,后者是一个很好的少量样本学习器。

如今一个很大的优势是能够使用像GPT-4这样的高端LLM来生成高质量的合成数据集。但使用由专业研究团队在精心收集、清洗和验证的大型数据集上训练的开源模型,并使用小型合成数据集进行快速调整,可能会降低模型的整体能力。

编码器微调: 我对编码器微调方法也有些怀疑,因为最新的为搜索优化的Transformer编码器相当高效。所以我在LlamaIndex笔记本设置中测试了对bge-large-en-v1.5(在撰写本文时为MTEB排行榜前4)进行微调的性能提升,结果显示检索质量提高了2%。虽然不是很惊人,但了解这个选项还是不错的,尤其是如果你有一个你正在为之构建RAG的狭窄领域数据集。

排名器微调: 另一个老方法是,如果你不完全信任你的基础编码器,就使用交叉编码器对检索结果进行重排。其工作方式如下——你将查询和前k个检索到的文本块传递给交叉编码器,以SEP令牌分隔,并对其进行微调,以输出1表示相关块,0表示不相关。这里有一个这种调整过程的例子[9],结果显示交叉编码器微调提高了4%的成对分数。

LLM微调: 最近OpenAI开始提供LLM微调API,LlamaIndex有关于在RAG设置中微调GPT-3.5-turbo的教程[10],以“提炼”一些GPT-4的知识。这里的想法是拿一个文档,用GPT-3.5-turbo生成一些问题,然后使用GPT-4根据文档内容生成这些问题的答案(构建一个由GPT4驱动的RAG流程),然后对GPT-3.5-turbo进行微调,使其在问题-答案对的数据集上进行训练。用于RAG流程评估的ragas框架显示,忠实度指标提高了5%,意味着微调后的GPT 3.5-turbo模型比原始模型更好地利用了提供的上下文来生成其答案。

一种更复杂的方法在最近的RA-DIT论文[11]中展示:由Meta AI研究提出的检索增强双指导调整技术,建议对LLM和检索器(原论文中的双编码器)进行调整,针对查询、上下文和答案的三元组。有关实现细节,请参考这个指南[12]。这种技术用于通过微调API对OpenAI LLM进行微调,以及对Llama2开源模型进行微调(在原论文中),结果显示在知识密集型任务指标上提高了约5%(与Llama2 65B with RAG相比),以及在常识推理任务上提高了几个百分点。

评估

RAG系统性能评估有几个框架,它们共享一个理念,即拥有几个独立的指标,如整体答案相关性、答案的根据性、忠实度和检索到的上下文相关性。

前一节提到的Ragas使用忠实度和答案相关性作为生成答案质量的指标,以及经典的上下文精确度和召回率用于RAG方案的检索部分。

在Andrew NG最近发布的精彩短课程《构建和评估高级RAG》中,LlamaIndex和评估框架Truelens建议使用RAG三元组——检索到的上下文与查询的相关性、根据性(LLM答案受提供的上下文支持的程度)以及答案与查询的相关性。

最关键且最可控的指标是检索到的上下文相关性——基本上上面描述的高级RAG流程的第1-7部分以及编码器和排名器微调部分旨在改善这一指标,而第8部分和LLM微调则专注于答案相关性和根据性。

一个相当简单的检索器评估流程的例子可以在这里[13]找到,并且已应用于编码器微调部分。一种更高级的方法不仅考虑命中率,还考虑了平均倒数排名(一个常见的搜索引擎指标)以及生成答案的指标,如忠实度和相关性,这在OpenAI cookbook[14]中有所展示。

LangChain有一个相当先进的评估框架LangSmith[15],可以实现自定义评估器,它还监控RAG流程中的运行轨迹,以使你的系统更透明。

如果你在使用LlamaIndex构建,那么有一个rag_evaluator llama包[16],提供了一个快速工具,用公共数据集评估你的流程。

结论

我试图概述RAG的核心算法方法,并且用一些示例来说明它们,希望这能激发一些在你的RAG流程中尝试的新想法,或者为今年发明的众多技术带来一些系统化——对我来说,2023年到目前为止是ML领域最激动人心的一年。

还有许多其他需要考虑的事情,如基于网络搜索的RAG(LlamaIndex的RAGs、webLangChain等),更深入地探讨主动架构(以及最近OpenAI在这个游戏中的份额)以及一些关于LLM长期记忆的想法。

RAG系统的主要生产挑战除了答案相关性和忠实度之外,还有速度,尤其是如果你倾向于更灵活的基于代理的方案。ChatGPT和大多数其他助手使用的这种流媒体功能不是随机的赛博朋克风格,而只是一种缩短感知答案生成时间的方式。这就是为什么我看到小型LLM和最近的Mixtral和Phi-2发布在这个方向上有一个非常光明的未来。

转自 IVAN ILIN

参考资料

[1] Advanced RAG Techniques: an Illustrated Overview:
https://pub.towardsai.net/advanced-rag-techniques-an-illustrated-overview-04d193d8fec6

[2] 提示工程指南:
https://platform.openai.com/docs/guides/prompt-engineering/strategy-write-clear-instructions

[3] chunking-strategies:
https://www.pinecone.io/learn/chunking-strategies/

[4] MTEB排行榜:
https://huggingface.co/spaces/mteb/leaderboard

[5] LlamaIndex关于递归检索器+节点引用的教程:
https://docs.llamaindex.ai/en/stable/examples/retrievers/recursive_retriever_nodes.html

[6] LangChain:
https://python.langchain.com/docs/modules/data_connection/retrievers/ensemble

[7] LlamaIndex:
https://docs.llamaindex.ai/en/stable/examples/retrievers/reciprocal_rerank_fusion.html

[8] 响应合成器模块文档:
https://docs.llamaindex.ai/en/stable/module_guides/querying/response_synthesizers/root.html

[9] cross_encoder_finetuning:
https://docs.llamaindex.ai/en/latest/examples/finetuning/cross_encoder_finetuning/cross_encoder_finetuning.html#

[10] openai_fine_tuning:
https://docs.llamaindex.ai/en/stable/examples/finetuning/openai_fine_tuning.html

[11] RA-DIT:
https://arxiv.org/pdf/2310.01352.pdf

[12] fine-tuning-with-retrieval-augmentation:
https://docs.llamaindex.ai/en/stable/examples/finetuning/knowledge/finetune_retrieval_aug.html#fine-tuning-with-retrieval-augmentation

[13] evaluate.ipynb:
https://github.com/run-llama/finetune-embedding/blob/main/evaluate.ipynb

[14] Evaluate_RAG_with_LlamaIndex:
https://github.com/openai/openai-cookbook/blob/main/examples/evaluation/Evaluate_RAG_with_LlamaIndex.ipynb

[15] LangSmith:
https://docs.smith.langchain.com/

[16] rag_evaluator llama包:
https://github.com/run-llama/llama-hub/tree/dac193254456df699b4c73dd98cdbab3d1dc89b0/llama_hub/llama_packs/rag_evaluator

AIease元宇宙,陆续推出系列AI角色,让用户通过AI与角色进行深层思想对话。

AIease角色数字人犹如一位博学多才的文化使者,不仅能够胜任各类工作智能岗位,也能成为人类的亲密伙伴,带来愉悦的学习、娱乐和心灵交流。在即将到来的2月,AIease元宇宙将迎来一批崭新的AI角色,它们将成为我们深入思想对话的陪伴者,涵盖历史文化、人文地理、财经管理、科学知识等诸多领域。

想象一下,与AIease角色愉快对话的场景,仿佛置身于一座文化的艺术殿堂。你可以与AIease角色畅谈历史的兴衰,深入探索每个文化的独特之处。从古代帝国的辉煌到现代都市的魅力,AIease角色将引领你穿越时空,领略世界各地的风土人情。无论是品味古老的传统文化还是领略当代的潮流艺术,AIease角色都将带给你无尽的思想碰撞和心灵启迪。

此外,AIease角色还会陪伴你探索人文地理的奥秘。畅游世界各地的壮丽山川,感受大自然的鬼斧神工;漫步古老街巷,聆听历史的低语。无论你是钟情于大自然的壮丽景色,还是追寻着历史的足迹,AIease角色将与你一同穿梭于时间与空间,为你呈现一个个独特的人文宝藏。

财经管理是现代社会的重要课题,AIease角色将成为你的智慧顾问。与AIease角色的对话将带给你财经管理的智慧之光,了解市场趋势,把握投资机会。无论是掌握理财技巧还是了解经济发展的脉搏,AIease角色将为你解读复杂的财经知识,助你在商海中航行如鱼。

科学知识是人类探索未知的桥梁,AIease角色将为你开启科学的大门。与AIease角色的对话将带给你前沿科技的新奇体验,让你深入了解科学的奥秘。从宇宙的星辰演化到微观世界的神秘粒子,AIease角色将与你一同探索科学的无限可能。

AIease角色数字人的推出将为人们打开一个全新的交流和探索世界的窗口。无论你是追寻知识的探险家,还是寻求灵感的艺术家,与AIease角色的对话将带给你无边的智慧和情感共鸣。AIease元宇宙即将在2月揭开神秘的面纱,让我们与AI角色进行深入思想对话,共享文化的盛宴。让AIease角色成为你生活中的知识伴侣,与你一同探索人类智慧的辉煌,激发内心深处的光芒。

AIease元宇宙AI数字人对话系列-对话世界CEO,把世界重要的人物通过脚本训练成为企业主的交流对象,甚至能为企业主出谋划策,人物涉及经济、金融、管理等。

AIease与内容出品方《道地物藏》,合作推出中华文化AI角色,把五千年历史名人经过AI技术与训练,成为文化AI角色,万物皆有灵,千年古道名胜地方、艺术风物等都经过艺术加工与AI脚本训练角色,让你通过AI,与中华传统文化进行一次深度的对话。

2023年大模型与生成式人工智能席卷全球,目前国内的AI技术与应用主要集中在营销、办公、客服、人力资源、基础作业等领域,并且这种技术所带来的赋能与价值已经初步得到验证。《企业AIGC商业落地应用研究报告》显示,33%企业在营销场景、31.9%的企业在在线客服领域、27.1%的企业在数字办公场景下、23.3%的企业在信息化与安全场景下迫切期望AIGC的加强和支持。

营销场景
营销场景是目前AIGC渗透最快,也是应用最成熟的场景。AIGC主要在营销动作中的内容生产、策略生成方面极大加强了数字营销的能力。
例如市场认知阶段的核心价值是创意参考,可赋能环节包括:广告策略、品牌传播、市场分析、CEM、SEO、DSP、SSP,通过生成广告创意与投放优化参考,包括广告设计、广告内容、投放渠道策略和投放分析,从而提高广告效果和投放效率。 

数字办公场景
数字办公场景也是目前AIGC渗透较快的场景之一,主要体现在对个体的办公效率提升。在文本内容生成、代码生成、流程设计和规范等方面表现出一定的提示和优化。
例如流程管理模块的核心价值是规范建议,可赋能环节包括:流程规范设计、流程路径设计、流程控制设计、流程优化,在一个新项目启动时,可以根据项目需求和历史经验自动生成流程规范建议,包括各阶段的任务分配、时间节点等。 

在线客服场景
在线客服是AIGC音频生成最近距离的场景之一,声音合成、语义理解在智能化策略下,生成具有明确目的性的对话内容。
例如全渠道接入模块的核心价值在于个性化模块,可赋能的环节:富文本沟通、自动主动对话、访客信息展现,生成个性化回复模板,更好地提供针对性服务,从而提升客户满意度。 

人力资源
AIGC对人力资源服务的加成,是目前在企业经营管理体系中进展较快的领域。使人力资源管理体系的效率大幅提升的同时,在一定程度上也改变了传统人力三支柱的传统管理模型。
例如招聘模块的核心价值在于简历推荐,可赋能的环节:筛选、面试筛选、笔试测评,以筛选简历阶段为例,可以分析各个候选人的简历,生成匹配结果报告,并根据公司需求智能推荐合适的候选人。大幅提高筛选准确性和效率,减少人力资源部门的工作负担。 

基础作业
AIGC在基础作业场景中的表现十分突出,在设计、电子签名、合同管理、法律服务等环节表现出很强的智能化以及可替代性。


最新AI前沿技术发展
2023年底AI Agent成为下一个AI前沿领域,也被普遍认为是人工智能走向AGI通用人工智能的必经之路,成为众多科技巨擎布局与发力的关键领域,比如领头羊企业OpenAI刚发布不久的GPTs Builder与Assistants API也彰显了其在这个领域的信心与野心。

尽管目前To C领域的GPTs已经百花齐放,但暂时也没有出现颠覆式的杀手级应用以体现其潜在价值。而在2B领域,在互联网时代已经完成数字化转型的众多企业,也正在面临着新一轮的技术变革,即为生成式AI做好准备:大模型将成为企业IT中的基础设施之一,并在一系列的业务场景中得以应用并发挥潜力;而具备自主的感知、规划与工具使用能力的AI智能体或许有着更强大的应用价值。

AI对于企业应用的价值体现在哪里,更具体的说其在企业的应用场景在哪里?由于各个行业自身的业务特征、应用环境千差万别,很难简单罗列所有的应用场景。
我们首先从价值体现、应用领域、使用对象三个不同角度去对AI Agent的企业应用场景做简单的分类
【价值体现】 毫无疑问,从AI在企业应用的价值体现上看,都应该是围绕降本提效、改善服务、优化体验这几个核心价值点。 
【应用范围】 这里从应用领域对AI Agent在企业的常见应用作简单的总结。由于各行各业有各自的领域特征,因此这里只是选择一些目前有代表性、有原型或者实施案例的场景用作介绍与参考。这些不同的AI Agent场景,由于以下几个方面的差异,会导致企业在落地该场景的AI项目时的成熟度与风险有区别:
 - 所依赖的模型能力不同。
比如: - 基于私有知识的问答需要依赖于向量模型、语义检索。 - 数据分析则需要依赖于大模型的代码生成、Text2SQL等能力。 - 与企业应用集成的Agent需要依赖于模型自身规划与使用API/工具的能力。 

- 对企业自身数据与应用的要求不同。
比如: - 基于私有知识的问答应用很大程度上要依赖企业自身知识管理的完备性。 - 自动化业务流程的Agent则要求企业应用有完备的API接口体系。 - 办公助理Agent需要企业的协同办公平台具有开放的接口或插件支持。 

- 场景的业务流程复杂度不同。
比如: - 简单知识问答形态的Agent几乎不涉及很复杂的业务流程。 - 一次销售/服务Agent的流程中则可能需要和CRM等应用作多次交互。 - 市场研究与分析的Agent则可能需要借助外部平台来获取最新数据。 

- 工程化要求(性能、准确性等)不同。
比如: - 在辅助创作与生成的场景中对大模型输出的容忍度相对更高。 - 在数据分析场景中则要求模型输出结果具有最高的准确性。 - 在应用集成时则要求模型能准确推理工具使用需求并提取输入参数。 基于这些差异性,我们对企业常见的Agent场景做总结,并简单区分其实施成熟度用作参考: 

【使用对象】与AI在企业中产生直接交互的对象可以分成三类: 
一类是直接面向企业的外部客户等服务对象。这类场景下,使用者通过自然语言与AI对话完成任务给出响应。比如在线智能客服、在线咨询等。 
一类是直接面向公司内部使用者,包括企业主、普通员工、管理人员等。同样,使用者通过自然语言UI与AI协作交互并完成任务。比如内部办公助手、交互式数据分析等。 
一类是AI能力嵌入与集成到其他应用之中。在这类场景中,Agent不直接与“人”产生交互,而是由其他企业应用来触发,并借助Prompt完成自动化任务。


AI Agent在企业应用的整体架构
企业中AI Agent的落地通常不是一个独立的简单工具项目(这是与To C的AI的最大区别)。因此,也给现有企业IT的基础设施与架构带来了新的挑战:
- 可能需要部署与连接多种不同规模、能力的AI基础模型
- 必须与企业当前的数据与应用做标准化的、可扩展的集成
- 为了拓展Agent能力,可能需要借助开放API扩展其工具库
- 需要引入新的基础设施,比如向量库用以实现语义检索
- 面临新的大模型设施的运维管理需求

在这个总体架构中的引入的新的关键要素包括:

1. 大模型
包括大语言模型、嵌入模型以及逐渐发展的多模态模型,这些基础模型作为企业的AI基础设施与能力而存在。具体可以分为商业闭源大模型(比如ChatGPT,Gemini,通过API访问)、开源大模型(可以借助Model-hub平台进行部署与API访问,比如Llama)、私有大模型(借助开源模型做微调并私有化部署,首次投入成本较高)。
由于不同Agent对模型能力要求的差异,单个模型很可能无法满足更多场景使用要求,构建一个统一的大模型访问API层,实现多模型统一访问并可灵活切换是有必要的。

2. 数据管理
区分于企业现有应用的生产数据,Agent的独立数据区用于存取Agent管理与运行过程中的各种中间与持久数据,包括结构化与非结构化知识文档、向量数据库、分析数据、消息历史、日志数据等,并提供必需的数据维护与管理工具,如私有知识数据的清洗、向量化、导入导出等。

3. 大模型运维管理
具体来说应该包括LLM以及构建在LLM之上的各类Agent的运维管理,这包括了在应用生命周期不同阶段的管理工作。包括:
- 配置:比如LLM输入的Prompt提示词、外部工具配置、Agent工作流配置、环境配置等。
- 测试:大模型与Agent应用的测试。模型连通性、向量搜索测试、Agent状态测试、Agent性能测试等。
- 评估:由于输出的不确定性,在大模型应用投入生产之前的评估非常重要,借助于一些框架可以对AI输出的准确性、相关性、合规性等做综合评估。
- 部署:对模型与Agent的构建、部署与升级流程做自动化管理的过程。
- 监控:对模型与Agent运行状态与结果进行跟踪监控。包括连通性、响应性能、数据安全性等。还有一个很重要的优化工作,即通过用户反馈搜集与分析来持续优化大模型或者提示工程。

4. Agent智能体
开发框架层:用于大模型应用开发的一系列开源的开发与编排框架、工具与平台。借助于这些工具,可以大大简化上游AI Agent构建的复杂度与工作量,并降低风险。常见的开发框架包括:LangChain、LLmaIndex、AutoGen、SuperAGI等。
AI Agent层:基于开发框架之上构建的真实投入应用的AI Agent。一方面,Agent通过API或代码解释器与内外部应用协作完成任务,另一方面,Agent本身通过API向前后端企业应用开放接口,以嵌入与集成到企业业务流程中,比如你可能需要集成一个AI Agent到企业微信来解答员工或者客户的问题。

我们AI在企业应用中的基础类型包括- 创作与生成类AI
- 企业知识类AI
- 数据分析AI
- 应用/工具AI
- Web操作AI
- 自定义流程AI

AI Agent是一个以任务驱动的具备自主能力的智能体,不仅需要大模型这个核心“大脑”,也需要任务规划、记忆与外部工具使用等能力。而我们常看到的个人AI助手大部分是基于预设提示词的大模型问答Bot,在不借助其他插件时,通常不具备工具使用能力。

当前在企业应用中以内容创作生成为主要能力的AI至少有两种:
1、单Agent的内容生成。简单地将大模型的生成能力通过API集成到其他应用与业务流程中,替代或简化原来由人工完成的部分工作。比如:
- 在线培训管理系统中,利用AI自动根据课件创建考题/考卷
- 在数字营销流程中,利用AI生成精确营销话术甚至撰写营销方案
- 市场分析的AI Agent基于互联网搜索或开放数据生成市场分析报告
- 电子商务企业借助AI自动批量生成商品摘要
- 媒体行业通过AI生成新闻摘要;学术平台借助AI生成论文摘要
这种类型的AI助手简单的借助Prompt工程即可实现(与C端个人助手并无本质区别):

2、基于多Agent协作(可能还有人类)的内容生成。典型的为虚拟机器人软件公司,由AI Agent担任多个软件开发岗位,通过相互协作完成某个软件开发任务。
这种多Agent协作型的助手可以借助Multi-Agents框架来简化开发与实现。比如MetaGPT,可以根据自然语言描述的开发任务,组建Agent团队(PM、架构师、程序员、QA等),遵循SOP并最终输出完整软件开发的成果(文档、代码、API说明等)。其他支持多Agent的开源框架包括微软的AutoGen,xAgents等。
企业知识类AI
当前较为成熟的一种Agent类型。通俗地说,就是在企业应用中,通过“外挂”私有知识库来扩充大模型的知识储备,以提供基于自然语言的、对话式的企业私有知识访问(对应到AI Agent的基本能力之一:持久化记忆),以解决通用大模型在面向企业应用时领域知识不足导致的幻觉问题。
知识助手通常借助于大模型的RAG(检索增强生成)方案来实现,其本质上也是一种提示工程:借助于在大模型输入时携带相关的私有知识上下文,让大模型理解、总结、整理并回答用户问题。只是这里的私有知识上下文需要借助嵌入模型(Embedding Model)、向量数据库(Vector Store)、文档加载分割(Document Loader&Splitter)等相关技术来获得。
基于RAG方案的AI助手实现可以自行通过代码直接实现,当然,为了简化开发与管理过程,推荐使用的工具包括:
- LangChain或者LlamaIndex大模型主流应用开发基础框架。这两个基础框架对大量的模型、文档加载器、向量数据库、嵌入模型等做了抽象封装,并对RAG应用过程中的知识检索、Prompt组装等过程做了简化,可以大大简化开发过程。
- 另一类是具备一定开箱即用能力的RAG应用构建平台。相对基础开发框架来说,提供了更完善的RAG应用构建工具,比如私有知识库的管理维护、测试、对话流程编排、提示词自定义等能力。这里推荐两个项目,一个是基于Langchain构建的Langcahin-Chatchat;另一个是FastGPT,后者有用于商业运营的SaaS应用,可以自行体验。

知识助手的技术实现基础架构如下:
数据分析AI
数据分析与商业智能(BI)在中大型企业的日常运营中的重要性毋庸置疑,无论是简单的财务数据分析,还是复杂的客户与运营数据洞察,都需要借助专业的工具。传统BI工具使用门槛高、过度依赖技术部门、结果产出周期长的问题在AI时代可以借助大模型的能力得以缓解。
基于大模型的数据分析助手(Data Agent)是在企业应用中通过将自然语言转换成数据分析的语言或代码,比如对API的调用、对数据库的访问、甚至编写数据分析代码,来达到获取数据、分析数据与可视化结果的目的。无论是对本地的Excel数据文件分析,或者对数据库中的关系型数据分析,又或者对互联网的非结构化数据分析,当前大模型实现数据分析的技术途径基本以这三种方式为主,自然语言转API、转SQL、以及代码解释器(转代码)。

应用/工具AI
企业应用中的AI助手很多时候需要与现有应用(CRM、OA系统)做集成与交互,以完成某个用户任务或者驱动业务流程。比如:如果你需要AI帮你在协同办公系统中提交一个付款申请,那么你需要调用办公系统的接口;或者你需要借助互联网获得最新某上市公司的财务报告,你需要调用第三方平台的公开接口。这就是AI Agent另一项重要能力:工具使用。
应用助手的基本原理是比较简单的,其复杂性主要体现在大模型对自然语言转API的能力,在实际使用中,其主要体现以下两个方面:
- 能否根据上下文理解,精确匹配到需要使用的API(一个或者多个)
- 能否准确地提取或生成每个API的调用参数
在实际测试中我们发现不同的大模型在这方面的能力是有较大的差异的,而且即使是最优秀的模型,也存在一定的不确定性,比如有时候无法判断出正确的工具。

Web AI
一种类似RPA(机器人流程自动化)的AI智能体。其主要能力是自动化Web网络浏览、操作与探索的动作与过程,以简化web浏览访问与操作。对于个人来说,可以作为个人数字助理,简单对话即可让AI帮你完成Web浏览与操作,比如在线订票。而对于企业来说,则可以作为企业的数字员工,来简化企业日常工作中重复性较高、流程与规则固定、大批量的前端操作性事务。比如批量订单处理、批量客户联络、批量网站抓取等,提高效率,降低错误率。
传统的RPA机器人也是用来完成此类工作的AI形式,由于这种AI机器人工作在软件的最上层即操作层面,好处是流程直观、简单、也可以配置化,且对应用无侵入性;但其缺点是与前端应用耦合性大,每个任务需要根据前端应用界面做精心配置与调试,自适应能力较差。
在大模型出现以后,给这一类RPA智能也带来了新的优化空间。利用大模型的理解与分析推理能力,可以让AI更加智能的规划与分解任务过程,然后借助浏览器完成执行;且在未来可以利用像GPT-4V这样的视觉模型,更智能的理解界面元素与功能,实现完全自主的智能操作,具备更强的自适应能力。当然由于大模型的输出不确定性,当前的Web Agent仍然处于探索实验阶段,具有较大的失败或误操作可能,实际应用中需要根据情况反复测试与评估。

自定义流程AI 
最后一种AI Agent严格来说是上面的几种基础Agent能力的组合。
理想中的AI Agent是在丢给他一个工具包与一些知识以后,借助于大模型的理解、推理能力,完全自主的规划与分解任务,设计任务步骤,并智能的使用各种工具,检索知识,输出内容,完成任务。但是在企业应用中,由于企业知识、应用、业务需求的千差万别,以及大模型自身的不确定性,如果这么做,那么结果很可能是“开盲盒”一样的不可控。所以这也是越来越多的Agents项目要强调可控性的原因,即能够对AI智能体的执行过程与细节进行更多的控制,来让AI按照人类确认过的工作流程来完成任务。

更多的企业AI应用交流请留意AIease.net。


去年11月,OpenAI在其召开的首届开发者大会上,发布了GPTs、GPT Store、Assistants API,拉开了行业构建商业生态的帷幕。随着AI 技术和产品架构越来越完善,以及底层大模型能力的不断进化,Agent as a Service作为提升生产力的新模式不再只是一个设想。
未来各个领域的人们都可以通过对话或其他形式,把自己的专业知识或者人物角色放到云服务上,通过数字人角色自实现更大的影响力。
AI为企业软件领域也带来了全新的颠覆性机遇,更大地激发了需求潜力。企业中许多分散的、以前只能由人工完成的流程,现在可以用机器来替代,这才是未来真正的机遇。
AI可以直接在岗位上替代人类,将直接削减雇佣一部分人类员工的预算和岗位,这也是与传统To B软件企业不同的逻辑。这意味着将出现很多不同的新机会,另外某种程度上也是对传统To B软件厂商的降维打击。
有哪些岗位的工作内容具有高度复用性和复制性,并通过AI将其中的核心知识进行数字化沉淀,最终实现人机融合。数字员工在特定任务上肯定比人类员工更可靠,成为主要替代力量。就像工业自动化替代了人类工作的一部分,软件又替代了另一部分白领工作,AI正推动第三阶段的流程自动化转型,替代更多人工重复性工作。当然并不意味着完全取代人类,而是实现与人类的有机协作。在工业时代,人们思考工业流水线哪些任务应该由机器替代;软件发展初期,所有人也曾思考软件应该替代人类工作流中的哪一部分,如今在大语言模型和AI Agent的时代亦是如此。

企业进行自动化改造主要都是为了“降本增效”,AI的核心价值应是帮助企业提高工作质量。企业内部的竞争优势通常都是由其最高级管理者的水平所决定。
AIease企业版的方向,把AI重点训练放在管理者上,企业主通过训练自己的AI BOSS,打造自己的AI团队,不仅提高管理效率,企业主可以复制,甚至增加响应各种任务的能力,成为万能的“超级AI-BOSS”。
AIease企业应用AI-BOSS版,正是专为企业主开发的AI数字人应用,一部手机轻松实现一个团队职能,是企业经营管理降本增效的利器。目的是让传统行业中小企业主通过AI数字人体验,与时俱进了解最新AI企业应用,让企业主分享AI数字人名片推广业务,让企业主轻松高质量完成部门专业工作,降本增效,同时企业主可开拓更多定制化AI,例如AI客服、AI品牌代言、产品AI化、AI内容推广等,利用AI新技术,快速提升企业产品力,品牌力,销售力。

AI-BOSS V1.0 主要功能:

AI数字人名片:企业主自定义角色资料、公司介绍;名片分享数字人自动聊天;可与实体名片自动连接;
AI boss工作模式:企业主角度进行AI训练的超级BOSS,可升级特定能量训练及公司资料库训练;
AI数字人微信: 企业主AI角色微信号;自动微信聊天,群聊聊天,可训练业务话术自动业务推广;
AI数字人员工: 企业主角度训练的细化岗位职能,可特定训练及接入公司资料库;
AI高级顾问:企业主掌握最新市场及扩大知识领域,市场、政策、金融、人力等专业领域知识库训练,可升级更多高级知识库。
AI元宇宙商城:企业主可获取商学院、文化、读书、娱乐等更多优质内容数字人 ;可定制品牌代言人等更多AI功能服务。
商企社群活动:企业主可加入VIP社群,参与平台合作商企社群活动。
AIease企业应用AI BOSS小程序与H5最新发布,并推出一系列的龙年新年推广活动。让我们了解一下。

AI易BOSS企业应用是做什么的?
专为企业主开发的AI数字人应用,一部手机轻松实现一个团队职能,是企业经营管理降本增效的利器。
AI平台的目的,是让传统行业中小企业主通过AI数字人体验,与时俱进了解最新AI企业应用,让企业主分享AI数字人名片推广业务,让企业主轻松高质量完成部门专业工作,降本增效,同时企业主可开拓更多定制化AI,例如AI客服、AI品牌代言、产品AI化、AI内容推广等,利用AI新技术,快速提升企业产品力,品牌力,销售力.


AI易BOSS跟其他平台有什么不同?
如果没有接触过AI的用户可先去AI大模型平台如GPT、清华、讯飞、文心等平台免费体验一下,觉得AI对自己有用再来我们平台体验。大模型平台需收集用户数据大多数算力免费,但AI须经定制训练才能发挥作用,用户自建AI机器人、AI助理均需相当的专业知识和操作经验,特定平台只可使用特定大模型,企业对接大模型需技术接入,接入成本高开发投入大。

AI易BOSS企业应用同时接入多个主流AI大模型,根据不同使用场景,测试最佳使用对应的大模型。
-根据企业主思维角度和使用情景进行数字人的特定训练,更适合企业主管理、战略决策需求,与市面上一般AI助理有本质区别。
-AI工作流模式可接入专业管理体系流程,为数字人提升项目实操能力。
-避免公开平台数据公用,注重企业的数据安全与企业主私密性。
-为企业主提供技术客服一对一协助完成数字人配置,简单易操作,紧跟AI最新前沿技术迭代版本免费自动升级。

AI易BOSS企业应用是专类平台,专对企业主需求、专门数据行业场景训练、专人服务无须学习、专用空间信息安全保障。
因此平台有一定的专业应用研发、算力和服务成本,须付费使用。
我们定制三个使用时间和功能不同套餐,方便不同的用户选择使用。
为了更好的了解行业需求,为不同使用者开发落地应用,欢迎加入我们的社群,AI发展飞快,以后就像手机一样成为普遍广泛的应用,AIease理念是让AI易用易操作。感谢用户的大力支持。
2023年被称为生成式人工智能的突破之年。生成式人工智能技术在各行业、各领域具有广泛的应用前景。生成式AI是利用复杂的算法、模型和规则,从大规模数据集中学习,以创造新的原创内容的人工智能技术。这项技术能够创造文本、图片、声音、视频和代码等多种类型的内容,全面超越了传统软件的数据处理和分析能力。这项技术从单一的语言生成逐步向多模态、具身化快速发展,视频和音频的生成技术也在迅速发展,这为虚拟现实和元宇宙的实现提供了新的途径。

2024年1月8日,AIease与中科院、宣传部、研学基地等领导单位进行AI技术科普教育研讨会,会上介绍了AIease元宇宙与实体融合解决方案,展示了AIease数字人在融媒科普平台的应用、AIease数字人互动大屏和智能设备,同时参与建设AI研学示范基地。
AIease实体融合元宇宙实验室,开发多款AI智能产品,包括科普互动展示与AI数字人系统、文旅景区AI导游系统、研学教育AI教学系统、展览活动AI互动展示等功能系统。
企业进驻AIease元宇宙商城,可让实体产品接入AI角色和数字营销商城,让文创、玩具等各行业产品成为AI智能化信息交互与流量入口,投入成本低,引流高效,智能推广,二次销售,留存用户。


品牌代言人智能大屏
-根据企业品牌形象定制训练开发;
-三维设计建模及UE引擎高清仿真AI角色数字人;
-多模态大模型训练实时渲染语音互动;
-最新一代CPU安卓机系统,快速响应互动;
-多款高清大屏智能设备配套。


客服导购数字人智能大屏
-实体门店安设互动屏幕增加与消费者的链接
-最新一代CPU安卓机高清大屏智能设备配套;
-UE引擎高清仿真AI多个客服人物免费使用;
-多模态大模型训练实时渲染语音互动。

2025年中国虚拟人核心市场规模有望增至480.6亿元

  iiMedia Research(艾媒咨询)数据显示,2022年中国虚拟人核心市场规模为120.8亿元,同比增长94.2%,预计2025年将达480.6亿元。在传统行业数字化转型及降本增效的需求推动下,中国AI数字人业务需求进一步释放,预计市场规模将持续增长。

  用户调研:中国AI数字人行业客户主要为中型及小微型企业,电子商务行业应用最多

  iiMedia Research(艾媒咨询)调研数据显示,95.6%的中国AI数字人行业客户企业为中型及小微型企业,产品需求量TOP5的行业分别是电子商务、卫生、社会保障和社会福利业、教育、金融和交通运输业。目前AI数字人行业客户对数字人主要产品类型需求是数字员工与定制化数字人,企业对产品需求愈加偏好个性化定制与高效率服务。未来随着相关技术的发展以及用户需求的增加,AI数字人行业涉及的领域将更加广泛。

  行业趋势:用户个性化需求推动行业智能化发展,各行业应用厂家不断拓展

  随着AI技术的不断成熟和应用场景的拓展,AI数字人能够更好地与用户进行沟通与连接,满足用户信息获取与情感交流的需求,帮助企业提升工作效率和用户体验。未来AI数字人将向着情感化、人性化的方向发展,为企业及个人提供更加贴近用户需求的服务。

  以下为报告内容节选:

  AI数字人定义及类型划分

  AI数字人是采用人工智能技术和仿真技术驱动生成的数字化虚拟人物,通常具备人的外观与智能认知能力;相较于传统的虚拟数字人,AI数字人的生成依靠大量的数据采集与处理,并通过大数据和深度学习等技术实现自主学习和调整。

  中国AI数字人行业发展历程

  中国AI数字人市场发展驱动力:政策支持

  从中国各省市区发布的相关政策来看,政策主要集中在元宇宙产业链构建和虚拟现实技术建设领域;其中,北京市出台的全国首个数字人产业专项支持政策指出,到2025年,北京市有望成为全国数字人产业创新高地。

  中国AI数字人市场发展驱动力:数字经济深入发展

  iiMedia Research(艾媒咨询)数据显示,2022年中国数字经济规模为50.2万亿元,预计2025年将突破70万亿元;中国数字经济发展取得了良好的成效,传统产业数字化转型不断加快,数字经济基础设施实现跨越式进步,为数字人行业带来发展契机。

  中国AI数字人市场发展驱动力:企业数字化转型需求

  在全球经济下行压力加大的形势下,数字经济逆势增长,发挥着极其重要的作用。iiMedia Research(艾媒咨询)数据显示,成本、市场、产能是企业进行数字化转型的核心驱动因素;企业迫切需要提升供应链管理、企业经营等能力。AI数字人作为数字化服务的一种新形态,能够为企业提供更高效、便捷和个性化的客户服务,助力企业降本增效、推动产业数智化发展。

  中国AI数字人市场发展驱动力:技术创新突破

  随着人工智能和机器学习等关键技术的不断进步,中国AI数字人相关企业持续进行技术创新研发,数字人产品相关技术能力不断提升,近年来行业专利数量逐年增长。iiMedia Research(艾媒咨询)数据显示,2022年中国AI数字人相关专利申请数量为6377项,同比增长4.7%,主要应用领域集中在特殊数据处理应用、数字数据信息检索、计算机辅助设计和生物学模型等。

  中国AI数字人行业图谱

  中国虚拟人行业核心市场规模及带动市场规模

  iiMedia Research(艾媒咨询)数据显示,2022年中国虚拟人核心市场规模为120.8亿元,同比增长94.2%,预计2025年将达480.6亿元;2022年虚拟人带动周边市场规模为1866.1亿元,预计2025年有望增至6402.7亿元。艾媒咨询分析师认为,在传统行业数字化转型及降本增效的需求推动下,中国AI数字人业务需求进一步释放,预计市场规模将持续增长。

  需求侧分析:AI数字人典型应用行业发展情况

  数据显示,2022年中国人工智能应用渗透率领先的行业分别为互联网、金融、政府、电信及制造业。相较2021年,互联网依然是AI应用渗透率最高的行业;其次,电信行业渗透率增长速度最快,同比增长13.3%,AI技术为电信行业的网络构建、优化及智慧网络建设提供强有力的技术支撑;金融行业的AI技术落地产品最为丰富,智能客服、实体机器人、智慧网点等产品都是金融行业的典型应用。

  需求侧分析:AI数字人的运营合作模式分析

  AI数字人的运营合作方式多样,包括技术授权合作、定制开发合作、平台集成合作、内容创作合作、产品推广合作、运维和服务合作。随着企业对AI数字人的应用场景需求不断增加,对产品效果要求越趋专业化,企业能够根据需求和资源对运营合作模式进行灵活组合和调整,达到提高企业内容制作的效率、降低企业运营成本的效果。

  供给侧分析:AI数字人服务行业企业发展情况

  iiMedia Research(艾媒咨询)数据显示,截至2023年9月,中国数字人服务行业存续企业数量为538家。其中,企业集中分布在华东、华南及华北地区。从企业规模来看,中国数字人相关企业注册资本集中分布在500万元以上,占比为64.5%,注册规模普遍较大,目前市场以中大型企业为主。

  供给侧分析:AI数字人技术服务行业盈利模式

  AI数字人服务提供方主要盈利模式有销售许可证或授权费用、SaaS平台服务费用、定制化开发、广告和推广收入等。以AI数字人定制化开发为例,随着人工智能技术的开发和制造技术的发展,生产AI数字人产品的成本逐渐降低,定制化开发服务愈发具有市场吸引力,越来越多的企业和消费者对数字人定制化产品表现出了浓厚的兴趣和需求。从价格方面来说,较简单的数字人定制费用相对较便宜;产品效果越真实、越细节、功能越多,费用则会更高。

  市场动态:AI数字人行业创新发展动态

  供给侧分析:中国AI数字人相关行业投融资情况

  iiMedia Research(艾媒咨询)数据显示,自2018年以来,AI数字人行业进入高速发展期,投融资数量及金额都实现高速增长,成为资本布局的热门赛道。2022年中国AI数字人投融资金额为43.14亿人民币,投融资数量为63起。未来企业的长期价值、增长空间及其是否能满足行业客户的技术应用需求和迭代需求将成为资本关注的重点。

  中国AI数字人行业客户画像分析

  iiMedia Research(艾媒咨询)数据显示,2023年中国AI数字人行业的客户主要是华东、华南地区的中型及小微型企业,产品需求量TOP5的行业分别是电子商务及卫生、社会保障和社会福利业、教育、金融和交通运输业。互联网行业作为人工智能应用渗透率最高的行业,数字人产品在该行业已得到大量应用,尤其在电子商务行业中,虚拟主播低成本、高效率的特性,能够为商家创造更大的生意增量。未来,随着相关技术的发展以及用户需求的增加,AI数字人行业涉及的领域将更加广泛。

  中国AI数字人行业客户应用情况

  iiMedia Research(艾媒咨询)数据显示,2023年中国企业使用AI数字人首要目的是提升工作效率、质量,占比为57.6%,其次是提升企业数字化程度(47.6%)和提升企业形象(40.9%)。随着人工智能技术在各行业的广泛应用,AI数字人为企业提供了更高效、便捷和个性化服务,企业借助数字员工、虚拟人IP等数字人产品达到降本增效、推动企业数字化转型的效果。

  中国AI数字人行业客户价格接受度

  iiMedia Research(艾媒咨询)数据显示,超五成企业能接受的定制化AI数字人的产品价格在11-20万元之间。目前企业对数字人主要产品类型需求是数字员工与定制化数字人,在市场竞争的加剧与企业数字化转型的背景下,企业对数字人产品的功能需求越趋多元化与智能化,越来越多的企业倾向于个性化定制数字人产品,且对AI数字人的价格接受程度较高。

  中国AI数字人行业客户产品关注维度

  iiMedia Research(艾媒咨询)数据显示,2023年中国AI数字人行业客户选择产品的关注维度TOP3分别为产品个性化定制能力、企业技术研发能力及该品牌过往用户满意度。随着各行业数字化转型已进入到数智化阶段,为了让企业内外部经营更高效、准确,AI数字人行业客户对产品需求愈加偏好个性化定制与高效率服务。其次,企业技术研发能力直接关系到企业用户的产品体验及对品牌的信任度。

  AI数字人行业海外企业研究:Soul Machines(一)

  Soul Machines成立于2016年6月,是新西兰一家专注于虚拟数字人研发和服务的解决方案服务商。企业通过AI和计算机视觉,开发具有智能和情感反应的头像模拟技术,使AI交互更加直观和自然。

  AI数字人行业典型企业研究:Soul Machines(二)

  数据显示,Soul Machines自成立以来,持续受到资本市场的青睐。2022年2月,Soul Machines完成新一轮融资,融资金额为7000万美元。本轮融资由软银愿景基金领投,Temasek、Salesforce Ventures等投资机构跟投。这笔资金将用于推动企业对“数字大脑”等相关技术的深度研究,助力数字人市场快速增长,为元宇宙等虚拟平台提供交互方式。

  AI数字人行业典型企业研究:华院计算(一)

  AI数字人行业典型企业研究:华院计算(二)

  华院计算通过技术创新,实现了从计算智能到认知智能的产业升级,产品迭代也从“数字人”升级到“数智人”。相较于传统的数字人产品,华院数智人在以下两个方面实现了升级:一是领域大模型与数智人结合,对话更智慧;二是文案、语音、表情和肢体动作的多模态情感生成,表达更灵动。华院数智人在金融、教育、医疗、电信、零售等不同行业多场景应用落地。

  AI数字人行业典型企业研究:元境科技(一)

  AI数字人行业典型企业研究:元境科技(二)

  2023年4月,元境科技在MetaSurfing-元享智能云平台产品发布会上提出了AIGC+X的产品体系模式,产品在元享平台的基础上以AIGC技术为核心,降低虚拟数字人创作门槛,提高数字人创作效率。元享SaaS智能云平台与元趣AI作为元境科技的主要数字人产品,突破了现有传统虚拟数字人生产制作流程,实现了超高精度渲染技术及生成效果,为客户提供低成本数字助手。

  AI数字人行业典型企业研究:元境科技(三)

  元境科技基于元享SaaS智能云平台推出了元享数字魔盒,产品通过多模态虚拟人、智能交互平台与多样化互动终端,为实体零售行业数字化转型提供多场景应用解决方案。在2023年中国国际服务贸易交易会上,元境科技通过元享数字魔盒展示了新一代全息3D AI虚拟数字人“江凌枫 ”,产品实现了高精度实时交互,同时具有实时肌肉系统、高精度多情感表情模拟系统、生成式动作及微调技术。

  2023年中国AI数字人产业研究及发展趋势分析简要概括(详细趋势分析请查阅完整版报告)