本文深入探讨了一个人工智能框架的高层次架构,对其内部各组件及其在整体系统中的功能进行了剖析。这一AI框架旨在让传统软件与大型语言模型(LLMs)的结合变得更为简便。
(资料图)
其核心目的是为开发者提供一套工具,帮助他们能够将人工智能顺利地融合到已经在公司中使用的软件里。这种创新策略为我们创造了一个能同时运行众多AI应用和智能代理的软件平台,进而实现更为高端、复杂的解决方案。
1、AI框架的应用示例为更深入地理解这一框架的能力,以下列举了一些能够利用这个框架开发出来的应用实例:
AI销售助手:这是一个能够自动搜索潜在客户,分析其商业需求,并为销售团队起草提案的工具。这样的AI助手会寻找与目标客户建立联系、打开销售第一步的有效途径。AI房产调研助手:这个工具可以持续监测房地产市场的新房源,根据指定的标准筛选符合条件的房源。除此之外,它还可以设计沟通策略,收集关于某一房源的更多信息,并在购房的各个环节中为用户提供帮助。AI 知乎 讨论摘要应用程序这款智能应用应能够分析知乎上的讨论,提取结论、任务以及需要采取的下一步行动。2、AI框架模块AI框架应为开发者提供一套不同的模块,包括合同定义、接口以及通用抽象的实现。
这一解决方案应是一个稳健的基础,您可以在其基础上构建自己的解决方案,使用经过验证的模式,增加您自己的单个模块的实现,或使用社区准备的模块。
提示和链式模块负责构建提示,即为语言模型编写的程序,以及调用这些提示的链,它们会按顺序一个接一个地执行。该模块应使实施语言模型(LM)和大型语言模型(LLM)中使用的各种技术成为可能。它还应能够将提示与模型结合,并创建提供跨多个LLM模型的单一功能的提示组。模型模块负责处理和连接 LLM 模型到软件,使其对系统的其他部分可用。通信模块负责处理并增加与用户的新通信渠道,无论是以其中一个消息传递程序中进行的聊天的形式,还是以供与其他系统集成的 API 和 webhook(网络钩子) 的形式。工具模块负责提供功能,以添加由AI应用程序使用的工具,例如从链接中读取网站的内容、读取PDF文件、在线搜索信息或发送电子邮件的能力。内存模块应负责内存管理,并允许为AI应用程序添加额外的内存功能实现,存储当前状态、数据和当前正在执行的任务。知识库模块该模块应负责管理访问权限,并允许添加新的组织知识来源,例如关于流程、文档、指导、以及组织中电子捕获的所有信息。路由模块该模块应负责将来自通信模块的外部信息路由到合适的AI应用程序。它的角色是确定用户的意图并启动正确的应用程序。如果该应用程序之前已经启动并且尚未完成操作,它应恢复并从通信模块传递数据。AI应用模块该模块应允许添加专门的AI应用,这些应用集中于执行特定任务,例如自动化或部分自动化流程。一个示例解决方案可能是Slack或Teams聊天摘要应用程序。这样的应用可能包括一个或多个链接在一起的提示,使用工具、内存,并利用知识库中的信息。AI代理模块该模块应包含更高级的应用版本,这些应用能够与LLM模型自主对话,自动或半自动地执行分配的任务。问责与透明度模块问责与透明度模块记录用户与AI系统之间的所有交互。它跟踪查询、响应、时间戳和作者身份,以区分由人类生成和AI生成的内容。这些日志为AI采取的自主行动以及模型和软件之间的消息提供了可见性。用户模块除基本的用户管理功能外,该模块还应维护跨来自不同模块的集成系统的用户帐户映射。权限模块该模块应存储用户权限信息并控制用户访问资源,确保他们只能访问适当的资源和应用程序。3、AI框架组件架构为了更好地展示AI框架架构中不同模块之间的互动方式,以下是一个组件图的概述:
该图展示了框架关键组件之间的关系:
提示和链式模块:为AI模型构建提示,并通过链式调用串联多个提示,以实现更复杂的逻辑。内存模块:通过内存抽象进行内存管理。知识库模块则提供对知识来源的访问。工具模块:提供AI应用和代理可使用的工具。路由模块:将查询定向到适当的AI应用程序。应用程序则在AI应用模块中管理。通信模块:处理像聊天这样的通信渠道。这种组件架构展示了不同模块如何协同工作,使得构建复杂的AI解决方案成为可能。模块化的设计允许通过添加新组件来轻松扩展功能。
4、模块动态示例为了阐述AI框架模块之间的协作,我们来分析系统中一个典型的信息处理路径:
用户通过通讯模块使用聊天功能发送一个查询。路由模块分析内容,并从应用模块中确定合适的AI应用。该应用从存储模块中取得必要的数据以恢复对话上下文。接着,它使用命令模块构建合适的命令,并将它们传递给来自模型模块的AI模型。如有需要,它会执行工具模块中的工具,例如在线搜索信息。最后,它通过通讯模块向用户返回回应。重要的信息会被存储在存储模块中,以继续对话。多亏了这种运作方式,框架模块应该能与彼此协作,使AI应用和代理实现复杂场景。
5、总结AI框架应该为构建现代基于AI的系统提供全面的工具。其灵活、模块化的架构应该允许轻松扩展功能并与组织现有的软件集成。多亏了AI框架,程序员应该能够迅速地设计和实施使用语言模型的各种创新解决方案。拥有现成的模块,他们应该能够专注于业务逻辑和应用功能。这使得AI框架有可能显著加速许多组织的数字化转型。