Skip to main content

A comprehensive desktop application for visualizing, querying, and managing vector database data

Project description

Release Notes (0.8.0) — May 16, 2026

🚀 Progressive Enhancement: Significantly Faster Installation

TL;DR: Vector Inspector now installs in 30 seconds instead of up to 10 minutes. Install only the database providers you actually use, or install everything like before with [all].


What's New

⚡ Lightning-Fast Core Install

The default installation is now significantly faster:

Metric v0.7 v0.8 (minimal) v0.8 (recommended)
Packages 171* 12* ~60*
Download size ~2GB* ~200MB* ~500MB*
Install time 1-10 min* 8-30 sec* 1-3 min*
Failure rate High* Very low Low

*Approximate; varies by platform, Python version, and pip cache state.

# Before (v0.7)
pip install vector-inspector
# [up to 10 minutes of waiting, "building wheels", potential failures...]

# Now (v0.8) - launches in 30 seconds!
pip install vector-inspector
vector-inspector  # App opens immediately

📦 Install Only What You Need

Database providers are now optional. Choose what you want:

# Individual providers
pip install vector-inspector[chromadb]
pip install vector-inspector[qdrant]
pip install vector-inspector[pinecone]
pip install vector-inspector[lancedb]
pip install vector-inspector[pgvector]
pip install vector-inspector[weaviate]
pip install vector-inspector[milvus]

# Or combine multiple
pip install vector-inspector[chromadb,qdrant,embeddings]

# Popular bundle (recommended for most users)
pip install vector-inspector[recommended]
# Includes: ChromaDB + Qdrant + embeddings + visualization

# Everything (same as v0.7)
pip install vector-inspector[all]

🎯 Smart UI Guidance

The connection dialog now shows you what's installed:

  • ✓ ChromaDB (available)
  • Qdrant (not installed) (grayed out)
  • Pinecone (not installed)

Click an unavailable provider → Install dialog with one click:

  • An Install Now dialog opens, showing the exact command
  • Click Install Now to run pip inside the app with live streaming output
  • On success: provider list refreshes automatically; on failure: shows error log with a Retry button

🖥️ CLI Install Wizard

Install providers without opening the GUI:

# Interactive wizard — lists unavailable providers, pick a number
vector-inspector --install

# Direct install — skip the wizard
vector-inspector --install qdrant
vector-inspector --install chromadb

⚙️ Manage Everything from Preferences

Settings → Features and Settings → Providers tabs let you install or uninstall optional packages without touching the terminal:

  • Features tab — manage optional feature groups: Visualization (UMAP/t-SNE/HDBSCAN), Embeddings, CLIP, and Documents.
  • Providers tab — manage database provider packages (ChromaDB, Qdrant, Pinecone, etc.).
  • Each row shows current availability (✔ / ✘), the exact versioned packages required (shown as a tooltip), and an Install or Uninstall button.
  • Availability is checked in the background so the dialog opens instantly; rows update as each result arrives.

🔄 Refresh Without Restart

After installing a provider via the CLI, click the 🔄 Refresh button in the connection dialog to detect it without restarting the app.


Why This Matters

Problem We Solved

Before v0.8:

  • New users hit "install" and wait several minutes (sometimes up to 10)
  • See scary "building wheels" messages
  • Wheel compilation can fail on Windows or older systems
  • Forced to install ALL database clients even if using only one

After v0.8:

  • Core install completes in seconds
  • Fewer compilation errors (most deps are pure Python)
  • Progressive installation as needed
  • Clear guidance when you need something

Real User Impact

By reducing install weight and moving heavy deps to opt-in groups, new users encounter fewer failures and reach first launch faster.


Technical Details

Architecture Changes

Lazy Loading System:

  • Database provider classes loaded on-demand, not at startup
  • App launches even with zero providers installed
  • Clear error messages with install instructions

Type Checking Without Imports:

  • Added provider_type property to base connection class
  • No more isinstance() checks that require importing classes
  • Works reliably regardless of what's installed

Provider Detection:

  • New provider_detection.py module
  • Detects installed vs. available providers
  • Generates installation instructions

Configuration-Driven Profile Manager:

  • Profile editor now uses declarative field configuration via PROVIDER_FIELD_CONFIG
  • Each provider/connection-type combination specifies which fields are visible
  • Simplified maintenance and improved testability (37 new comprehensive tests)
  • Graceful handling of unavailable providers in connection setup

Migration Guide

For Existing Users (v0.7 → v0.8)

Option 1: Keep Everything (Recommended)

pip install --upgrade vector-inspector[all]
# Same behavior as v0.7 - all providers installed

Option 2: Slim Down

pip uninstall vector-inspector
pip install vector-inspector[chromadb,qdrant]  # Just what you use

For New Users

Start minimal, add as needed:

# Install core
pip install vector-inspector

# Launch app
vector-inspector

# Try to connect → see what you need
# Follow the install prompts

Breaking Changes

None! This is 100% backward compatible. Existing workflows continue to work.


Bundle Reference

Core Only (default)

pip install vector-inspector

Includes: PySide6, pandas, numpy, plotly, keyring, gputil

Recommended (most users)

pip install vector-inspector[recommended]

Includes: Core + ChromaDB + Qdrant + embeddings + visualization (UMAP, t-SNE)

All (power users / CI)

pip install vector-inspector[all]

Includes: Everything (all 7 database providers + all features)

Feature Bundles

pip install vector-inspector[embeddings]  # Text embedding models
pip install vector-inspector[clip]        # Image+text embeddings  
pip install vector-inspector[viz]         # UMAP, t-SNE, clustering
pip install vector-inspector[documents]   # PDF, DOCX support

This release removes the biggest barrier to trying Vector Inspector. Let's see adoption grow! 📈


Feature Group Install-on-Demand

Optional feature groups (visualization, embeddings, CLIP, document import) now surface the same install dialog as database providers when they are first accessed and not installed.

How It Works

  • FeatureDependencyMissingError — a new structured exception in lazy_imports.py that all lazy loaders raise (instead of a raw ImportError) when a required dep is absent. Carries feature_id and import_name so the UI can open the exact install dialog without parsing strings.
  • Feature-group mapping_IMPORT_TO_FEATURE in lazy_imports.py maps Python import names (sklearn, umap, sentence_transformers, transformers, torch, pypdf, docx) to feature group IDs (viz, embeddings, clip, documents).
  • Visualization gate_generate_visualization() checks get_feature_info("viz") before starting the data-load thread. VisualizationThread also catches FeatureDependencyMissingError from deep inside VisualizationService and emits feature_missing(feature_id) so the UI can show the dialog even if the check was bypassed.
  • Embeddings gate — toggling "Add sample data" in the Create Collection dialog checks get_feature_info("embeddings") and opens the install dialog if not installed; the checkbox reverts automatically if the user cancels.
  • Document import gateget_pypdf() and get_python_docx() in lazy_imports.py now raise FeatureDependencyMissingError("documents", ...) so any caller gets the structured error.
  • Generalized install dialogProviderInstallDialog now accepts both ProviderInfo and FeatureInfo (same duck-typed shape). _InstallThread dispatches to install_provider or install_feature based on type.
  • install_feature() — new function in provider_install_service.py validated against _VALID_FEATURE_IDS = {"viz", "embeddings", "clip", "documents"}.
  • documents feature — added check_documents_available() and get_feature_info("documents") to provider_detection.py.

What's Next

With faster installation out of the way, we can focus on:

  • More RAG debugging features
  • Better visualization tools
  • Embedding comparison workflows
  • Migration assistants

Questions or issues? Open an issue: https://github.com/anthonypdawson/vector-inspector/issues


Vector Inspector

CI Coverage Status Publish

PyPI Version PyPI Downloads

The ultimate toolkit for vector databases - a comprehensive desktop app to inspect, query, and visualize your embeddings across Chroma, Qdrant, Weaviate, Pinecone, LanceDB, pgvector and more.

Similar to SQL viewers (DBeaver/TablePlus) but built for vector databases, Vector Inspector offers an intuitive GUI for exploring embeddings, metadata, similarity search, and CRUD across multiple providers.

Vector Inspector Demo

Quick Demo: See Vector Inspector in action!

Overview

Vector Inspector bridges the gap between vector databases and user-friendly data exploration tools. While vector databases are powerful for semantic search and AI applications, they often lack the intuitive inspection and management tools that traditional SQL databases have. This project aims to provide that missing layer.


Homepage

https://vector-inspector.divinedevops.com

🟦 Installation

Quick Install (recommended)

These installers work on macOS, Linux, and Windows (PowerShell or Git Bash).

macOS & Linux

curl -fsSL https://vector-inspector.divinedevops.com/install.sh | bash

Windows (PowerShell)

powershell -c "iwr https://vector-inspector.divinedevops.com/install.ps1 -UseBasicParsing | iex"

Windows (Git Bash)

curl -fsSL https://vector-inspector.divinedevops.com/install.sh | bash

These scripts:

  • install Vector Inspector
  • create a desktop shortcut
  • launch the app immediately

This is the easiest and most reliable way to get started.

From PyPI

Fast Install (Minimal)

Start with just the core app, then add database providers as needed:

# Install core app only (fast, ~30 seconds)
pip install vector-inspector

# Launch the app
vector-inspector

When you connect to a database, the app will prompt you to install the needed provider.

Recommended Install

Install with commonly used databases and features:

pip install vector-inspector[recommended]
# Includes: ChromaDB, Qdrant, embeddings, and visualization tools

Full Install

Install everything (all database providers and features):

pip install vector-inspector[all]
# Same as previous versions - includes all providers

Individual Providers

Install specific database providers:

pip install vector-inspector[chromadb]    # ChromaDB only
pip install vector-inspector[qdrant]      # Qdrant only
pip install vector-inspector[pinecone]    # Pinecone only
pip install vector-inspector[pgvector]    # PostgreSQL/pgvector
pip install vector-inspector[weaviate]    # Weaviate
pip install vector-inspector[lancedb]     # LanceDB
pip install vector-inspector[milvus]      # Milvus

Optional Features

Add embedding models, visualization, or document processing:

pip install vector-inspector[embeddings]  # Text embedding models
pip install vector-inspector[clip]        # Image/text embeddings
pip install vector-inspector[viz]         # UMAP, t-SNE, clustering
pip install vector-inspector[documents]   # PDF, DOCX support

You can combine multiple extras:

pip install vector-inspector[chromadb,qdrant,embeddings,viz]

From a Downloaded Wheel or Tarball (e.g., GitHub Release)

Download the .whl or .tar.gz file from the GitHub Releases page, then install with:

pip install <your-filename.whl>
# or
pip install <your-filename.tar.gz>

After installation, run the application with:

vector-inspector

Note: pip install does not create a desktop shortcut.
Use the bootstrap installer for the full experience.

From Source (PDM)

# Clone the repository
git clone https://github.com/anthonypdawson/vector-inspector.git
cd vector-inspector

# Install core dependencies only (fast)
pdm install

# OR install with recommended providers
pdm install -G recommended

# OR install everything (all providers and features)
pdm install -G all

# Launch application
scripts/run.sh     # Linux/macOS
scripts/run.bat    # Windows

Note for developers: The dependency groups in pyproject.toml can be installed with PDM using -G <group>. Available groups: chromadb, qdrant, pinecone, lancedb, pgvector, weaviate, milvus, embeddings, clip, viz, documents, llm, recommended, all.

🟩 Running Vector Inspector

vector-inspector

Note: The Quick Install script launches the app automatically. If you installed via pip or from source, use the command above. This opens the full desktop application.

Optional LLM runtime (llama-cpp-python)

llama-cpp-python is optional and only needed for the in-process LLM provider (llama-cpp).

  • Install via PDM dependency group (developer / recommended):
pdm install -G llm
  • Platform-specific pip install (end users / PyPI):

Windows (pre-built CPU wheel index):

pip install llama-cpp-python --prefer-binary \
  --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cpu

Linux / macOS (official wheels / source build):

pip install llama-cpp-python

CUDA / GPU wheels (pick matching CUDA version):

pip install llama-cpp-python --prefer-binary \
  --extra-index-url https://abetlen.github.io/llama-cpp-python/whl/cu121
  • Scripts included in this repo:
    • scripts/install-llm-windows.ps1 — PowerShell helper for Windows
    • scripts/install-llm-unix.sh — bash helper for Linux/macOS

Notes:

  • If you cannot build native wheels on Windows, use the Windows pre-built index above.
  • Vector Studio users can use Settings → LLM → "Download default model" to automatically download the default Phi-3-mini GGUF model into the local cache. This button is disabled in the free Vector Inspector tier.
  • Free-tier users should download a GGUF model manually (or use the scripts above) and set the path in Settings → LLM, or configure Ollama (local server) or an OpenAI-compatible API instead.

Table of Contents

Key Features

Note: Some features listed below may be not started or currently in progress.

1. Multi-Provider Support

  • Connect to vector databases:
    • ChromaDB (persistent local storage)
    • Qdrant (remote server or embedded local)
    • Pinecone (cloud-hosted)
    • Milvus (remote server or Milvus Lite) (Only on MacOs/Linux, experimental) - In Progress
    • LanceDB (persistent local storage) — requires lancedb>=0.27.0, pyarrow>=14.0.0
    • PgVector/PostgreSQL (remote server)
    • Weaviate (Local/Remote + WCD/Cloud)
  • Unified interface regardless of backend provider
  • Automatically saves last connection configuration
  • Secure API key storage for cloud providers

2. Data Visualization

  • Metadata Explorer: Browse and filter vector entries by metadata fields
  • Vector Dimensionality Reduction: Visualize high-dimensional vectors in 2D/3D using:
    • t-SNE
    • UMAP
    • PCA
  • Cluster Visualization: Color-code vectors by metadata categories or clustering results
  • Interactive Plots: Zoom, pan, and select vectors for detailed inspection
  • Data Distribution Charts: Histograms and statistics for metadata fields

3. Search & Query Interface

  • Similarity Search:
    • Text-to-vector search (with embedding model integration)
    • Vector-to-vector search
    • Find similar items to selected entries
    • Adjustable top-k results and similarity thresholds
  • Metadata Filtering:
    • SQL-like query builder for metadata
    • Combine vector similarity with metadata filters
    • Advanced filtering: ranges, IN clauses, pattern matching
  • Hybrid Search: Combine semantic search with keyword search
  • Query History: Save and reuse frequent queries

4. Data Management

  • Browse Collections/Indexes: View all available collections with statistics
  • CRUD Operations:
    • View individual vectors and their metadata
    • Add new vectors (with auto-embedding options)
    • Update metadata fields
    • Delete vectors (single or batch)
  • Bulk Import/Export:
    • Import from CSV, JSON, Parquet
    • Export query results to various formats
    • Backup and restore collections
  • Schema Inspector: View collection configuration, vector dimensions, metadata schema

5. SQL-Like Experience

  • Query Console: Write queries in a familiar SQL-like syntax (where supported)
  • Results Grid:
    • Sortable, filterable table view
    • Pagination for large result sets
    • Column customization
  • Data Inspector: Click any row to see full details including raw vector
  • Query Execution Plans: Understand how queries are executed
  • Auto-completion: Intelligent suggestions for collection names, fields, and operations

6. Advanced Features

  • Embedding Model Integration:
    • Use OpenAI, Cohere, HuggingFace models for text-to-vector conversion
    • Local model support (sentence-transformers)
    • Custom model integration
  • Vector Analysis:
    • Compute similarity matrices
    • Identify outliers and anomalies
    • Cluster analysis with k-means, DBSCAN
  • Embedding Inspector:
    • For similar collections or items, automatically identify which vector dimensions (activations) most contribute to the similarity
    • Map key activations to interpretable concepts (e.g., 'humor', 'sadness', 'anger') using metadata or labels
    • Generate human-readable explanations for why items are similar
  • Performance Monitoring:
    • Query latency tracking
    • Index performance metrics
    • Connection health monitoring

Architecture

Vector Inspector is built with PySide6 (Qt for Python) for the GUI, providing a native desktop experience. The backend uses Python with support for multiple vector database providers through a unified interface.

For detailed architecture information, see docs/architecture.md.

Use Cases

  1. AI/ML Development: Inspect embeddings generated during model development
  2. RAG System Debugging: Verify what documents are being retrieved
  3. Data Quality Assurance: Identify poorly embedded or outlier vectors
  4. Production Monitoring: Check vector database health and data consistency
  5. Data Migration: Transfer data between vector database providers
  6. Education: Learn and experiment with vector databases interactively

Feature Access

Vector Inspector follows a user-friendly monetization model:

  • All vector database providers are free — Try the full app with any database
  • Core workflows remain free — Connect, browse, search, visualize, and manage your data
  • Pro adds power tools — Advanced analytics, enterprise formats, workflow automation, and collaboration

Nothing currently in Free will ever move to Pro. See FEATURES.md for a detailed comparison.

Roadmap

Current Status: ✅ Phase 2 Complete

See ROADMAP.md for the complete development roadmap and planned features.

Configuration

Paths are resolved relative to the project root (where pyproject.toml is). For example, entering ./data/chroma_db will use the absolute path resolved from the project root.

The application automatically saves your last connection configuration to ~/.vector-inspector/settings.json. The next time you launch the application, it will attempt to reconnect using the last saved settings.

Example settings structure:

{
  "last_connection": {
    "provider": "chromadb",
    "connection_type": "persistent",
    "path": "./data/chroma_db"
  }
}

Development Setup

# Install PDM if you haven't already
pip install pdm

# Install dependencies with development tools (PDM will create venv automatically)
pdm install -d

# Run tests
pdm run pytest

# Run application in development mode
./run.sh     # Linux/macOS
./run.bat    # Windows

# Or use Python module directly from src directory:
cd src
pdm run python -m vector_inspector

Contributing

Contributions are welcome! Areas where help is needed:

  • Additional vector database provider integrations
  • UI/UX improvements
  • Performance optimizations
  • Documentation
  • Test coverage

Please see CONTRIBUTING.md for guidelines.

License

MIT License - See LICENSE file for details.

Acknowledgments

This project draws inspiration from:

  • DBeaver (SQL database viewer)
  • MongoDB Compass (NoSQL database GUI)
  • Pinecone Console
  • Various vector database management tools

See CHANGELOG.md for the latest status and what's new in each release.

See GETTING_STARTED.md for usage instructions and IMPLEMENTATION_SUMMARY.md for technical details.

Contact: Anthony Dawson

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

vector_inspector-0.8.0.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

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

vector_inspector-0.8.0-py3-none-any.whl (888.3 kB view details)

Uploaded Python 3

File details

Details for the file vector_inspector-0.8.0.tar.gz.

File metadata

  • Download URL: vector_inspector-0.8.0.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vector_inspector-0.8.0.tar.gz
Algorithm Hash digest
SHA256 8fad79da3f3a425cc42aba10aebb46781531c0e0f8ba63563bd077151be3e3fc
MD5 49509f1ed67f376608ce62ade13a4a17
BLAKE2b-256 bb868124eadc12d9556dddf958b542452c78fc43bfd65ce4a11ff269968ac766

See more details on using hashes here.

Provenance

The following attestation bundles were made for vector_inspector-0.8.0.tar.gz:

Publisher: release-and-publish.yml on anthonypdawson/vector-inspector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vector_inspector-0.8.0-py3-none-any.whl.

File metadata

File hashes

Hashes for vector_inspector-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2477eacd5324c29f02cd1f1c2187b4b1ae0ea00cda9db596b754117a902f0b86
MD5 aac0e13088d8299d62ae4872640c6c0a
BLAKE2b-256 7e24015c836a15028deb5f7b3c5dd19651d2ebd600c24aa935ef74b224200c24

See more details on using hashes here.

Provenance

The following attestation bundles were made for vector_inspector-0.8.0-py3-none-any.whl:

Publisher: release-and-publish.yml on anthonypdawson/vector-inspector

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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