

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

# 用于 Amazon CloudFormation 为语义搜索设置远程推理
<a name="cfn-template"></a>

从 2.9 OpenSearch 版开始，您可以使用带有[语义搜索](https://opensearch.org/docs/latest/search-plugins/semantic-search/)的远程推理来托管自己的机器学习 (ML) 模型。远程推理使用 [机器学习 Commons 插件](https://opensearch.org/docs/latest/ml-commons-plugin/index/)。

借助远程推理，您可以在 Amazon A SageMaker I 和 Amazon Bedrock 等机器学习服务上远程托管模型推理，并使用机器学习连接器将它们连接到亚马逊 OpenSearch 服务。

为了简化远程推理的设置，Amazon S OpenSearch ervice 在控制台中提供了一个[Amazon CloudFormation](https://docs.amazonaws.cn/AWSCloudFormation/latest/UserGuide/Welcome.html)模板。 CloudFormation 是您可以通过将基础设施视为代码来配置 Amazon 和管理第三方资源 Amazon Web Services 服务 的地方。

该 OpenSearch CloudFormation 模板可自动执行模型配置过程，因此您可以轻松地在 OpenSearch 服务域中创建模型，然后使用模型 ID 来摄取数据并运行神经搜索查询。

在 Serv OpenSearch ice 2.12 及更高版本中使用神经稀疏编码器时，我们建议您在本地使用分词器模型，而不是远程部署。有关更多信息，请参阅 OpenSearch 文档中的[稀疏编码模型](https://opensearch.org/docs/latest/ml-commons-plugin/pretrained-models/#sparse-encoding-models)。

**Topics**
+ [可用 Amazon CloudFormation 模板](#cfn-template-list)
+ [先决条件](#cfn-template-prereq)
+ [Amazon Bedrock 模板](cfn-template-bedrock.md)
+ [使用 Bedrock Claude 配置代理搜索](cfn-template-agentic-search.md)
+ [MCP 服务器集成模板](cfn-template-mcp-server.md)
+ [亚马逊 SageMaker 模板](cfn-template-sm.md)
+ [语义突出显示模板的远程推理](#cfn-template-semantic-highlighting)

## 可用 Amazon CloudFormation 模板
<a name="cfn-template-list"></a>

以下 Amazon CloudFormation 机器学习 (ML) 模板可供使用：[Amazon Bedrock 模板](cfn-template-bedrock.md)

**Amazon Titan 文本嵌入集成**  
连接至 Amazon Bedrock 托管的机器学习模型，无需单独部署模型，并使用预先确定的 Amazon Bedrock 端点。有关更多信息，请参阅《Amazon Bedrock 用户指南》**中的 [Amazon Titan 文本嵌入](https://docs.amazonaws.cn/bedrock/latest/userguide/titan-embedding-models.html)。

**Cohere Embed 集成**  
提供对 Cohere Embed 模型的访问权限，并针对特定文本处理工作流程进行优化。有关更多信息，请参阅 Cohere 文档**网站上的[嵌入](https://docs.cohere.com/docs/cohere-embed)。

**Amazon Titan 多模态嵌入**  
同时支持文本和图像嵌入，并实现多模态搜索功能。有关更多信息，请参阅《Amazon Bedrock 用户指南》**中的 [Amazon Titan 多模态嵌入](https://docs.amazonaws.cn/bedrock/latest/userguide/titan-multiemb-models.html)。[MCP 服务器集成模板](cfn-template-mcp-server.md)

**MCP 服务器集成**  
部署 A [mazon Bedrock AgentCore 运行时](https://docs.amazonaws.cn/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html)，提供代理终端节点，处理入站和出站身份验证，并 OAuth 支持企业身份验证。[亚马逊 SageMaker 模板](cfn-template-sm.md)

**通过 Amazon 与文本嵌入模型集成 SageMaker**  
在 Amazon SageMaker Runtime 中部署文本嵌入模型，为模型项目访问创建 IAM 角色，并建立用于语义搜索的机器学习连接器。

**通过以下方式与稀疏编码器集成 SageMaker**  
为神经搜索设置稀疏编码模型，创建用于连接器管理的 Amazon Lambda 函数，并返回模型 IDs 以供立即使用。

## 先决条件
<a name="cfn-template-prereq"></a>

要在 S OpenSearch ervice 中使用 CloudFormation 模板，请完成以下先决条件。

### 设置 OpenSearch 服务域
<a name="cfn-template-domain"></a>

在使用 CloudFormation 模板之前，您必须设置一个版本 2.9 或更高版本的 [Amazon Serv OpenSearch ice 域](https://docs.amazonaws.cn/opensearch-service/latest/developerguide/osis-get-started.html)并启用精细访问控制。[创建 OpenSearch 服务后端角色](fgac.md#fgac-roles)以授予 ML Commons 插件为您创建连接器的权限。

该 CloudFormation 模板使用默认名称为您创建一个 Lambda IAM 角色`LambdaInvokeOpenSearchMLCommonsRole`，如果您想选择其他名称，则可以覆盖该名称。模板创建此 IAM 角色后，您需要授予 Lambda 函数调用您的 OpenSearch 服务域的权限。为此，请按照以下步骤`ml_full_access`将名为的角色[映射](fgac.md#fgac-mapping)到您的 OpenSearch 服务后端角色：

1. 导航到您的 OpenSearch 服务域的 OpenSearch 仪表板插件。您可以在 OpenSearch 服务控制台的域控制面板上找到控制面板终端节点。

1. 从主菜单中选择**安全**、**角色**，然后选择 **ml\$1full\$1access** 角色。

1. 选择**映射的用户**、**管理映射**。

1. 在**后端角色**下，添加需要权限才能调用您的域名的 Lambda 角色的 ARN。

   ```
   arn:aws:iam::account-id:role/role-name
   ```

1. 选择**映射**并确认在**映射的用户**下显示的用户或角色。

映射角色后，导航到您的域的安全配置，然后将 Lambda IAM 角色添加到您的 OpenSearch 服务访问策略中。

### 启用对您的权限 Amazon Web Services 账户
<a name="connector-sagemaker-iam"></a>

您 Amazon Web Services 账户 必须拥有访问 CloudFormation 和 Lambda 的权限，以及 Amazon Web Services 服务 您为模板选择的任何内容（Runtime SageMaker 或 Amazon Bedrock）的权限。

如果您使用的是 Amazon Bedrock，则还必须注册您的模型。要注册您的模型，请参阅 *Amazon BedRock 用户指南*中的[模型访问权限](https://docs.amazonaws.cn/bedrock/latest/userguide/model-access.html)。

如果您使用自己的 Amazon S3 存储桶来提供模型项目，则必须将 CloudFormation IAM 角色添加到您的 S3 访问策略中。有关更多信息，请参阅《 IAM 用户指南》**中的[添加和移除 IAM 身份权限](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)。

## 语义突出显示模板的远程推理
<a name="cfn-template-semantic-highlighting"></a>

语义突出显示是一项高级搜索功能，可通过分析查询的含义和上下文提高结果的相关性，而非仅依赖于精确的关键词匹配。此功能运用机器学习模型评估搜索查询与文档内容之间的语义相似度，从而识别并突出显示文档中与上下文最相关的句子或段落。与传统突出显示方法侧重精确词汇匹配不同，语义突出显示借助人工智能模型，通过查询与上下文文本的语境信息综合评测每句话，即使突出显示的段落中未出现确切的搜索词，语义突出显示也能精准呈现相关信息。这种方法对人工智能驱动的搜索实施尤为重要，因为用户更重视语义含义而非字面词汇匹配。这使搜索管理员能够提供更智能、更具上下文感知能力的搜索体验，突出显示有意义的内容片段，而非仅仅呈现关键词的出现位置。有关更多信息，请参阅 [Using semantic highlighting](https://docs.opensearch.org/latest/tutorials/vector-search/semantic-highlighting-tutorial/)。

使用以下过程打开并运行自动配置 Amazon SageMaker 模型以进行语义突出显示的 Amazon CloudFormation 模板。

**使用语义突出显示模板 CloudFormation**

1. 在[https://console.aws.amazon.com/aos/家](https://console.amazonaws.cn/aos/home )中打开亚马逊 OpenSearch 服务控制台。

1. 在左侧导航窗格中，选择**集成**。

1. 在 “**通过 Amazon SageMaker 集成启用语义突出显示**” 下，选择 “**配置域**”、“**配置公共域**”。

1. 按照提示设置模型。

**注意**  
OpenSearch 服务还提供了一个单独的模板来配置 VPC 域。如果您使用此模板，则需要提供 Lambda 函数的 VPC ID。