大型语言模型 (LLM) 传统上受限于其训练时所使用的数据,而这一过程可能即耗时又计算密集。
即使领先的 LLM 已经通过广泛的数据集进行了训练,但是对实时数据、外部计算和增强交互性的需求也导致了对工具调用功能的集成。
早期的 LLM,包括 OpenAI 的 GPT-2,都是静态的。他们根据训练数据生成响应,而无法获取新信息。
尽管它们表现强大,但缺乏对现实世界的认知,并且在处理需要实时数据(如当前事件、股票价格或用户特定操作)的动态查询时表现不佳。
为了解决这一限制,开发人员开始集成外部插件、API 和数据库,让模型能够请求和处理实时信息,而不是仅仅依赖静态训练数据。
开发人员对 LLM 进行了训练,使其能够识别查询何时需要外部协助。此外,外部系统通常具有特定的输入模式。工具调用请求模型响应,其与外部系统使用的特定模式相匹配。
工具调用涉及几个关键组件,它们协同工作以促进 AI 与外部工具的交互。现代 LLM 包括 Anthropic 的 Claude、Meta 的 Llama 3、Mistral 和 IBM© Granite 都具备工具调用功能,但处理方式略有不同。
第一个组件是 AI 模型本身,它能够识别何时自身知识不足,或者何时需要调用外部函数来完成请求。
接下来,工具选择机制会确定处理特定任务所需的适当依赖项,无论是搜索引擎、数据库还是计算资源。
选定工具后,API 接口就会发挥作用,可使 AI 发送结构化查询并以机器可读的格式接收响应。
最后,响应处理系统有助于确保检索的数据格式正确并以有意义的方式呈现给用户。
假设一位用户问 LLM “旧金山现在的天气如何?” 该 AI 会利用自然语言理解技术,识别出需要获取实时天气数据,而这类数据无法从其静态知识库中直接获取。
当模型提出使用工具的请求时,系统会自动为该请求分配一个唯一的工具调用 ID,这个 ID 就像一个追踪编号,用于将请求与其对应的结果关联起来。
AI 确定适合任务的最佳工具,在本例中是检查当前的天气数据库。这一步骤有助于确保检索的信息准确且相关。
每个工具都包含元数据和结构化信息,例如唯一的工具名称(或函数名称),这有助于模型和系统正确识别该工具。其他元数据还包括工具描述、工具参数以及所需的输入和输出的类型。
在确定必须从一系列可用工具中获取数据后,模型会进行工具选择。
模板是结构化的提示格式,它告诉模型应该使用哪个工具以及提供哪些参数(或称为“args”),从而实现对 API 的更受控和结构化的交互。
在工具调用的上下文中,args 是指生成式模型启动时传递给工具或函数的结构化输入。这些参数定义了工具正确执行所需的参数。
将工具调用与 检索增强生成 (RAG) 技术相结合,可以让系统在生成结构化输出之前,同时检索结构化和非结构化数据,从而增强 AI 的能力。
这种方法通过在生成响应之前获取最相关的数据,增强了上下文相关性,从而得出更有根据且更准确的输出。
它还通过将多个检索整合到一个步骤中来最大限度地减少 API 开销,从而降低延迟和成本。与传统的工具调用相比,RAG 更为灵活,允许模型从不同来源获取数据,使其在不同领域具有高度适应性。
与传统工具使用的僵化结构不同,RAG 能够更加流畅地集成检索的知识与推理和生成,从而做出更具活力、更有洞察力的响应。
然后,AI 会制定工具或 API 可以理解的结构化请求。
每个工具都与特定的工具功能相关联,这些功能定义了工具的用途。这些功能依赖于 API 参考,后者提供有关如何与工具的 API 进行交互的文档,包括端点 URL、请求方法和响应格式。
要访问外部 API,许多服务需要 API 密钥,这是授予发出请求权限的唯一标识符。选择工具并设置参数后,将进行 API 调用以获取所请求的数据。此请求通常通过 HTTP 发送到外部服务器。
外部工具会返回数据。然后,AI 必须解析工具结果。对于天气请求,API 可能会使用包含温度、湿度和风速的 JSON 模式对象进行响应。AI 会对这些数据进行过滤和结构化,从而为用户总结有意义的响应。
AI 以直观的方式呈现处理后的信息。如果请求涉及自动化操作,例如设置提醒,则 AI 将确认该操作已成功安排。
如果用户需要更多细节或提出修改要求,AI 可以通过调整后的查询重新执行流程,确保根据用户需求持续优化响应内容。
LangChain 常被用于工具调用,它提供了一个开源框架,用于将外部工具、API 和函数与 LLM 进行集成。它有助于管理工具的执行、输入或输出的处理,以及上下文感知决策。
例如,LangChain 使用解析器处理用户查询的函数参数,提取相关参数并为工具正确设置它们的格式。与简单的工具调用不同,LangChain 可以存储和调用以前的工具输出,从而实现更好的多轮交互。
LangChain 允许按顺序组合多个工具,从而实现更复杂的智能体工作流。例如,它可以先从天气 API 检索数据,然后使用单独的工具根据预测推荐服装。
工具调用支持 LLM 完成各种任务。使用工具调用的 AI 应用程序有无限的用例,但以下是 5 个常见类别和一些真实世界的用例。
AI 可从网络、新闻源、学术数据库或金融市场等渠道抓取实时数据。例如,AI 聊天模型可以调用搜索 API 来提供最新的股票价格或 AI 领域的研究论文,并通过聊天机器人向用户传递这些信息。
这使得 AI 能够使用 Wolfram Alpha 或Python 执行环境等数学引擎执行复杂计算或运行脚本。这对于求解方程、运行模拟或执行小代码片段非常有用。
通过与 Google Calendar 和 Zapier 等平台整合,AI 可以自动执行工作流,例如安排会议、发送电子邮件或管理待办事项列表。 AI 智能体可以与 CRM、财务和分析工具(如 Salesforce 和 QuickBooks)交互, 助力企业实现客户数据检索、财务报告生成等流程的自动化。
智能体式 AI 系统可以监控和控制自动化系统、工业物联网 (IoT) 设备和机器人。我们不难想象,有一天整个工作流都将由自主智能体来处理。
构建、部署和管理强大的 AI 助手和智能体,运用生成式 AI 实现工作流和流程自动化。
借助值得信赖的 AI 解决方案,您可以勾勒未来业务发展蓝图。
IBM Consulting AI 服务有助于重塑企业利用 AI 实现转型的方式。