Qdrant の統合 .NET.NET Aspire
この記事では、.NET.NET Aspire Qdrant 統合を使用する方法について説明します。 この統合を使用して、Qdrant serverに接続するための QdrantClient を DI コンテナーに登録します。
作業の開始
.NET .NET Aspire Qdrant 統合の使用を開始するには、📦Aspireをインストールします。Qdrant。client-consuming プロジェクト(Qdrant clientを使用するアプリケーションのプロジェクト) に NuGet パッケージをClient します。
dotnet add package Aspire.Qdrant.Client
詳細については、「dotnet パッケージ の追加」または「.NET アプリケーションでのパッケージの依存関係の管理」を参照してください。
使用例
client-consuming プロジェクトの Program.cs ファイルで、AddQdrantClient
拡張メソッドを呼び出して、依存関係挿入コンテナーを介して使用する QdrantClient
を登録します。 このメソッドは、接続名パラメーターを受け取ります。
builder.AddQdrantClient("qdrant");
QdrantClient
オブジェクトを取得するには、次のサービス例を検討してください。
public class ExampleService(QdrantClient client)
{
// Use client...
}
アプリ ホストの使用状況
アプリ ホストで Qdrant server リソースをモデル化するには、📦Aspireをインストールします。アプリ ホスト プロジェクト内の Hosting.Qdrant NuGet パッケージ。
dotnet add package Aspire.Hosting.Qdrant
アプリ ホスト プロジェクトで、Qdrant server を登録し、次の方法を使用して接続を使用します。
var builder = DistributedApplication.CreateBuilder(args);
var qdrant = builder.AddQdrant("qdrant");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
API キーを明示的に指定する場合は、パラメーターとして指定できます。 次の代替例を考えてみましょう。
var apiKey = builder.AddParameter("apikey", secret: true);
var qdrant = builder.AddQdrant("qdrant", apiKey);
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
詳細については、「外部パラメーター
構成
.NET Aspire Qdrant Client 統合には、プロジェクトの要件と規則に基づいて server 接続を構成するための複数のオプションが用意されています。
接続文字列を使用する
ConnectionStrings
構成セクションの接続文字列を使用する場合は、builder.AddQdrantClient()
を呼び出すときに接続文字列の名前を指定できます。
builder.AddQdrantClient("qdrant");
接続文字列は、ConnectionStrings
構成セクションから取得されます。
{
"ConnectionStrings": {
"qdrant": "Endpoint=http://localhost:6334;Key=123456!@#$%"
}
}
既定では、QdrantClient
は gRPC API エンドポイントを使用します。
構成プロバイダーを使用する
.NET Aspire Qdrant Client 統合は、Microsoft.Extensions.Configurationをサポートします。
Aspire:Qdrant:Client
キーを使用して、構成から QdrantClientSettings
を読み込みます。 いくつかのオプションを構成する appsettings.json
の例:
{
"Aspire": {
"Qdrant": {
"Client": {
"Key": "123456!@#$%"
}
}
}
}
インライン デリゲートを使用する
Action<QdrantClientSettings> configureSettings
デリゲートを渡して、コードから API キーを設定するなど、一部またはすべてのオプションをインラインで設定することもできます。
builder.AddQdrantClient("qdrant", settings => settings.ApiKey = "12345!@#$%");
可観測性とテレメトリ
伐採
.NET .NET Aspire Qdrant 統合では、次のログカテゴリが使用されます。
- "Qdrant.Client"
関連項目
.NET Aspire