大模型应用的 10 种架构模式

在塑造新领域的过程中,我们往往依赖于一些经过实践验证的策略、方法和模式。这种观念对于软件工程领域的专业人士来说,已经司空见惯,设计模式已成为程序员们的重要技能。然而,当我们转向大模型应用和人工智能领域,情况可能会有所不同。面对新兴技术,例如生成式 AI,我们尚缺乏成熟的设计模式来支撑这些解决方案。

作为一位老码农,我在这里整理总结了一些针对大模型应用的设计方法和架构模式,试图应对和解决大模型应用实现中的一些挑战,如成本问题、延迟问题以及生成的不准确性等。

\1. 路由分发模式

当用户输入一个查询时,该查询会被发送到控制中心,而控制中心则扮演着对输入进行分类的角色。

在这里插入图片描述

如果查询是可以识别的,那么它会被路由到小语言模型进行处理,这通常是一个更准确、响应更快且成本更低的操作。然而,如果查询无法被识别,那么它将由大型语言模型来处理。尽管大型语言模型的运行成本较高,但它能够成功返回更多种类型查询的答案。通过这种方式,人工智能产品可以在成本、性能和用户体验之间实现平衡。

\2. 大模型代理模式

想象一个生态系统,其中多个专门针对特定任务的生成式 AI 模型各自作为其领域内的专家,并行工作以处理查询。这种多路复用模式能够生成一系列不同的响应,然后将这些响应整合在一起,形成一个全面的答案。

在这里插入图片描述

这样的设置非常适合复杂的问题解决场景,在这种场景中,问题的不同方面需要不同的专业知识,就像一个由专家组成的小组,每个专家负责处理更大问题的一个方面。

更大的模型(如 GPT-4)负责理解上下文,并将其分解为特定的任务或信息请求,这些任务或信息请求被传递给更小的代理。这些代理可能是较小的语言模型,它们已经接受过特定任务的训练,或者是具有特定功能的通用模型,如 GPT、Llama、上下文提示和函数调用。

\3. 多任务微调模式

在这种架构模式中,我们对大型语言模型进行了微调,使其能够同时处理多个任务,而非仅仅针对单个任务。这是一种跨领域知识和技能迁移学习的方法,大大增强了模型的多功能性。

在这里插入图片描述

这种多任务学习方法对于那些需要应对各种复杂任务的平台来说尤其有用,例如虚拟助理或是人工智能驱动的研究工具。这极大地简化了面向复杂领域的训练和测试工作流程。

在训练大型语言模型(LLM)时,我们可以利用一些资源和软件包,如 DeepSpeed,以及 Hugging Face 的 Transformer 库。

\4. 面向微调的分层缓存策略模式

我们将缓存策略和相关服务引入到大模型应用架构中,可以成功地解决成本、数据冗余以及训练数据等组合问题。

在这里插入图片描述

通过储存这些初始结果,系统能够在后续查询中迅速提供答案,从而显著提高了效率。当我们累积了足够的数据后,微调层级将启动,利用早期交互的反馈,进一步完善一个更为专业化的模型。

专有大模型不仅简化了操作流程,也使人工智能专业知识更好地适应特定任务,使其在需要高度精确性和适应性的环境中,如客户服务或个性化内容创建,表现得更为高效。

对于刚入门的用户,可以选择使用预先构建的服务,如 GPTCache,或者使用常见的缓存数据库,如 Redis、Cassandra、Memcached 来运行自己的服务。在向混合服务中添加其他服务时,一定要记得监控并测量延迟情况。

\5. 混合规则模式

许多现行的商业系统和企业应用在一定程度上仍然依赖于基于规则的架构。通过将大模型与基于规则的逻辑结合,我们能够融合结构化的精确性,旨在创造出既富有创意又遵循规范的解决方案。

在这里插入图片描述

对于那些必须严格遵守标准或法规的行业或产品而言,这是一个非常有效的架构模式,它确保了人工智能在保持创新的同时,仍能遵守既定的理想参数。例如,这种架构可以应用于生成电话 IVR 系统或基于规则的传统(非 LLM)聊天机器人的意图和消息流。

\6. 知识图谱模式

将知识图谱与生成型人工智能模型结合,赋予了它们面向事实的超级能力,使得输出不仅具有上下文情境,而且更加符合事实。

在这里插入图片描述

对于要求内容真实性和准确性不容忽视的应用来说,这种方法至关重要,比如在教育内容创作、医疗咨询或任何误导可能带来严重后果的领域。

知识图谱及其本体能够将复杂主题或问题分解成结构化格式,为大型语言模型提供深层上下文基础。我们甚至可以借助语言模型,以 JSON 或 RDF 等格式创建本体。

可用于构建知识图谱的图数据库服务包括 ArangoDB、Amazon Neptune、Google Dgraph、Azure Cosmos DB 以及 Neo4j 等。此外,更广泛的数据集和服务也能用于访问更全面的知识图谱,包括开源的企业知识图谱 API、PyKEEN 数据集以及 Wikidata 等等。

\7. 智能体蜂巢模式

智能体蜂巢架构模式运用了大量 AI Agent,这些代理共同协作以解决一个问题,每个代理都从各自独特的视角出发进行贡献。

在这里插入图片描述

由此产生的综合结果展示了一种集体智慧的体现,其效果超越了任何一个单独的 AI 个体所能达到的成果。在需要大量创新解决方案的场景中,或者在处理复杂的数据集时,这种模式尤其有效。

例如,我们可以利用多个 AI Agent 来共同审查一篇研究论文,整合他们的所有数据和观点。对于处理能力要求较高的蜂巢系统,我们可以考虑部署消息队列服务,比如 Apache Kafka,以便更好地处理代理和服务间的消息传递。

\8. 智能体组合模式

该架构模式强调了灵活性,通过模块化的人工智能系统,能自我重新配置以优化任务性能。这就像一个多功能工具,可以根据需求选择和激活不同的功能模块,对于需要为各种客户需求或产品需求定制解决方案的企业来说,这是非常有效的。

在这里插入图片描述

我们可以通过使用各种自主代理框架和体系结构来开发每个 Agent 及其工具,例如 CrewAI、Langchain、LLamaIndex、Microsoft Autogen 和 superAGI 等。

通过组合不同的模块,例如一个 Agent 可以专注于预测,另一个处理预约查询,还有一个专注于生成消息,最后一个 Agent 来更新数据库。将来,随着专业 AI 公司提供的特定服务的增多,我们可以将一个模块替换为外部或第三方服务,以处理特定的任务或领域的问题。

\9. 记忆认知模式

这种架构为人工智能引入了类似于人类记忆的元素,允许模型回忆并基于过去的交互进行学习,从而产生更细腻的反应。

在这里插入图片描述

这对于正在进行的对话或学习场景非常有用,因为随着时间的推移,人工智能会形成更深的理解,就像一个专业的个人助理或者在线机器学习平台。随着时间推移,记忆认知模式能够将关键事件总结并储存到一个向量数据库中,进一步丰富 RAG 系统。

为了保持汇总计算量的合理性,我们可以通过使用更小的自然语言处理库来进行汇总和摘要。所使用的是向量数据库,并在提示阶段进行检索,以检查短期记忆,并通过最近邻搜索来定位关键的“事实”。有一个遵循这种模式的开源解决方案是 MemGPT。

\10. 双重安全模式

围绕大型语言模型(LLM)的核心安全性至少包含两个关键组件:一是用户组件,我们将其称为用户 Proxy 代理;二是防火墙,它为模型提供了保护层。

在这里插入图片描述

用户 proxy 代理在查询发出和返回的过程中对用户的 query 进行拦截。该代理负责清除个人身份信息(pII)和知识产权(IP)信息,记录查询的内容,并优化成本。

防火墙则保护模型及其所使用的基础设施。尽管我们对人们如何操纵模型以揭示其潜在的训练数据、潜在功能以及当今恶意行为知之甚少,但我们知道这些强大的模型是脆弱的。

在安全性相关的技术栈中,可能还存在其他安全层,但对于用户的查询路径来说,Proxy 代理和防火墙是最关键的。

没有结束

老码农认为,这些大模型应用的架构模式不仅仅是一种范式,很可能成为未来智能系统赖以成长的框架。随着我们们继续探索和创新,还会涌现出很多新的架构模式,而且这里的 10 个架构模式以及新涌现的架构模式可能成为人工智能服务的表现形态。

20 年前,当我第一次阅读《设计模式》一书的时候(参见《三本书影响一个人》一文),爱不释手,如今,老码农开始持续探讨并实践 AI 应用,本文中的这些架构模式是老码农自己命名的,不妥之处请大家斧正。我希望能够持续更新本系列,也希望对此有兴趣的朋友联系我, 共同研究探索,致力于大模型应用的架构模式。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

123?spm=1001.2014.3001.5501)这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

  • 26
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
现在常用的Web应用架构模式有以下几: 1. MVC(Model-View-Controller)模式:MVC是一常用的架构模式,将应用程序划分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据和业务逻辑,视图负责展示数据给用户,控制器负责接收用户的请求并调度模型和视图。 2. MVVM(Model-View-ViewModel)模式:MVVM是一前端架构模式,类似于MVC。它将应用程序分为三个主要组件:模型(Model)、视图(View)和视图模型(ViewModel)。视图模型负责处理数据和业务逻辑,将数据绑定到视图上,视图负责展示数据,模型则是数据的来源。 3. 微服务架构:微服务架构应用程序划分为一系列小型、独立的服务,每个服务都有自己的业务逻辑和数据库。这架构模式可以使应用程序更加灵活、可伸缩,并且易于维护和部署。 4. RESTful 架构:RESTful 是一基于 HTTP 协议的架构风格,它通过使用统一的接口和资源来实现分布式系统的通信。RESTful 架构具有简单、可扩展、易于缓存等特点,被广泛应用于Web服务的开发。 5. Serverless 架构:Serverless 架构是一无服务器计算模型,开发者无需关心服务器的配置和管理,只需编写函数并将其部署到云平台上。这样可以大大简化开发过程,并且根据实际使用情况按需付费。 这些架构模式各有特点,选择合适的架构模式取决于应用程序的需求和规模。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值