

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# CloudFormation を使用してセマンティック検索用のリモート推論をセットアップする
<a name="cfn-template"></a>

OpenSearch バージョン 2.9 以降では、[セマンティック検索](https://opensearch.org/docs/latest/search-plugins/semantic-search/)によるリモート推論を使用して独自の機械学習 (ML) モデルをホストできます。リモート推論は [ML Commons プラグイン](https://opensearch.org/docs/latest/ml-commons-plugin/index/)を使用します。

リモート推論を使用すると、Amazon SageMaker AI や Amazon Bedrock などの ML サービス上でモデル推論をリモートでホストし、ML コネクタを使用して Amazon OpenSearch Service に接続することができます。

リモート推論を簡単にセットアップできるように、Amazon OpenSearch Service ではコンソールで [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) テンプレートが提供されます。CloudFormation は、インフラストラクチャ AWS のサービス をコードとして扱うことで、 AWS およびサードパーティーのリソースをプロビジョニング、管理できる です。

OpenSearch CloudFormation テンプレートはモデルのプロビジョニングプロセスを自動化するため、OpenSearch Service ドメインでモデルを簡単に作成し、モデル ID を使用してデータを取り込み、ニューラル検索クエリを実行できます。

OpenSearch Service バージョン 2.12 以降でニューラルスパースエンコーダーを使用する場合は、リモートでデプロイするのではなく、ローカルでトークナイザモデルを使用することをお勧めします。詳細については、OpenSearch ドキュメントの「[Sparse encoding models](https://opensearch.org/docs/latest/ml-commons-plugin/pretrained-models/#sparse-encoding-models)」を参照してください。

**Topics**
+ [使用可能な 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)
+ [Amazon SageMaker テンプレート](cfn-template-sm.md)
+ [セマンティックハイライトテンプレートに対するリモート推論](#cfn-template-semantic-highlighting)

## 使用可能な CloudFormation テンプレート
<a name="cfn-template-list"></a>

次の AWS CloudFormation 機械学習 (ML) テンプレートを使用できます。[Amazon Bedrock テンプレート](cfn-template-bedrock.md)

**Amazon Titan Text Embeddings の統合**  
Amazon Bedrock のホストされた ML モデルに接続し、個別のモデルデプロイが不要になり、事前定義された Amazon Bedrock エンドポイントを使用します。詳細については、「*Amazon Bedrock ユーザーガイド*」の「[Amazon Titan Text Embeddings](https://docs.aws.amazon.com/bedrock/latest/userguide/titan-embedding-models.html)」を参照してください。

**Cohere 埋め込み統合**  
Cohere Embed モデルへのアクセスを提供し、特定のテキスト処理ワークフロー向けに最適化されています。詳細については、「*Cohere ドキュメント*」サイトの「[Embed](https://docs.cohere.com/docs/cohere-embed)」を参照してください。

**Amazon Titan Multimodal Embeddings**  
テキスト埋め込みとイメージ埋め込みの両方をサポートし、マルチモーダル検索機能を有効にします。詳細については、「*Amazon Bedrock ユーザーガイド*」の「[Amazon Titan Multimodal Embeddings](https://docs.aws.amazon.com/bedrock/latest/userguide/titan-multiemb-models.html)」を参照してください。[MCP サーバー統合テンプレート](cfn-template-mcp-server.md)

**MCP サーバー統合**  
[Amazon Bedrock AgentCore ランタイム](https://docs.aws.amazon.com/bedrock-agentcore/latest/devguide/what-is-bedrock-agentcore.html)をデプロイし、エージェントエンドポイントを提供し、インバウンド認証とアウトバウンド認証を処理し、エンタープライズ認証用の OAuth をサポートします。[Amazon SageMaker テンプレート](cfn-template-sm.md)

**Amazon SageMaker によるテキスト埋め込みモデルとの統合**  
Amazon SageMaker ランタイムにテキスト埋め込みモデルをデプロイし、モデルアーティファクトアクセス用の IAM ロールを作成し、セマンティック検索用の ML コネクタを確立します。

**SageMaker を介したスパースエンコーダーとの統合**  
ニューラル検索用のスパースエンコーディングモデルを設定し、コネクタ管理用の AWS Lambda 関数を作成し、すぐに使用できるようにモデル ID を返します。

## 前提条件
<a name="cfn-template-prereq"></a>

CloudFormation テンプレートを OpenSearch Service で使用するには、次の前提条件を満たす必要があります。

### OpenSearch Service ドメインをセットアップする
<a name="cfn-template-domain"></a>

CloudFormation テンプレートを使用するには、バージョン 2.9 以降の [Amazon OpenSearch Service ドメイン](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/osis-get-started.html)をセットアップし、詳細なアクセスコントロールを有効にする必要があります。[OpenSearch Service バックエンドロールを作成](fgac.md#fgac-roles)して、コネクタを作成するアクセス許可を ML Commons プラグインに付与します。

CloudFormation テンプレートは、デフォルト名 `LambdaInvokeOpenSearchMLCommonsRole` で Lambda IAM ロールを作成します。別の名前使用する場合は、デフォルト名をオーバーライドできます。この IAM ロールがテンプレートによって作成されたら、OpenSearch Service ドメインを呼び出すアクセス許可を Lambda 関数に付与する必要があります。そのためには、以下の手順に従って、`ml_full_access` という名前のロールを OpenSearch Service バックエンドロールに[マッピング](fgac.md#fgac-mapping)します。

1. OpenSearch Service ドメインの OpenSearch Dashboards プラグインに移動します。OpenSearch Service コンソールのドメインダッシュボードに Dashboards エンドポイントがあります。

1. メインメニューから [**セキュリティ**]、[**ロール**] を選択し、[**ml\$1full\$1access**] ロールを選択します。

1. **[マッピングされたユーザー]**、**[マッピングの管理]** を選択します。

1. **[バックエンドロール]** で、ドメインを呼び出すアクセス許可を必要とする Lambda ロールの ARN を追加します。

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

1. **[マップ]** を選択し、ユーザーまたはロールが **[マッピングされたユーザー]** の下に表示されていることを確認します。

ロールをマッピングしたら、ドメインのセキュリティ設定に移動し、Lambda IAM ロールを OpenSearch Service アクセスポリシーに追加します。

### でアクセス許可を有効にする AWS アカウント
<a name="connector-sagemaker-iam"></a>

には、テンプレートに AWS のサービス 選択した SageMaker ランタイムまたは Amazon Bedrock とともに、CloudFormation と Lambda へのアクセス許可 AWS アカウント が必要です。

Amazon Bedrock を使用している場合、モデルも登録する必要があります。モデルを登録するには、「*Amazon Bedrock ユーザーガイド*」の「[Model access](https://docs.aws.amazon.com/bedrock/latest/userguide/model-access.html)」を参照してください。

独自の Amazon S3 バケットを使用してモデルアーティファクトを提供する場合は、CloudFormation IAM ロールを S3 アクセスポリシーに追加する必要があります。詳細については、* IAM ユーザーガイド*の「[IAM ID アクセス許可の追加および削除](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html)」を参照してください。

## セマンティックハイライトテンプレートに対するリモート推論
<a name="cfn-template-semantic-highlighting"></a>

セマンティックハイライトは、キーワードの完全一致のみに依存するのではなく、クエリの意味とコンテキストを分析することで結果の関連性を高める高度な検索機能です。この機能は、機械学習モデルを使用して検索クエリとドキュメントコンテンツ間のセマンティック類似性を評価することで、ドキュメント内で特にコンテキスト関連性が高い文章やフレーズを抽出して強調表示します。従来のハイライト手法が正確な語句の一致に焦点を当てているのに対し、セマンティックハイライトは AI モデルを活用し、クエリと周辺テキスト両方のコンテキスト情報をもとに各文を評価します。これにより、検索語がハイライト対象の文に正確に含まれていない場合でも、関連性の高い情報を抽出することが可能になります。このアプローチは、ユーザーが文字通りの語句一致よりもセマンティックな関連性を重視する AI 駆動型の検索実装に役立ちます。これにより、検索管理者は、単なるキーワードの出現箇所ではなく、意味のあるコンテンツスパンを強調する、よりインテリジェントでコンテキストに応じた検索エクスペリエンスを提供できます。詳細については、「[Using semantic highlighting](https://docs.opensearch.org/latest/tutorials/vector-search/semantic-highlighting-tutorial/)」を参照してください。

セマンティックハイライト用に Amazon SageMaker モデルを自動的に設定する CloudFormation テンプレートを開き、次の手順を実行します。

**セマンティックハイライト CloudFormation テンプレートを使用するには**

1. [https://console.aws.amazon.com/aos/home](https://console.aws.amazon.com/aos/home ) で Amazon OpenSearch Service コンソールを開きます。

1. 左側のナビゲーションペインから、**[統合]** を選択します。

1. **[Amazon SageMaker 統合によるセマンティックハイライトの有効化]** で、**[ドメインの設定]**、**[パブリックドメインの設定]** を選択します。

1. プロンプトの指示に従ってモデルをセットアップします。

**注記**  
OpenSearch Service は VPC ベースの OpenSearch ドメインを設定するための個別のテンプレートも提供します。このテンプレートを使用する場合は、Lambda 関数の VPC ID を指定する必要があります。