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