.NET .NET Aspire Qdrant 集成

本文中,您将学习如何使用 .NET.NET Aspire Qdrant 集成。 使用此集成在 DI 容器中注册 QdrantClient,以连接到 Qdrant server。

入门

若要开始使用 .NET.NET Aspire Qdrant 集成,请安装 📦Aspire。Qdrant。Clientclient消耗项目中的 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”

另请参阅