Qdrant

Qdrant is een vector similariteit zoekmachine ontworpen om AI- en machine learning workflows te versnellen. Het is bijzonder krachtig in combinatie met dedicated GPU server infrastructuur zoals die wordt aangeboden door Trooper.AI, waardoor snelle prototyping en implementatie van complexe AI-oplossingen mogelijk worden.

Dashboard of Qdrant
Dashboard van Qdrant

Qdrant blinkt uit in het vinden van de meest vergelijkbare vectoren bij een gegeven queryvector, waardoor het ideaal is voor toepassingen zoals semantische zoekopdrachten, aanbevelingssystemen en het ophalen van afbeeldingen/video's.

Waarom Qdrant met GPU-servers?

Traditionele databases hebben moeite met de hoge dimensionaliteit en complexe similariteitsberekeningen die inherent zijn aan vector embeddings. Qdrant, geoptimaliseerd voor vectordata, in combinatie met de parallelle verwerkingskracht van GPU's, levert aanzienlijke prestatiewinsten op. Een Trooper.AI GPU-server biedt het nodige vermogen om grootschalige vectordata sets aan te kunnen en zo zoekresultaten met lage latency te leveren.

GPU-beschleuniging staat standaard aan binnen ons voorgeconfigureerde Qdrant-sjabloon, waardoor u optimale prestaties voor uw zoekopdrachten kunt behalen.

Gebruiksscenario's

Hier zijn enkele specifieke use cases waarin Qdrant, aangedreven door Trooper.AI GPU-servers, uitblinkt:

  • Semantische zoekopdrachten: In plaats van sleutelwoordmatching stelt Qdrant je in staat om documenten of inhoud te vinden op basis van hun betekenis. Embeddings vangen de semantische kern van tekst vast en Qdrant levert de meest semantisch vergelijkbare resultaten. Bijvoorbeeld: bij het zoeken naar «manieren om de nauwkeurigheid van een model te verbeteren» worden resultaten getoond over regularisatie, afstemming van hyperparameters en dataverrijking – zelfs als die precieze termen er niet in voorkomen.
  • Aanbevelingssystemen: Stel gebruikers en items voor als vectoren. Qdrant kan snel gelijkaardige items identificeren aan de hand van wat een gebruiker eerder heeft geïnterageerd, waardoor gepersonaliseerde aanbevelingen worden geleverd. Dit is van toepassing op e-commerce, streamende inhoud en meer.
  • Afbeeldingen en video’s terugvinden: Haal embeddings uit afbeeldingen en video's met modellen zoals CLIP. Met Qdrant kun je zoeken naar visueel vergelijkbare inhoud. Stel je voor dat je zoekt op "een kat die met een bal speelt" en relevante afbeeldingen en video’s ophaalt, zelfs als ze niet precies die labels hebben.

API

Hier is een voorbeeld van een typische API-workflow met Qdrant, gevolgd door een Python-voorbeeld om te zoeken naar vergelijkbare vectoren:

Normale API-workflow met Qdrant:

  1. Authenticatie: De meeste Qdrant-implementaties vereisen een API-sleutel voor authenticatie. Deze sleutel moet worden opgenomen in de Authorization-header van uw verzoeken.
  2. Keuze van endpoint: Qdrant biedt verschillende endpoints voor operaties zoals zoeken, toevoegen (upserten) van vectoren en het beheren van collecties.
  3. Vraagformulering: Gegevens worden meestal verzonden en ontvangen in JSON-formaat.
  4. Responshandling: De API levert JSON-responses met de resultaten van uw verzoek, of foutmeldingen als er iets misgaat.

Hier is een voorbeeld van een Python-aanroep naar Qdrant om te zoeken naar vergelijkbare vectoren:

python
import requests
import json
import numpy as np

# Qdrant API endpoint and collection name
QDRANT_API_URL = "https://SECURE-TROOPER-APP-URL"  # Replace with your Qdrant endpoint
QDRANT_COLLECTION_NAME = "my_collection"

# Your API Key
API_KEY = "YOUR_QDRANT_API_KEY" # Replace with your Qdrant API key

# Payload for the search request
payload = {
    "vectors": (np.random.rand(128).tolist()),  # Replace with your query vector
    "limit": 10  # Number of results to return
}

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json"
}

try:
    response = requests.post(f"{QDRANT_API_URL}/collections/{QDRANT_COLLECTION_NAME}/search",
                             headers=headers,
                             data=json.dumps(payload))

    response.raise_for_status()  # Raise HTTPError for bad responses (4xx or 5xx)

    results = response.json()
    print(json.dumps(results, indent=2))

except requests.exceptions.RequestException as e:
    print(f"Error: {e}")
    print(f"Response text: {response.text}")
except Exception as e:
    print(f"An unexpected error occurred: {e}")

Dit voorbeeld laat zien hoe je Qdrant kunt raadplegen op gelijkaardige vectoren. Vergeet niet om "https://SECURE-TROOPER-APP-URL", "my_collection", "YOUR_QDRANT_API_KEY" en de voorbeeldevector te vervangen door uw daadwerkelijke Qdrant-endpoint, collectienaam, API-sleutel en zoekvector. Raadpleeg de [Qdrant API-documentatie]()https://qdrant.tech/documentation/) voor meer eindpunten en functionaliteiten.

Qdrant Dashboard

Dashboard Startscreen
Dashboard Startscherm

Qdrant biedt een gebruiksvriendelijk webdashboard voor het beheren van uw vectoren en collecties. Het dashboard stelt u in staat om:

  • Vectorgegevens visualiseren: Ontdek uw vectors in een hoogdimensionale ruimte met behulp van scatterplots en andere visuele weergaven.
  • Beheer collecties: Maak, wijzig en verwijder collecties om uw vectorgegevens te organiseren.
  • Zoeken en Filtreren: Voer snelle zoekopdrachten uit en pas filters toe om specifieke vectors te vinden.
  • Prestaties bewaken: Volg sleutelmetrieken zoals query-latentie en brongebruik.
  • Vectoren inspecteren: Bekijk gedetailleerde informatie over individuele vectoren, inclusief hun embeddings en payloads.

Hoe de dashboard te openen

U kunt toegang krijgen tot het Qdrant dashboard via de webinterface van uw Qdrant implementatie.

Toevoegen /dashboard naar je API URL om er toegang toe te krijgen.

Raadpleeg de Qdrant-documentatie voor gedetailleerde instructies over het toegankelijk maken en gebruiken van het dashboard: https://qdrant.tech/documentation/. Het gebruik van het dashboard in combinatie met een Trooper.AI GPU-server zorgt voor een soepele en responsieve ervaring bij het werken met grootschalige vectorgegevenssets.