TwelveLabs Marengo Embed 3.0が、Amazon Bedrock Knowledge Basesの埋め込みモデルとして一般提供になりました。埋め込みモデルの選択肢としてMarengo Embed 3.0が使えるようになり、動画、音声、画像コンテンツに対する自然言語検索がフルマネージドで利用できます。一般提供となったMarengo 3.0では、複雑なインフラを構築・管理せずに、動画、音声、画像アセットを自然言語検索で活用できます。データソースを指定してSyncし、検索するだけで利用できます。

動画検索が抱える課題とBedrockの位置づけ

動画やメディア資産は、意味による検索がほとんどできない状態にあります。メディア、スポーツ分析、教育、セキュリティ、小売のチームは、数時間の映像から「show me the penalty kick in the second half」といった自然言語で特定の場面を探す必要があります。今日、動画に対してセマンティック検索(semantic search)を構築するには、文字起こしサービス、フレーム抽出パイプライン、埋め込みモデル(embedding model)、ベクトルデータベース、同期ロジックを組み合わせた複雑なパイプラインが必要です。

Amazon Bedrock Knowledge Basesは、保存、取り込み(ingestion)、埋め込み(embedding)、再ランク付け(re-ranking)、検索(retrieval)を処理するフルマネージドのRetrieval Augmented Generation(RAG)サービスです。動画ファイル(MP4、MOV)、画像(JPEG、PNG)、音声トラックに対応しており、Amazon Simple Storage Service (Amazon S3)、SharePoint、Confluenceなどのネイティブコネクタを備えています。

Knowledge Baseを作成する手順

本記事のウォークスルーでは、Amazon Bedrockコンソールを使い、Marengo 3.0を搭載したKnowledge Base(KB)を作成する手順を示します。シナリオでは、2022 FIFA World Cup決勝の10分間のクリップを使います。

前提条件として、有効なAWSアカウントが必要です。持っていない場合は、Create an AWS Accountを参照してください。また、動画ファイルと画像ファイルを保存するためのAmazon S3バケットが必要です。さらに、Amazon BedrockとAmazon S3に対するAWS Identity and Access Management (IAM)の権限が必要です。加えて、サポートされているRegionでTwelveLabs Marengo Embed 3.0を有効化した状態で、Amazon Bedrockにアクセスできる必要があります。詳細は、Amazon Bedrockドキュメントの「Model access」を参照してください。

手順1のメディア資産の準備では、動画ファイルをAmazon S3バケットにアップロードします。Managed Knowledge Bases(Managed MKB)がセグメンテーション、フレームサンプリング、文字起こしを内部で処理するため、事前処理は不要です。

Managed Knowledge Baseを作成するには、Amazon BedrockコンソールでKnowledge Basesに移動し、Create Managed KBを選択します。Managed KBの作成時、Additional Configurationペインを展開し、Embeddings modelの項目で Amazon Bedrock embeddings model を選択します。初期値は Amazon Titan Text で、ペンのアイコンを選択するとモデルの選択を変更できます。Knowledge Base作成フォームでペンのアイコンを選択して表示されるモデル選択ダイアログで、TwelveLabs/Marengo Embed 3.0 を選択します。

Amazon BedrockのKnowledge Base作成で、埋め込みモデルとしてTwelveLabs Marengo Embed 3.0を選択した後、Data sourceペインを展開し、Data source typeに Amazon S3 を選んで、動画アセットを含むバケットのS3 URIを設定します。Advanced configurationsの「音声・動画のセグメント分割」の設定セクションでは、音声と動画のセグメント分割の長さを設定できます。両モダリティの初期値は4秒です。Knowledge Base作成時、advanced parametersは変更せず、ページ右下の Create Knowledge Base を選択します。

Knowledge Base(KB)の作成後、手順3「Sync and ingest your data」として Sync を選択すると、データの取り込みが始まります。Managed MKBは、Sync時に自動でフレームの抽出、音声の文字起こし、各セグメントのMarengo Embed 3.0埋め込み(embeddings)の生成を行い、ベクトルをインデックスに書き込みます。

手順4「Run a semantic search」では、コンソールの Test 機能を使うと、コンソールを離れずに KB をテストできます。取得するソースチャンク数の設定、メタデータフィルターの適用、「show me the penalty kicks from this soccer match.」のようなクエリの実行が可能です。セマンティック検索のレスポンスは、チャンクの開始時刻、チャンクの終了時刻、ソースURI、埋め込みタイプ(embedding type)などのメタデータを含むランク付けされた結果を返し、必要な部分を抽出できます。2022 FIFA World Cup 決勝の10分間クリップを取り込んだ KB で PK を探すクエリの例では、上位の結果が PK が試みられた場面を特定しています。

リソースを削除するクリーンアップの手順として、まずAmazon BedrockコンソールでKnowledge Basesを選択します。次に、対象のKnowledge Baseを選択し、IAMサービスロール名とS3 VectorインデックスのAmazon Resource Name(ARN)の両方を控えます。その後、Knowledge Baseに対してDeleteを選択して確認します。続いて、IAMコンソールでKnowledge Base作成時に先に作成されたロールを見つけて選択し、削除します。最後に、Amazon S3コンソールでS3バケットを見つけ、このチュートリアルのためにアップロードしたファイルを選択して削除します。

Marengo 3.0の特長・活用例と処理の流れ

Marengo Embed 3.0は、動画、音声、画像、テキストをまとめて、コンパクトでストレージ効率の良い512次元のベクトル空間にエンコードするマルチモーダル埋め込みモデルです。Amazon Bedrock Knowledge BasesでMarengo 3.0が一般提供(general availability)されたことで、動画・音声・画像コンテンツに対する自然言語検索がフルマネージドで利用できるようになりました。Managed Knowledge Bases(Managed MKB)は、視覚、テキスト、音声(speech)、オーディオの信号を捉えたマルチモーダル埋め込みを自動で生成し、統一されたベクトル表現にします。スポーツ分析の用途では、シーズン全体の映像から特定のプレー、フォーメーション、選手の動きを自然言語検索で探せます。メディア・エンターテインメントの用途では、メディア資産管理や、メディアアーカイブまたはストリーミングサービスのコンテンツに対するセマンティック検索ができます。セキュリティ・安全の用途では防犯カメラの映像から特定の出来事や行動を、教育・研修の用途ではキーワードだけでなく概念によって講義の該当区間を、小売の用途では製品デモ動画から機能のデモンストレーションを検索できます。

マルチモーダルコンテンツは、Amazon S3から、埋め込みとインデックス作成にMarengo 3.0を使うManaged Knowledge Basesを通って流れます。下流のアプリケーションは、Boto SDKのRetrieve API、またはAmazon Bedrock AgentCoreのAmazon Bedrock Gatewayターゲットとして、Knowledge Baseにクエリを送ります。Amazon Bedrock Retrieve APIを使えば、下流のアプリケーションを動かすことができます。Detailsページにある呼び出しコードを、出発点としてコピーできます。

利用可能なリージョン、料金、次のステップ

Marengo Embed 3.0 を使用する Managed Knowledge Bases for Amazon Bedrock は、米国東部(バージニア北部)リージョン(us-east-1)と欧州(アイルランド)リージョン(eu-west-1)で利用可能です。対応モデルとリージョンの完全な一覧については、Amazon Bedrock の Supported models by AWS Region を参照してください。

Managed Knowledge Bases for Amazon Bedrock では、保存したものと取得したものに対してのみ料金が課金されます。Marengo Embed 3.0 による埋め込み生成には、標準の Amazon Bedrock モデル呼び出しレートが適用され、料金が発生します。

次のステップとして、Amazon Bedrock samplesリポジトリにある、マルチモーダル検索(multimodal retrieval)を実演するノートブックを確認するよう、AWSは勧めています。また、Marengo 3.0のドキュメントでMarengo Embed 3.0の技術的な詳細を確認するよう、AWSは勧めています。さらに、Amazon Bedrock Knowledge Basesのドキュメントと Build a managed knowledge base で、追加の技術的な詳細を確認できます。