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.4.tar.gz (18.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.4-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: qdrant_manager-0.1.4.tar.gz
  • Upload date:
  • Size: 18.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.4.tar.gz
Algorithm Hash digest
SHA256 11b5bab5fd60adb145c941e1fbbe7ac47e7d236f062e2518c17c01cb22f2b25c
MD5 984e85f7efdf359b698c204f9743d37b
BLAKE2b-256 29128172de1f712072ab1d8fb0d4fe70e510f9c333075dd6ccaa82068d89312a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qdrant_manager-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 13.8 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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e071ae6bfceda7f70a6d0c47af879cb254ad3454bbbdf223ef5435994cc483b1
MD5 4e863191804bc98a4a1029deda831c60
BLAKE2b-256 2f9f3feb605ec17c9cb2f661c244b6347fe4d428df484a577369ede94b497dd6

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