Qdrant Provider

Qdrant is an open-source vector search engine.

Setup

Local Installation

docker run -p 6333:6333 qdrant/qdrant

Connect with Vectra

client = Vectra::Client.new(
  provider: :qdrant,
  host: 'localhost',
  port: 6333,
  collection_name: 'my-collection'
)

Features

Example

# Initialize client
client = Vectra::Client.new(
  provider: :qdrant,
  host: 'localhost',
  port: 6333
)

# Upsert vectors
client.upsert(
  vectors: [
    { id: 'doc-1', values: [0.1, 0.2, 0.3], metadata: { source: 'web' } }
  ]
)

# Search
results = client.query(vector: [0.1, 0.2, 0.3], top_k: 10)

# Hybrid search (semantic + keyword)
results = client.hybrid_search(
  index: 'my-collection',
  vector: embedding,
  text: 'ruby programming',
  alpha: 0.7  # 70% semantic, 30% keyword
)

Configuration Options

Option Type Required Description
host String Yes Qdrant host address
port Integer Yes Qdrant port (default: 6333)
collection_name String No Collection name
api_key String No API key if auth is enabled

Documentation