本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon Bedrock 工具调用工具(函数调用)
您可以使用 Amazon Bedrock API 向模型授予访问工具的权限,这些工具可以帮助它针对您发送给模型的消息生成响应。例如,你可能有一个聊天应用程序,它允许用户找出广播电台播放的最受欢迎的歌曲。要回答最受欢迎的歌曲的请求,模特需要一个可以查询和返回歌曲信息的工具。
注意
在模型中使用工具也称为函数调用。
在 Amazon Bedrock 中,模型不会直接调用该工具。相反,当你向模型发送消息时,你还会提供一个或多个可能帮助模型生成响应的工具的定义。在此示例中,您将提供一个工具的定义,该工具返回指定广播电台最受欢迎的歌曲。如果模型确定需要该工具来生成消息的响应,则模型会请求您调用该工具。它还包括要传递给工具的输入参数(所需的广播电台)。
在您的代码中,您可以代表模型调用该工具。在此场景中,假设工具实现是API。该工具可以很容易地成为数据库、Lambda 函数或其他软件。您可以决定如何实现该工具。然后,您可以通过提供一条包含该工具结果的消息来继续与模型进行对话。最后,模型会为原始消息生成响应,其中包括您发送给模型的工具结果。
要在模型中使用工具,您可以使用匡威API(Conver se 或 ConverseStream)。本主题中的示例代码使用 Converse API 来演示如何使用为广播电台获取最受欢迎的歌曲的工具。有关调用 Converse 的一般信息API,请参阅使用匡威 API。
可以将工具与基本推理运算(InvokeModel或 InvokeModelWithResponseStream)一起使用。要查找您在请求正文中传递的推理参数,请参阅要使用的模型的推理参数。我们建议使用 Converse,API因为它提供了一致的API,适用于所有支持使用工具的 Amazon Bedrock 型号。
有关支持工具调用的模型的信息,请参阅支持的型号和型号功能。