欢迎来到本周的最后一个视频。在这个视频中,我想与您分享LLM(大型语言模型)开始能够使用工具的情况,以及讨论一下前沿的“代理”主题,这是让LLM自己决定下一步采取什么行动的领域。让我们来看看。在早期的食物订单接收聊天机器人示例中,我们看到如果您说“给我送个汉堡”,机器人可能回复“好的,正在路上”。
为了让聊天机器人输入订单并将其发送给您,这是幕后实际发生的事情。LLM不能仅仅说“好的,正在路上”,因为它需要采取一些行动来真正将汉堡送到您手中。因此,LLM可能会输出这样的回应:“为用户9876订购汉堡,送到这个地址”,然后还说用户消息是“好的,正在路上”。经过微调的LLM能够生成这样的订单,这种情况下将触发一个软件应用程序,向餐厅订购系统发出请求,将汉堡送到该用户的地址。用户看到的不是完整的LLM输出。这里的完整LLM输出是全部四行文本,但只有最后一行“好的,正在路上”被发送给用户作为回应。所以,这是LLM使用的工具的一个例子,其中LLM输出的文本可以触发调用软件系统来下达餐厅订单。
现在,下达错误订单可能是一个代价高昂的错误。因此,可能更好的用户界面是,在最终确定订单之前弹出一个验证对话框,让用户确认订单是否正确,然后在扣款并发送给他们之前再次确认。显然,鉴于LLM的输出并不完全可靠,对于任何安全关键或任务关键的操作,在让LLM自行触发可能造成代价高昂的错误之前,让用户确认所需操作是一个好主意。
除了用于采取行动的工具外,工具还可用于推理。例如,如果您提示LLM,“如果我将100美元存入银行账户,该账户支付5%的利息,那么8年后我将获得多少钱?”LLM可能会生成像这样的答案,听起来似乎是合理的,但147.74美元并不是正确的答案。事实证明,LLM在经过预测下一个词或指令调整的学习后,并不擅长精确计算。就像UI可能会使用计算器来计算类似问题的正确答案一样,我们也可以给LLM一个计算器工具来帮助它得到正确的答案。
因此,与其让LLM直接输出答案,不如让LLM输出这样的内容:“复利计算后等于,计算器计算100乘以1.05(即5%的利率)的8次方。”这可以解释为命令,调用外部计算器程序来明确计算正确的答案,即147.74美元,并将其反馈到文本中,以便为用户提供正确的金额。通过给LLM提供调用工具的能力,我们可以显著扩展LLM的推理或采取行动的能力。
工具的使用今天是许多LLM应用的重要部分,当然,这些应用的设计者应该小心确保工具不会以可能造成伤害或不可逆转的损害的方式被触发。
除了工具之外,进入更多实验性领域,AI研究人员一直在研究代理(agents),它们不仅仅触发工具来执行单一动作,而是探索是否可以选择并执行复杂的动作序列。关于代理的研究充满了兴奋和挑战,但这仍处于AI研究的前沿。它还不够成熟,不能用于大多数重要应用。但我想与您分享许多AI社区成员所兴奋的事情。如果您要求一个基于LLM构建的代理帮助您研究更好的汉堡店的主要竞争对手,那么代理可能会使用LLM作为推理引擎,来确定它需要执行哪些步骤来完成您的研究任务。
- 这个推理引擎LLM可能会决定需要搜索竞争对手的名单,
- 然后访问每个竞争对手的网站,
- 最后,针对每个竞争对手,根据主页内容撰写摘要。
然后,通过对这个推理引擎的一系列调用,它可能会发现为了搜索主要竞争对手,它必须触发工具来调用网络搜索引擎,并查询“BetterBurger的竞争对手”。之后,它可能会访问一些主要竞争对手的网站来下载他们的主页。然后再次调用LLM来总结他们在网站上找到的文本。
虽然互联网上已经有一些不错的代理演示,但这项技术还没有真正准备好进入主流应用。但也许在未来,随着研究人员使其变得更好,它将变得更有用。如果LLM作为推理引擎可以帮助决定采取哪些安全和负责任的步骤来帮助用户完成任务,我认为这将是一个令人兴奋的未来。
感谢您坚持观看至第二周的最后。我们的课程还有最后一周。下周,我们将探讨生成型AI如何影响公司,包括您如何为您的业务提出生成型AI用例,以及探讨生成型AI如何影响社会及其对就业的影响。期待下周与您相见。
参考
https://www.coursera.org/learn/generative-ai-for-everyone/lecture/pOwXb/tool-use-and-agents-optional