integración Qdrant .NET.NET Aspire
En este artículo, aprendes a usar la integración Qdrant de .NET.NET Aspire. Use esta integración para registrar un QdrantClient en el contenedor de DI para conectarse a un serverQdrant.
Comenzar
Para empezar a trabajar con la integración de .NET.NET Aspire Qdrant, instale el paquete NuGet 📦Aspire. Qdrant.Client en el proyecto que consume client, es decir, el proyecto de la aplicación que usa Qdrant client.
dotnet add package Aspire.Qdrant.Client
Para obtener más información, consulte dotnet add package o Administrar dependencias de paquetes en aplicaciones .NET.
Ejemplo de uso
En el archivo Program.cs de tu proyecto que consume client, usa el método de extensión AddQdrantClient
para registrar un QdrantClient
para su uso a través del contenedor de inyección de dependencias. El método toma un parámetro de nombre de conexión.
builder.AddQdrantClient("qdrant");
Para recuperar el objeto QdrantClient
, considere el siguiente servicio de ejemplo:
public class ExampleService(QdrantClient client)
{
// Use client...
}
Uso del host de la aplicación
Para modelar el recurso server de Qdrant en el host de la aplicación, instale el paquete NuGet 📦Aspire.Hosting.Qdrant en el proyecto de host de la aplicación .
dotnet add package Aspire.Hosting.Qdrant
En el proyecto host de la aplicación, registre un Qdrant server y consuma la conexión mediante los siguientes métodos:
var builder = DistributedApplication.CreateBuilder(args);
var qdrant = builder.AddQdrant("qdrant");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Cuando quiera proporcionar explícitamente la clave de API, puede proporcionarla como parámetro. Considere el siguiente ejemplo alternativo:
var apiKey = builder.AddParameter("apikey", secret: true);
var qdrant = builder.AddQdrant("qdrant", apiKey);
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Para obtener más información, vea Parámetros externos.
Configuración
La integración de Client de .NET Aspire Qdrant proporciona varias opciones para configurar la conexión server en función de los requisitos y convenciones del proyecto.
Uso de una cadena de conexión
Al usar una cadena de conexión de la sección de configuración de ConnectionStrings
, puede proporcionar el nombre de la cadena de conexión al llamar a builder.AddQdrantClient()
:
builder.AddQdrantClient("qdrant");
Y, a continuación, la cadena de conexión se recuperará de la sección de configuración de ConnectionStrings
:
{
"ConnectionStrings": {
"qdrant": "Endpoint=http://localhost:6334;Key=123456!@#$%"
}
}
De forma predeterminada, el QdrantClient
usa el endpoint de la API gRPC.
Uso de proveedores de configuración
La integración de .NET Aspire de Qdrant Client admite Microsoft.Extensions.Configuration. Carga el QdrantClientSettings
desde la configuración mediante la clave Aspire:Qdrant:Client
. Ejemplo appsettings.json
que configura algunas de las opciones:
{
"Aspire": {
"Qdrant": {
"Client": {
"Key": "123456!@#$%"
}
}
}
}
Utilizar delegados insertados
También puede pasar el delegado de Action<QdrantClientSettings> configureSettings
para configurar algunas o todas las opciones en línea, por ejemplo, para establecer la clave de API desde el código.
builder.AddQdrantClient("qdrant", settings => settings.ApiKey = "12345!@#$%");
Observabilidad y telemetría
.NET .NET Aspire integraciones configuran automáticamente las configuraciones de registro, seguimiento y métricas, que a veces se conocen como los pilares de la observabilidad. Para obtener más información sobre la observabilidad de integración y la telemetría, consulte información general sobre las integraciones de .NET.NET Aspire. En función del servicio de respaldo, algunas integraciones solo pueden admitir algunas de estas características. Por ejemplo, algunas integraciones admiten el registro y el seguimiento, pero no las métricas. Las características de telemetría también se pueden deshabilitar mediante las técnicas presentadas en la sección Configuración.
Registro
La integración de .NET.NET Aspire Qdrant usa las siguientes categorías de registro:
- "Qdrant.Client"
Consulte también
- integraciones
- .NET Aspire GitHub repo