.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”