

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 Amazon L BedrockAgentIntent ex V2 中使用亚马逊 Bedrock Agent
<a name="bedrock-agent-intent"></a>

**注意**  
在利用生成式人工智能功能之前，您必须满足以下先决条件  
有关使用 Amazon Bedrock 的定价信息，请参阅 [Amazon Bedrock 定价](https://aws.amazon.com/bedrock/pricing/)。
为机器人区域设置开启生成式人工智能功能。为此，请按照[利用生成式人工智能优化 Lex V2 机器人的创建和性能](generative-features.md)中的步骤进行操作。

您可以利用 Amazon Bedrock 代理来处理客户请求的复杂工作负载，而无需完成整个任务定义流程。Amazon Lex V2 提供了一个内置 `AMAZON.BedrockAgentIntent`，您可以将其添加到机器人中。此意图可利用 Amazon Bedrock 的生成式人工智能功能来识别客户请求、分析用户请求并进行推理，最终做出回复。它还能够询问任何后续问题，以完成所需的任务（例如，假设您定义了一个可以检查客户订单状态的零售代理。当客户询问订单状态时，代理先请求 `customerId` 或关联的 `emailId` 以检索详细信息，然后最终以正确的订单状态做出回复）。您也可以决定整合您的亚马逊。 BedrockAgentIntent 借助 Bedrock 知识库，可以直接回答客户的任何疑问。

确保您的 IAM 角色具有访问亚马逊的适当权限。 BedrockAgentIntent 按照亚马逊权限中的步骤进行操作。 BedrockAgentIntent

利用亚马逊。 BedrockAgentIntent 您必须已经设置了以下知识库之一。
+ Amazon Bedrock 代理 - 有关更多信息，请参阅[创建 Bedrock 代理](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html)。
+ Amazon Bedrock 知识库 - 有关更多信息，请参阅[构建知识库](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-create.html)。

使用亚马逊。 BedrockAgentIntent，请按照 Le [x V2 中基岩代理意图所需的权限中的](https://docs.aws.amazon.com/lexv2/latest/dg/bedrock-agent-intent-permissions.html)步骤确保您的 IAM 角色具有适当的权限。

**Topics**
+ [在生成式人工智能配置屏幕中启用 Bedrock 代理意图](bedrock-agent-intent-genai.md)
+ [通过向机器人添加内置意图启用 Bedrock 代理意图](bedrock-agent-intent-level.md)
+ [Bedrock 代理意图在 Lex V2 中所需的权限](bedrock-agent-intent-permissions.md)
+ [使用会话属性的请求示例](bedrock-agent-intent-sample.md)

# 在生成式人工智能配置屏幕中启用 Bedrock 代理意图
<a name="bedrock-agent-intent-genai"></a>

您可以导航到“生成式人工智能”屏幕来启用 Bedrock 代理意图。

1. 登录 AWS 管理控制台并在[https://console.aws.amazon.com/lexv2/家](https://console.aws.amazon.com/lexv2/home)中打开 Amazon Lex V2 控制台。

1. 在导航窗格中的**机器人**下，选择要用于 Bedrock 代理意图的机器人。

1. 为要启用的机器人选择语言。

1. 转到屏幕上的**生成式人工智能配置**部分，然后选择**配置**。

1. 在 BedrockAgentIntent 配置部分，选择**创建 BedrockAgent 意图**。

# 通过向机器人添加内置意图启用 Bedrock 代理意图
<a name="bedrock-agent-intent-level"></a>

您可以通过向 Amazon Lex V2 机器人添加内置意图来启用 Bedrock 代理意图。

**注意**  
您必须先在生成式人工智能面板上激活 Bedrock 代理意图功能，才能为各机器人激活该功能。

1. 登录 AWS 管理控制台并在 https://console.aws.amazon.com/lexv2/家中打开 Amazon Lex V2 控制台。

1. 在**机器人**下的导航窗格中，选择要用于 Bedrock 代理意图的机器人。

1. 在“所有语言”下，选择**英语（US）**以展开列表。

1. 选择**添加意图**，然后从下拉菜单中选择**使用内置意图**。

1. 有关亚马逊配置的更多详细信息。 BedrockAgentIntent，请参阅[AMAZON.BedrockAgentIntent](built-in-intent-bedrockagent.md)。

# Bedrock 代理意图在 Lex V2 中所需的权限
<a name="bedrock-agent-intent-permissions"></a>
+ 要在 Amazon Lex V2 控制台上访问该功能，请确保您的控制台角色具有 `bedrock:ListFoundationModels` 和 `bedrock:ListInferenceProfiles` 权限。
+ 与机器人关联的 IAM 角色应具有 `AMAZON.BedrockAgentIntent` 所需的权限。

  如果使用 Amazon Bedrock 代理，则机器人角色应具有调用 `bedrock:InvokeAgent` 的权限，如果在意图中使用 Amazon Bedrock 知识库，则机器人角色应具有调用 `bedrock:InvokeModel` 和 `bedrock:RetrieveAndGenerate` 的权限。您还应为机器人的 `AMAZON.BedrockAgentIntent` 中指定的每个代理附上一条语句（请参阅下方策略中的“访问 Amazon Bedrock 代理的权限”或“访问 Amazon Bedrock 知识库的权限”语句）。

  在 Amazon Lex 控制台中启用该功能时，只要您的机器人使用的是由 Amazon Lex 生成的服务相关角色，该策略就会自动添加到机器人角色中。

# 使用会话属性的请求示例
<a name="bedrock-agent-intent-sample"></a>

以下示例说明如何调用 AMAZON。 BedrockAgentIntent 并演示了在响应中填充的会话和请求属性。这些属性包含 Bedrock 代理的响应数据，并可用于访问此代理的输出、Amazon Bedrock 知识库来源和操作组调用详细信息。

```
{
    "sessionId": "user-session-123",
    "messages": [{
        "content": "Your order #12345 is currently being processed and will ship within 2-3 business days. You will receive a tracking number via email once it ships.",
        "contentType": "PlainText"
    }],
    "sessionState": {
        "sessionAttributes": {
            "x-amz-lex:bedrock-agent-search-response": "Your order #12345 is currently being processed and will ship within 2-3 business days. You will receive a tracking number via email once it ships.",
            "x-amz-lex:bedrock-knowledge-base-search-response-source": "[{\"title\": \"Order Processing Guide\", \"uri\": \"s3://knowledge-base/orders/processing.pdf\", \"excerpt\": \"Standard orders typically ship within 2-3 business days...\"}]",
            "x-amz-lex:bedrock-agent-action-group-invocation-input": "{\"actionGroupName\": \"OrderLookup\", \"function\": \"getOrderStatus\", \"parameters\": {\"orderId\": \"12345\", \"customerId\": \"67890\"}}",
            "x-amz-lex:bedrock-agent-knowledge-base-lookup-input": "{\"knowledgeBaseId\": \"KB123456\", \"query\": \"order status processing time\", \"numberOfResults\": 3}"
        },
        "intent": {
            "name": "BedrockAgentIntent",
            "slots": {},
            "state": "Fulfilled",
            "confirmationState": "None"
        },
        "dialogAction": {
            "type": "ElicitIntent"
        }
    },
    "interpretations": [{
        "intent": {
            "name": "FallbackIntent",
            "slots": {}
        },
        "interpretationSource": "Lex"
    }],
    "requestAttributes": {
        "x-amz-lex:channels:platform": "Web",
        "x-amz-lex:accept-content-types": "PlainText",
        "x-amz-lex:bedrock-agent-search-response": "Your order #12345 is currently being processed and will ship within 2-3 business days. You will receive a tracking number via email once it ships.",
        "x-amz-lex:bedrock-knowledge-base-search-response-source": "[{\"title\": \"Order Processing Guide\", \"uri\": \"s3://knowledge-base/orders/processing.pdf\", \"excerpt\": \"Standard orders typically ship within 2-3 business days...\"}]",
        "x-amz-lex:bedrock-agent-action-group-invocation-input": "{\"actionGroupName\": \"OrderLookup\", \"function\": \"getOrderStatus\", \"parameters\": {\"orderId\": \"12345\", \"customerId\": \"67890\"}}",
        "x-amz-lex:bedrock-agent-knowledge-base-lookup-input": "{\"knowledgeBaseId\": \"KB123456\", \"query\": \"order status processing time\", \"numberOfResults\": 3}"
    }
}
```

在此示例中，会话属性显示了如何 BedrockAgentIntent 填充响应数据，包括代理的答案、使用的 Amazon Bedrock 知识库来源、操作组调用以及用于生成响应的 Amazon Bedrock 知识库查询详细信息。

有关更多信息，请参阅[亚马逊。 BedrockAgentIntent](https://docs.aws.amazon.com/lexv2/latest/dg/built-in-intent-bedrockagent.html)。