Skip to main content

Command-line tool for managing Qdrant vector database collections

Project description

Qdrant Manager

A general-purpose command-line tool for managing Qdrant vector database collections and documents. Simplifies common Qdrant management tasks through a CLI interface.

Features

  • Create, delete, and list collections
  • Get detailed information about collections
  • Retrieve points from collections with flexible query options
  • Batch operations on documents:
    • Add fields to documents
    • Delete fields from documents
    • Replace fields in documents
  • Support for JSON path selectors for precise document modifications
  • Multiple configuration profiles support

Installation

# From PyPI
pipx install qdrant-manager

# From source
git clone https://github.com/allenday/qdrant-manager.git
cd qdrant-manager
pipx install -e .

Configuration

When first run, qdrant-manager will create a configuration file at:

  • Linux/macOS: ~/.config/qdrant-manager/config.yaml
  • Windows: %APPDATA%\qdrant-manager\config.yaml

You can edit this file to add your Qdrant connection details and schema configuration:

default:
  connection:
    url: localhost
    port: 6333
    api_key: ""
    collection: my-collection
  
  vectors:
    size: 256
    distance: cosine
    indexing_threshold: 0
  
  # Optional payload indices for optimized searching
  payload_indices:
    - field: category
      type: keyword
    - field: created_at
      type: datetime
    - field: price
      type: float

production:
  connection:
    url: your-production-instance.region.cloud.qdrant.io
    port: 6333
    api_key: your-production-api-key
    collection: production-collection
  
  vectors:
    size: 1536  # For OpenAI embeddings
    distance: cosine
    indexing_threshold: 1000
  
  payload_indices:
    - field: product_id
      type: keyword
    - field: timestamp
      type: datetime

Each profile can define its own:

  • Connection settings
  • Vector configuration (size, distance metric, indexing behavior)
  • Payload indices for optimized search performance

The YAML format makes it easy to maintain a clean, organized configuration across multiple environments.

You can switch between profiles using the --profile flag:

qdrant-manager --profile production list

You can also override any setting with command-line arguments.

Usage

qdrant-manager <command> [options]

Available Commands:

  • create: Create a new collection
  • delete: Delete an existing collection
  • list: List all collections
  • info: Get detailed information about a collection
  • batch: Perform batch operations on documents
  • get: Retrieve points from a collection
  • config: View available configuration profiles

Connection Options:

--profile PROFILE  Configuration profile to use
--url URL          Qdrant server URL
--port PORT        Qdrant server port
--api-key API_KEY  Qdrant API key
--collection NAME  Collection name

Examples:

# List all collections
qdrant-manager list

# Create a new collection with custom settings
qdrant-manager create --collection my-collection --size 1536 --distance euclid

# Get info about a collection
qdrant-manager info --collection my-collection

# Retrieve points by ID
qdrant-manager get --ids "1,2,3" --with-vectors

# Retrieve points using a filter and save as CSV
qdrant-manager get --filter '{"key":"category","match":{"value":"product"}}' \
  --format csv --output results.csv

# Add a field to documents matching a filter
qdrant-manager batch --filter '{"key":"category","match":{"value":"product"}}' \
  --add --doc '{"processed": true}'

# Delete a field from specific documents
qdrant-manager batch --ids "doc1,doc2,doc3" --delete --selector "metadata.temp_data"

# Replace fields in documents from an ID file
qdrant-manager batch --id-file my_ids.txt --replace --selector "metadata.source" \
  --doc '{"provider": "new-provider", "date": "2025-03-31"}'

# Switch between profiles
qdrant-manager --profile production list

Changelog

v0.1.4

  • Added get command to retrieve and export points from collections
  • Refactored CLI code into separate modules for better maintainability
  • Improved test coverage to over 85%
  • Fixed various bugs in tests and command handling

v0.1.3

  • Fixed bug in collection creation with payload indices

v0.1.2

  • Added comprehensive test coverage
  • Improved error handling

v0.1.1

  • Initial release with basic functionality
  • Added configuration profiles support

License

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

qdrant_manager-0.1.5.tar.gz (23.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

qdrant_manager-0.1.5-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file qdrant_manager-0.1.5.tar.gz.

File metadata

  • Download URL: qdrant_manager-0.1.5.tar.gz
  • Upload date:
  • Size: 23.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for qdrant_manager-0.1.5.tar.gz
Algorithm Hash digest
SHA256 acd80b35ab35da064015211c4b22885d4ee8647be120df815c56302b9557542b
MD5 479a69137475eab9e103126db690c665
BLAKE2b-256 f19f999a3c289cc572580a262e123cb9a8ce5dd512e63d8bc704e56b6150aad4

See more details on using hashes here.

File details

Details for the file qdrant_manager-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: qdrant_manager-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.14

File hashes

Hashes for qdrant_manager-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 61af7d8a5942e6a968c8059210c77ca4f1562b584e64091e60c03958534d2caa
MD5 5341af676004d9dd2cb2a0d53840cd9a
BLAKE2b-256 13120f4ae2288392b9e0a6186a7aa0f553abe4b55297760e8d82e64083d2c266

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page