LLMs与外部应用程序交互 Interacting with external applications

本文主要是介绍LLMs与外部应用程序交互 Interacting with external applications,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在上一节中,您看到了LLM如何与外部数据集进行交互。现在让我们看看它们如何与外部应用程序进行交互。为了激发需要这种LLM增强的问题和用例的类型,您将重新审视之前在课程中看到的客户服务机器人示例。在这次浏览中,您将查看需要的集成,以允许应用程序从头到尾处理客户的退货请求。在这次与ShopBot的客户互动中,您将查看让应用程序能够处理退货请求所需的集成。在这个对话中,客户表示他们想要退回一些购买的牛仔裤。ShopBot回应并要求提供订单号,客户随后提供了订单号。
在这里插入图片描述

然后,ShopBot在交易数据库中查找订单号。它可以通过使用您在先前视频中看到的一种rag实现来执行此操作。在这种情况下,您可能会通过向后端订单数据库发送SQL查询而不是从文档语料库中检索数据来检索数据。一旦ShopBot检索到客户的订单,
在这里插入图片描述

下一步是确认将要退还的物品。机器人询问客户是否要退还除牛仔裤以外的任何物品。在用户陈述了他们的答案后,机器人向公司的运输合作伙伴请求退货标签。
在这里插入图片描述

机器人使用运输公司的Python API发出请求标签。ShopBot将通过电子邮件向客户发送运输标签。它还要求他们确认其电子邮件地址。
在这里插入图片描述

客户回复他们的电子邮件地址,机器人将此信息包含在对运输公司的API调用中。完成API请求后,Bartlett通知客户标签已通过电子邮件发送,对话结束。
在这里插入图片描述

这个简短的示例仅说明了可能需要LLM具备的一组可能的交互,以驱动应用程序。

一般来说,将LLM连接到外部应用程序允许模型与更广泛的世界互动,扩展了它们在语言任务之外的效用。正如ShopBot示例所示,LLM可以用于触发操作,当给予它们与API互动的能力时。

LLM还可以连接到其他编程资源。例如,可以启用模型将精确的计算纳入其输出的Python解释器。
在这里插入图片描述

重要的是要注意,提示和完成是这些工作流程的核心。应用程序将响应用户请求而采取的操作将由LLM确定,LLM充当应用程序的推理引擎。
在这里插入图片描述

为了触发操作,LLM生成的完成必须包含某些重要信息。
在这里插入图片描述

首先,模型需要能够生成一组说明,以便应用程序知道要执行哪些操作。这些说明需要易于理解并与允许的操作相对应。例如,在ShopBot示例中,重要的步骤包括:检查订单ID、请求运输标签、验证用户电子邮件以及向用户发送标签。

其次,完成必须以更广泛的应用程序能够理解的方式进行格式化。这可以是特定的句子结构,也可以是在Python中编写脚本或生成SQL命令。例如,以下是一个SQL查询,用于确定数据库中是否存在订单。

最后,模型可能需要收集允许其验证操作的信息。例如,在ShopBot的对话中,应用程序需要验证客户用于下订单的电子邮件地址。需要用于验证的任何信息都必须从用户处获取并包含在完成中,以便传递给应用程序。

结构化提示对于所有这些任务都很重要,可以在生成的计划质量或所需输出格式规范的遵守方面产生重大差异。

Reference

https://www.coursera.org/learn/generative-ai-with-llms/lecture/Jd1yD/interacting-with-external-applications

这篇关于LLMs与外部应用程序交互 Interacting with external applications的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

spring-boot-starter-thymeleaf加载外部html文件方式

《spring-boot-starter-thymeleaf加载外部html文件方式》本文介绍了在SpringMVC中使用Thymeleaf模板引擎加载外部HTML文件的方法,以及在SpringBoo... 目录1.Thymeleaf介绍2.springboot使用thymeleaf2.1.引入spring

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

基于WinForm+Halcon实现图像缩放与交互功能

《基于WinForm+Halcon实现图像缩放与交互功能》本文主要讲述在WinForm中结合Halcon实现图像缩放、平移及实时显示灰度值等交互功能,包括初始化窗口的不同方式,以及通过特定事件添加相应... 目录前言初始化窗口添加图像缩放功能添加图像平移功能添加实时显示灰度值功能示例代码总结最后前言本文将

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

uniapp设置微信小程序的交互反馈

链接:uni.showToast(OBJECT) | uni-app官网 (dcloud.net.cn) 设置操作成功的弹窗: title是我们弹窗提示的文字 showToast是我们在加载的时候进入就会弹出的提示。 2.设置失败的提示窗口和标签 icon:'error'是设置我们失败的logo 设置的文字上限是7个文字,如果需要设置的提示文字过长就需要设置icon并给

Java Web应用程序的推荐目录结构

以前没有用过maven管理过项目的依赖,最后使用上了maven,发现通过不能方式建立出来的web应用程序目录结构基本都不一样,既然每次都要到网上搜索如何建立maven管理的Web应用程序,不如自己找百度谷歌一下。 找了半天 ,感觉比较好的maven管理的web应用程序目录结构是这个: ├── pom.xml└── src├── main│ ├── java│ │ └── myg

Kubernetes 之 kubelet 与 CRI、CNI 的交互过程

序言 当一个新的 Pod 被提交创建之后,Kubelet、CRI、CNI 这三个组件之间进行了哪些交互? Kubelet -> CRI -> CNI 如上图所示: Kubelet 从 kube-api-server 处监听到有新的 pod 被调度到了自己的节点且需要创建。Kubelet 创建 sandbox 并配置好 Pod 的环境,其中包括: Kubelet 通过 gRPC 调用 C

[论文笔记]QLoRA: Efficient Finetuning of Quantized LLMs

引言 今天带来LoRA的量化版论文笔记——QLoRA: Efficient Finetuning of Quantized LLMs 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 我们提出了QLoRA,一种高效的微调方法,它在减少内存使用的同时,能够在单个48GB GPU上对65B参数的模型进行微调,同时保持16位微调任务的完整性能。QLoRA通过一个冻结的4位量化预