.NET .NET Aspire Integração com Qdrant
Neste artigo, você aprenderá a usar a integração .NET.NET Aspire Qdrant. Utilize esta integração para registar um QdrantClient no contentor DI para se conectar a um Qdrant server.
Começar
Para começar a usar a integração do .NET.NET Aspire Qdrant, instale o 📦Aspire. Qdrant.Client pacote NuGet no projeto que consome client, ou seja, o projeto para o aplicativo que usa o Qdrant client.
- .NET CLI
- PackageReference
dotnet add package Aspire.Qdrant.Client
Para obter mais informações, consulte dotnet add package ou Gerir dependências de pacotes em aplicações .NET.
Exemplo de utilização
No arquivo de Program.cs do seu projeto que consome client, chame o método de extensão AddQdrantClient
para registar um QdrantClient
para uso através do contentor de injeção de dependências. O método usa um parâmetro de nome de conexão.
builder.AddQdrantClient("qdrant");
Para recuperar seu objeto QdrantClient
, considere o seguinte serviço de exemplo:
public class ExampleService(QdrantClient client)
{
// Use client...
}
Utilização do anfitrião da aplicação
Para modelar o recurso Qdrant server no host da aplicação, instale o pacote NuGet 📦Aspire.Hosting.Qdrant no projeto da aplicação hosteado pelo.
- .NET CLI
- ReferênciaDePacote
dotnet add package Aspire.Hosting.Qdrant
Em seu projeto de host de aplicativo, registre um server Qdrant e consuma a conexão usando os seguintes métodos:
var builder = DistributedApplication.CreateBuilder(args);
var qdrant = builder.AddQdrant("qdrant");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Quando quiser fornecer explicitamente a chave da API, você pode fornecê-la como um parâmetro. Considere o seguinte exemplo alternativo:
var apiKey = builder.AddParameter("apikey", secret: true);
var qdrant = builder.AddQdrant("qdrant", apiKey);
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Para obter mais informações, consulte Parâmetros externos.
Configuração
A integração .NET Aspire Qdrant Client fornece várias opções para configurar a conexão server com base nos requisitos e convenções do seu projeto.
Usar uma string de conexão
Ao usar uma cadeia de conexão da seção de configuração de ConnectionStrings
, você pode fornecer o nome da cadeia de conexão ao chamar builder.AddQdrantClient()
:
builder.AddQdrantClient("qdrant");
E, em seguida, a cadeia de conexão será recuperada da seção de configuração ConnectionStrings
:
{
"ConnectionStrings": {
"qdrant": "Endpoint=http://localhost:6334;Key=123456!@#$%"
}
}
Por padrão, o QdrantClient
utiliza o endpoint da API gRPC.
Usar provedores de configuração
A integração .NET Aspire Qdrant Client suporta Microsoft.Extensions.Configuration. Ele carrega o QdrantClientSettings
da configuração usando a chave Aspire:Qdrant:Client
. Exemplo de appsettings.json
que configura algumas das opções:
{
"Aspire": {
"Qdrant": {
"Client": {
"Key": "123456!@#$%"
}
}
}
}
Usar delegados embutidos
Você também pode passar o delegado Action<QdrantClientSettings> configureSettings
para configurar algumas ou todas as opções diretamente no código, por exemplo, definir a chave de API a partir do código:
builder.AddQdrantClient("qdrant", settings => settings.ApiKey = "12345!@#$%");
Observabilidade e telemetria
.NET .NET Aspire integrações configuram automaticamente as configurações de Logging, Trace e Metrics, que às vezes são conhecidas como os pilares da observabilidade. Para obter mais informações sobre observabilidade e telemetria de integração, consulte Visão geral de integrações .NET.NET Aspire. Dependendo do serviço de suporte, algumas integrações podem suportar apenas alguns desses recursos. Por exemplo, algumas integrações suportam registro em log e rastreamento, mas não métricas. Os recursos de telemetria também podem ser desativados usando as técnicas apresentadas na secção de Configuração .
Registo
A integração do .NET.NET Aspire Qdrant usa as seguintes categorias de registo:
- "Qdrant.Client"