Azure AI Search の C# サンプル

Azure AI Search ソリューションの機能とワークフローを示す C# コード サンプルについて説明します。 これらのサンプルでは、Azure SDK for .NET に対して Azure AI Search クライアント ライブラリを使用しています。これは、次のリンクを使用して調べることができます。

移行先 リンク
パッケージのダウンロード www.nuget.org/packages/Azure.Search.Documents/
API リファレンス azure.search.documents
API テスト ケース github.com/Azure/azure-sdk-for-net/tree/main/sdk/search/Azure.Search.Documents/tests
ソース コード github.com/Azure/azure-sdk-for-net/tree/main/sdk/search/Azure.Search.Documents/src

SDK のサンプル

Azure SDK 開発チームのコード サンプルは、API の使用方法を示します。 これらのサンプルは、GitHub の Azure/azure-sdk-for-net/tree/main/sdk/search/Azure.Search.Documents/samples にあります。

サンプル 説明
"Hello world" (同期的に) 同期メソッドを使用してクライアントの作成、認証、エラー処理を行う方法を示します。
"Hello world" (非同期的に) 非同期メソッドを使用してクライアントの作成、認証、エラー処理を行う方法を示します。
サービス レベルの操作 インデックス、インデクサー、データ ソース、スキルセット、および同意語マップを作成する方法を示します。 このサンプルでは、サービス統計情報を取得する方法と、インデックスのクエリを実行する方法についても示されています。
インデックスの操作 既存のインデックスに対してアクションを実行する方法を示します。この場合、インデックスに格納されているドキュメントの数を取得します。
FieldBuilderIgnore サポートされていないデータ型を操作する手法を示します。
ドキュメントのインデックス作成 (プッシュ モデル) "プッシュ" モデルのインデックス作成。サービスのインデックスに JSON ペイロードを送信します。
暗号化キーのサンプル カスタマー マネージド暗号化キーを使用して、機密性の高いコンテンツに保護レイヤーを追加する方法を示します。
ベクトル検索サンプル Azure SDK for .NET を使用し、ベクトル フィールドにインデックスを作成し、ベクトル検索を実行する方法がわかります。
セマンティック ランク付けのサンプル Azure SDK for .NET を使用して、インデックスでセマンティック ランク付けを構成し、セマンティック クエリを呼び出す方法を示します。

ドキュメントのサンプル

Azure AI Search チームのコード サンプルは、機能とワークフローを示しています。 次のサンプルはすべて、コードを詳しく説明するチュートリアル、クイックスタート、ハウツー記事で参照されています。 これらのサンプルは、GitHub の Azure-Samples/azure-search-dotnet-samplesAzure-Samples/search-dotnet-getting-started にあります。

ヒント

GitHub で製品、サービス、言語でフィルター処理された Microsoft コード サンプルを検索するために、サンプル ブラウザーを試してください。

コード サンプル 関連記事 目的
create-mvc-app チュートリアル: ASP.NET Core (MVC) アプリへの検索の追加 ほとんどのサンプルはコンソール アプリケーションですが、この MVC サンプルでは Web ページを使用してサンプルの Hotels インデックスを配置し、基本的な検索、改ページ位置の自動修正、サーバー側のその他のビヘイビアーを示します。
quickstart クイックスタート: Azure SDK を使用したフル テキスト検索 サンプル データを使用して C# で検索インデックスの作成、読み込み、クエリを行うための基本的なワークフローについて説明します。
quickstart-semantic-search クイックスタート: Azure SDK を使用したセマンティック ランク付け セマンティック ランク付けを呼び出すためのインデックス スキーマとクエリ要求を示します。
search-website チュートリアル: Web アプリに検索を追加する プッシュ API を使用した一括アップロードと、アプリをホストし検索要求を処理するためのリッチ クライアントを含むエンド ツー エンドの検索アプリのデモを行います。
tutorial-ai-enrichment チュートリアル: Azure BLOB から AI で生成する検索可能なコンテンツ インデクサーとスキルセットを構成する方法を示します。
multiple-data-sources チュートリアル: 複数のデータ ソースからのインデックス作成 2 つのデータ ソースのコンテンツを 1 つの検索インデックスにマージします。
optimize-data-indexing チュートリアル:プッシュ API を使用してインデックス作成を最適化する データを検索インデックスにプッシュするための最適化手法を示します。
DotNetHowTo .NET クライアント ライブラリを使用する方法 基本的なワークフローについて手順を説明しますが、API の使用方法について特に詳しく説明します。
DotNetToIndexers チュートリアル: Azure SQL データのインデックスを作成する この記事では、スケジュール、フィールド マッピング、およびパラメーターを含む Azure SQL インデクサーを構成する方法を示します。
DotNetHowToEncryptionUsingCMK データの暗号化用にカスタマー マネージド キーを構成する方法 カスタマー キーで暗号化されたオブジェクトを作成する方法を示します。
DotNetVectorDemo readme ベクトル インデックスを作成、読み込み、クエリ実行します。
DotNetIntegratedVectorizationDemo readme ベクトル ワークフローを拡張して、データのチャンクと埋め込み用にスキルベースの自動化を含めます。

アクセラレータ

アクセラレータは、特定のシナリオの独自の実装に合わせて調整できるコードとドキュメントを含むエンドツーエンドのソリューションです。

サンプル リポジトリ 説明
Search + QnA Maker アクセラレータ search-qna-maker-accelerator Search と QnA Maker の機能を組み合わせたソリューション。 ライブ デモ サイトを参照してください。
ナレッジ マイニング ソリューション アクセラレータ azure-search-knowledge-mining エンドツーエンドのナレッジ マイニング ソリューションのプロトタイプ作成に役立つテンプレート、サポート ファイル、および分析レポートが含まれています。

デモ

デモ リポジトリには、デモに示されている例やシナリオの概念実証ソース コードが用意されています。 デモ ソリューションは、顧客が調整できるようには設計されていません。

サンプル リポジトリ 説明
Covid-19 検索アプリ covid19search Azure AI Search ベースの Covid-19 Search App のソース コード リポジトリ
JFK デモ AzureSearch_JFK_Files JFK ソリューションの詳細を確認してください。

その他のサンプル

次のサンプルも Azure AI Search チームによって公開されていますが、ドキュメントでは参照されていません。 関連する readme ファイルでは、使用方法を説明します。

サンプル リポジトリ 説明
複数のサービスにクエリを実行する azure-search-dotnet-scale 複数の検索サービスに対して 1 つのクエリを発行し、結果を 1 つのページに結合します。
ストレージを確認する azure-search-dotnet-utilities スケジュールに従って検索サービス ストレージを確認する Azure 関数を呼び出します。
インデックスをエクスポートする azure-search-dotnet-utilities 大きなインデックスをパーティション分割してエクスポートする C# コンソール アプリ。
インデックスのバックアップと復元 azure-search-dotnet-utilities あるサービスから別のサービスにインデックスをコピーし、その過程で、お使いのコンピューター上で JSON ファイルと共にインデックス スキーマとドキュメントを作成する C# コンソール アプリ。
Microsoft Entra ID を使用して Lake Gen2 のデータにインデックスを作成する azure-search-dotnet-utilities インデクサー接続と、Microsoft Entra ID とロールベースのアクセス制御で保護された Azure Data Lake Gen2 のファイルとフォルダーのインデックス作成を行うデモンストレーション用のソース コード。
検索の集計 azure-search-dotnet-utilities 検索インデックスから集計を取得し、その集計を基準にフィルター処理する方法を示す概念実証ソース コード。
Power Skills azure-search-power-skills 獲得したソリューションに組み込むことができる、使用可能なカスタム スキルのソース コード。