Azure AI Searchを使ってベクトル検索を実行してみた(Python)

はじめに

この記事は株式会社ナレッジコミュニケーションが運営する クラウド AI by ナレコム Advent Calendar 2023 の6日目にあたる記事になります!

Azure AI Searchを使って、Pythonでベクトル検索を実行してみました。Azure AI Searchを使ったベクトル検索を試したい方におすすめです。

開発環境

  • Azure サブスクリプション
  • Azure AI Search
  • Python 3.11

実装

Azure AI Searchリソースの作成

Azure Portalから「AI Search」のページに移動し、「作成」を選択します。

入力項目を埋め、「確認および作成」を選択します。

記事投稿用 (11).png

検証が完了したら、「作成」を選択します。

記事投稿用 (12).png

デプロイが完了したら、「リソースに移動」を選択します。

記事投稿用 (13).png

「設定」の「キー」タブを選択し、プライマリー管理者キーをメモします。

image.png

ライブラリのインポート、環境変数、リクエストヘッダーの設定

ここからはPythonファイルに記述していきます。まず、必要なライブラリをインポートし、環境変数、リクエストヘッダーを設定します。サンプルデータを使用するため、index_nameは「hotels-vector-quickstart」に指定してください。

test.py

インデックスの作成

インデックスを作成するを参考に、Pythonに書き換えた以下のコードでインデックスを作成します。

test.py

ここまで終えたら、Pythonファイルを実行してください。
ステータスコード201が返され、以下のようにhotels-vector-quickstartが作成されれば成功です。

image.png

次のステップへ進む前に、コードが重複して実行されるのを防ぐため、url、body、responseの各変数を削除するか、コメントアウトしてください。

ドキュメントのアップロード

ドキュメントのアップロードを参考に、Pythonに書き換えた以下のコードでドキュメントをアップロードします。

test.py