从架构角度来看,构建基于 LLM 的应用程序需要哪些组件?让我们建立一个包含四层的结构:数据层、服务层、逻辑层和应用程序层。
首先,您拥有公司和外部数据,既有结构化数据,也有非结构化数据。这些当然是传统元素,也是您需要构建到应用程序中以使其适合您的特定业务的内容。众所周知,非结构化数据现在比以往任何时候都发挥着更大的作用。
但在数据层之下是 LLM 本身。我们为什么要把它们放在数据层呢?在这里,我们实际上是在谈论模型本身。如果你熟悉这些模型,你会听到人们谈论数十亿个参数,这些参数控制着许多、许多层微计算的内部运作。但这些参数只是一堆数字,对吧?如果你采用一个大型新模型,比如 Meta 的 LLAMA 模型的最新版本 LLAMA 3,如果你选择自行托管它,我们谈论的是存储该模型的 TB 级数据。理论上,如果你构建或微调了自己的专有 LLM,你也会将其存储在这一层中。
所以在这里,本质上,我们将 LLM(大型语言模型)视为数据。
LLM Mesh 数据层中的 LLM
使用这些 LLM 需要将它们托管在服务中,因此我们进入服务层。您可以自行托 菲律宾电话号码数据 管模型以供私人使用,在这种情况下,您有责任自行设置、管理和维护该服务的质量,或者您可以使用来自 OpenAI、Anthropic、Mistral 或主要云之一等提供商的大量现成托管 AI 服务。同样在服务层,您有检索服务。
它们使用一些与信息检索相同的 LLM 技术。对于熟悉检索增强生成 (RAG) 方法的人来说,这些检索器与该方法高度相关,尽管类别实际上不止于此。然后,您将获得传统服务、数据查询服务(如 SQL 数据库)以及任意数量的其他任意 API 服务。
最后这两项服务在 LLM 工作流中被用作“工具”,因为它们将被 LLM 系统用于完成某些任务。也许您的应用需要实时动态检查天气、交通或股票市场以做出决策。或者,它可能需要查找有关客户帐户的详细信息,然后才能知道下一步的最佳建议。如何将工具用于特定用例包含在逻辑层中,因为它定义了应用程序可能和必要的操作。
提示也属于逻辑层。如果您不熟悉提示,它们本质上是您发送给 LLM 的说明和上下文,用于定义您希望它做什么以及如何做。提示不仅需要新的工作职能,还需要公司内部一种全新的资产管理类型。您将测试和开发新的提示,将它们模板化以供重复使用,并且您需要随着时间的推移管理和维护它们。
然后,一切都在代理中汇集在一起。这是企业 IT 领域中的一个新对象,但却非常重要。它是设计 AI 驱动应用程序的业务或推理逻辑(所需行为)的地方。
最后,整个系统通过应用程序向最终用户展示,其中包括其用户界面、报告功能等。总而言之,这些是 LLM 驱动的应用程序所需的不同组件。从绿色/蓝色编码可以看出,它与传统应用程序有一些共同的元素,但也有很多新元素。