共用方式為


.NET .NET Aspire Qdrant 整合方案

在本文中,您將學習如何使用 .NET.NET Aspire Qdrant 整合功能。 使用此整合在 DI 容器中註冊 QdrantClient,以連線到 Qdrant server。

開始使用

若要開始使用 .NET.NET Aspire Qdrant 整合,請在 client-consuming 專案中安裝 📦AspireQdrantClient NuGet 套件,也就是使用 Qdrant 的應用程式專案 client。

dotnet add package Aspire.Qdrant.Client

如需詳細資訊,請參閱 dotnet add package管理 .NET 應用程式中的套件相依性

範例使用方式

在 client消耗專案的 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 整合會自動設定記錄、追蹤和度量組態,有時稱為 可觀察性的支柱。 如需整合可觀察性和遙測的詳細資訊,請參閱 .NET.NET Aspire 整合概觀。 視支援服務而定,某些整合可能只支援其中一些功能。 例如,某些整合支援記錄和追蹤,但不支援計量。 您也可以使用 組態 一節中呈現的技術來停用遙測功能。

伐木

.NET .NET Aspire Qdrant 整合會使用下列記錄類別:

  • “Qdrant。Client”

另請參閱