LLM应用架构 LLM application architectures

2023-10-16 18:30

本文主要是介绍LLM应用架构 LLM application architectures,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在本课程的最后一部分,您将探讨构建基于LLM的应用程序的一些额外考虑因素。首先,让我们把迄今为止在本课程中所见的一切汇总起来,看看创建LLM驱动应用程序的基本组成部分。您需要几个关键组件来创建端到端的应用程序解决方案,从基础设施层开始。该层提供了计算、存储和网络,以提供LLMs,并托管应用程序组件。您可以利用您的本地基础设施,或者通过按需和按使用量计费的云服务提供此基础设施。
在这里插入图片描述

接下来,您将包括您希望在应用程序中使用的大型语言模型。这些可能包括基础模型,以及您根据特定任务进行了自定义的模型。这些模型部署在适合您推理需求的基础设施上。考虑到您是否需要与模型进行实时或准实时交互。
在这里插入图片描述

您还可能需要从外部来源检索信息,例如在检索增强生成部分讨论的那些。
在这里插入图片描述

您的应用程序将从大型语言模型返回完成内容给用户或消费应用程序。根据您的用例,您可能需要实现一种机制来捕获和存储输出。例如,您可以构建在会话期间存储用户完成内容以增加LLM的固定上下文窗口大小的容量。
在这里插入图片描述

您还可以从用户那里收集反馈,这可能对进一步的微调、调整或评估在应用程序成熟时很有用。
在这里插入图片描述

接下来,您可能需要使用大型语言模型的其他工具和框架,以帮助您轻松实施本课程中讨论的某些技术。例如,您可以使用Len Chains内置库来实施PowReact或思维链提示等技术。您还可以利用模型中心来集中管理和共享模型,以供应用程序使用。
在这里插入图片描述

在最后一层,通常会有某种用户界面,应用程序将通过该界面进行访问,例如网站或REST API。这一层还包括与应用程序交互所需的安全组件。
在这里插入图片描述

从高层次来看,这个架构堆栈代表了构建生成式AI应用程序的各种组成部分。无论是人类最终用户还是通过其API访问您的应用程序的其他系统,您的用户都将与整个堆栈进行交互。正如您所看到的,模型通常只是构建端到端生成式AI应用程序的一部分。
在这里插入图片描述

恭喜您完成了完整的生成式AI项目生命周期。希望您感到已经形成了一些关于在构建LLM应用程序时需要考虑的重要问题的直觉。

  1. 本周,您了解了如何通过使用一种名为“强化学习与人类反馈”的技术,或简称RLHF,微调模型,以使其与人类偏好(如帮助、无害和诚实)保持一致。
  2. 鉴于RLHF的流行,存在许多现有的RL奖励模型和人类对齐数据集,使您能够快速开始对模型进行对齐。在实践中,RLHF是一种非常有效的机制,可用于改善模型的对齐性,降低其响应的毒性,并让您更安全地将模型用于生产。
  3. 您还学会了通过压缩、量化或修剪模型来优化模型以用于推理的重要技术。这可以减小为在生产环境中提供LLMs所需的硬件资源的数量。
  4. 最后,您还探讨了通过结构化提示和与外部数据源和应用程序的连接来帮助模型在部署中表现更好的方法。

LLMs可以在应用程序中充当理性引擎的精彩角色,充分利用它们的智能来支持令人兴奋和实用的应用程序。像Lang Chain这样的框架正在使快速构建、部署和测试LLM驱动的应用程序成为可能,对于开发人员来说是一个非常令人兴奋的时刻。

在TEA的课程结尾,我们将探讨一些正在积极研究的领域,这些领域可能会在未来几个月和年份中塑造该领域的发展轨迹。

Reference

https://www.coursera.org/learn/generative-ai-with-llms/lecture/LLhcT/llm-application-architectures

这篇关于LLM应用架构 LLM application architectures的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/220355

相关文章

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象

Go信号处理如何优雅地关闭你的应用

《Go信号处理如何优雅地关闭你的应用》Go中的优雅关闭机制使得在应用程序接收到终止信号时,能够进行平滑的资源清理,通过使用context来管理goroutine的生命周期,结合signal... 目录1. 什么是信号处理?2. 如何优雅地关闭 Go 应用?3. 代码实现3.1 基本的信号捕获和优雅关闭3.2

正则表达式高级应用与性能优化记录

《正则表达式高级应用与性能优化记录》本文介绍了正则表达式的高级应用和性能优化技巧,包括文本拆分、合并、XML/HTML解析、数据分析、以及性能优化方法,通过这些技巧,可以更高效地利用正则表达式进行复杂... 目录第6章:正则表达式的高级应用6.1 模式匹配与文本处理6.1.1 文本拆分6.1.2 文本合并6

python中的与时间相关的模块应用场景分析

《python中的与时间相关的模块应用场景分析》本文介绍了Python中与时间相关的几个重要模块:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateu... 目录1. time 模块2. datetime 模块3. calendar 模块4. timeit

mybatis的整体架构

mybatis的整体架构分为三层: 1.基础支持层 该层包括:数据源模块、事务管理模块、缓存模块、Binding模块、反射模块、类型转换模块、日志模块、资源加载模块、解析器模块 2.核心处理层 该层包括:配置解析、参数映射、SQL解析、SQL执行、结果集映射、插件 3.接口层 该层包括:SqlSession 基础支持层 该层保护mybatis的基础模块,它们为核心处理层提供了良好的支撑。

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取