.NET .NET Aspire Qdrant-integratie
In dit artikel leert u hoe u de .NET.NET Aspire Qdrant-integratie gebruikt. Gebruik deze integratie om een QdrantClient- te registreren in de DI-container om verbinding te maken met een Qdrant-server.
Aan de slag
Installeer de 📦Aspireom aan de slag te gaan met de .NET.NET Aspire Qdrant-integratie. Qdrant.Client NuGet-pakket in het clientverbruikende project, d.w. het project voor de toepassing die gebruikmaakt van de Qdrant-client.
dotnet add package Aspire.Qdrant.Client
Zie dotnet pakket toevoegen of Pakketafhankelijkheden beheren in .NET toepassingenvoor meer informatie.
Voorbeeld van gebruik
Roep in het Program.cs-bestand van uw project dat clientverbruikt, de AddQdrantClient
-extensiemethode aan om een QdrantClient
te registreren voor gebruik in de afhankelijkheidsinjectie-container. De methode gebruikt een verbindingsnaamparameter.
builder.AddQdrantClient("qdrant");
Houd rekening met de volgende voorbeeldservice om uw QdrantClient
-object op te halen:
public class ExampleService(QdrantClient client)
{
// Use client...
}
App-hostgebruik
Als u de Qdrant-server-resource in de app-host wilt modelleren, installeert u de 📦Aspire. Hosting.Qdrant NuGet-pakket in het app-hostproject project.
dotnet add package Aspire.Hosting.Qdrant
Registreer in uw app-hostproject een Qdrant-server en gebruik de verbinding met behulp van de volgende methoden:
var builder = DistributedApplication.CreateBuilder(args);
var qdrant = builder.AddQdrant("qdrant");
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Wanneer u de API-sleutel expliciet wilt opgeven, kunt u deze als parameter opgeven. Bekijk het volgende alternatieve voorbeeld:
var apiKey = builder.AddParameter("apikey", secret: true);
var qdrant = builder.AddQdrant("qdrant", apiKey);
var myService = builder.AddProject<Projects.MyService>()
.WithReference(qdrant);
Zie Externe parametersvoor meer informatie.
Configuratie
De .NET Aspire Qdrant-Client-integratie biedt meerdere opties voor het configureren van de server-verbinding op basis van de vereisten en conventies van uw project.
Een verbindingsreeks gebruiken
Wanneer u een verbindingsreeks uit de sectie ConnectionStrings
configuratie gebruikt, kunt u de naam van de verbindingsreeks opgeven bij het aanroepen van builder.AddQdrantClient()
:
builder.AddQdrantClient("qdrant");
Vervolgens wordt de verbindingsreeks opgehaald uit de sectie ConnectionStrings
configuratie:
{
"ConnectionStrings": {
"qdrant": "Endpoint=http://localhost:6334;Key=123456!@#$%"
}
}
De QdrantClient
maakt standaard gebruik van het gRPC API-eindpunt.
Configuratieproviders gebruiken
De .NET Aspire Qdrant-Client-integratie ondersteunt Microsoft.Extensions.Configuration. Het laadt de QdrantClientSettings
vanuit de configuratie met behulp van de Aspire:Qdrant:Client
-sleutel. Voorbeeld appsettings.json
waarmee een aantal van de opties wordt geconfigureerd:
{
"Aspire": {
"Qdrant": {
"Client": {
"Key": "123456!@#$%"
}
}
}
}
Inline-afgevaardigden gebruiken
U kunt de Action<QdrantClientSettings> configureSettings
delegate ook doorgeven om bepaalde of alle opties inline in te stellen, bijvoorbeeld om de API-sleutel in de code in te stellen.
builder.AddQdrantClient("qdrant", settings => settings.ApiKey = "12345!@#$%");
Waarneembaarheid en telemetrie
.NET .NET Aspire integraties stellen automatisch logging-, tracing- en metriekenconfiguraties in, die soms worden genoemd als de pijlers van waarneembaarheid. Zie .NET.NET Aspire overzicht van integratieintegratiesvoor meer informatie over de waarneembaarheid en telemetrie van integraties. Afhankelijk van de back-upservice ondersteunen sommige integraties mogelijk slechts enkele van deze functies. Sommige integraties ondersteunen bijvoorbeeld logboekregistratie en tracering, maar geen metrische gegevens. Telemetriefuncties kunnen ook worden uitgeschakeld met behulp van de technieken die worden weergegeven in de sectie Configuratie.
Loggen
De .NET.NET Aspire Qdrant-integratie maakt gebruik van de volgende categorieën voor logboekregistratie:
- "Qdrant.Client"