Qdrant

Qdrant es un motor de búsqueda de similitud por vectores diseñado para acelerar los flujos de trabajo de IA y machine learning. Es especialmente potente cuando se combina con infraestructura dedicada de servidores con GPU como la que ofrece Trooper.AI, permitiendo el prototipado rápido y el despliegue de soluciones complejas de IA.

Dashboard of Qdrant
Panel de control de Qdrant

Qdrant destaca en la búsqueda de los vectores más similares a un vector consulta dado, lo que lo hace ideal para aplicaciones como búsqueda semántica, sistemas de recomendación y recuperación de imágenes/videos.

¿Por qué Qdrant con servidores de GPU?

Los sistemas de bases de datos tradicionales enfrentan dificultades con la alta dimensionalidad y los complejos cálculos de similitud inherentes a los vector embeddings. Qdrant, optimizado para datos vectoriales, combinado con el poder de procesamiento paralelo de las GPUs, ofrece ganancias significativas en rendimiento. Un servidor GPU de Trooper.AI proporciona la potencia necesaria para manejar conjuntos masivos de datos vectoriales y entregar resultados de búsqueda con baja latencia.

Aceleración por GPU está habilitada de forma predeterminada dentro de nuestra plantilla preconfigurada de Qdrant, garantizando un rendimiento óptimo para sus búsquedas.

Casos de uso

Aquí hay algunos casos de uso específicos donde Qdrant, impulsado por servidores GPU de Trooper.AI, destaca:

  • Búsqueda semántica: En lugar de coincidencia por palabras clave, Qdrant permite buscar documentos o contenido basado en su significado. Los embeddings capturan la esencia semántica del texto y Qdrant encuentra los resultados más similares desde el punto de vista semántico. Por ejemplo, al buscar «formas de mejorar la precisión del modelo», se devolverán resultados que hablen sobre regularización, ajuste de hiperparámetros (hyperparameter tuning) y aumento de datos (data augmentation), incluso si esas palabras clave exactas no están presentes.
  • Sistemas de Recomendación: Representar usuarios y elementos como vectores. Qdrant puede identificar rápidamente elementos similares a aquellos con los que un usuario ha interactuado anteriormente, ofreciendo recomendaciones personalizadas. Esto es aplicable al comercio electrónico, el streaming de contenido y más.
  • Recuperación de Imágenes y Videos: Extraer embeddings desde imágenes y videos usando modelos como CLIP. Qdrant permite buscar contenido visualmente similar. Imagina buscar «un gato jugando con una pelota» y recuperar imágenes y videos relevantes, incluso si no tienen esas etiquetas exactas.

API

Aquí tienes un ejemplo de un flujo típico de trabajo con la API de Qdrant, seguido por un ejemplo en Python para consultar vectores similares:

Flujo de trabajo típico de la API con Qdrant:

  1. Autenticación: La mayoría de los despliegues de Qdrant requieren una clave API para la autenticación. Esta clave debe incluirse en el encabezado Authorization de sus solicitudes.
  2. Selección de puntos finales: Qdrant ofrece varios endpoints para operaciones distintas como búsqueda, upsert (agregar) vectores y gestión de colecciones.
  3. Formato de la solicitud: Los datos suelen enviarse y recibirse en formato JSON.
  4. Manejo de respuestas: La API devuelve respuestas en formato JSON que contienen los resultados de tu solicitud o mensajes de error si algo sale mal.

Aquí tienes un ejemplo de una llamada en Python a Qdrant para buscar vectores similares:

pythón
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}")

Este ejemplo demuestra cómo consultar vectores similares en Qdrant. Recuerda reemplazar "https://SECURE-TROOPER-APP-URL", "my_collection", "YOUR_QDRANT_API_KEY" y el vector de ejemplo con tu punto final real de Qdrant, nombre de la colección, clave API y vector de consulta. Consulta la documentación de la API de Qdrant para obtener más puntos finales y funcionalidades: https://qdrant.tech/documentation/

Panel de control de Qdrant

Dashboard Startscreen
Pantalla de inicio del Panel

Qdrant ofrece un panel web intuitivo para gestionar tus vectores y colecciones. El panel te permite:

  • Visualizar datos de vectores: Explora tus vectores en un espacio de alta dimensionalidad usando diagramas de dispersión y otras visualizaciones.
  • Gestionar colecciones: Crear, modificar y eliminar colecciones para organizar sus datos de vectores.
  • Búsqueda y Filtros: Realizar búsquedas rápidas y aplicar filtros para encontrar vectores específicos.
  • Supervisar rendimiento: Seguir métricas clave como latencia de consulta y uso de recursos.
  • Inspeccionar vectores: Ver información detallada sobre vectores individuales, incluyendo sus embeddings y payloads.

¿Cómo acceder al panel de control

Puede acceder al panel de control de Qdrant a través de la interfaz web de su despliegue de Qdrant.

Añadir /dashboard a tu URL de la API para acceder.

Consulte la documentación de Qdrant para obtener instrucciones detalladas sobre cómo acceder y utilizar el panel: https://qdrant.tech/documentation/. Usar el panel en conjunto con un servidor GPU de Trooper.AI garantiza una experiencia fluida y receptiva al trabajar con conjuntos de datos vectoriales a gran escala.