Skip to main content

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

Project description

Latest updates

  • Major refactor and studio-ready architecture

    • Refactored main window into modular components (InspectorShell, ProviderFactory, DialogService, ConnectionController, InspectorTabs)
    • MainWindow is reusable as a widget; tab system is pluggable so Studio can extend or override tabs
  • Data browser improvements

    • Added Generate embeddings on edit (persisted per user)
  • Settings / Preferences

    • SettingsService persists preferences and exposes typed accessors (breadcrumb, search defaults, auto-embed, window geometry)
    • SettingsService emits a setting_changed Qt signal so UI reacts immediately
    • SettingsDialog (modal) added with add_section API and hook integration for extension panels
    • Breadcrumb controls moved out of core so Pro (Vector Studio) injects them via the settings_panel_hook
  • Extension hook for settings panels

    • settings_panel_hook added to vector_inspector.extensions; Vector Studio registers breadcrumb controls at startup
  • Breadcrumb and UI improvements

    • Breadcrumb label now elides long trails (left/middle) and shows full trail on hover
    • SearchView supports runtime elide-mode changes and responds to settings signals
  • Window geometry persistence

    • Main window saves/restores geometry when window.restore_geometry is enabled
  • Pro (Vector Studio) features

    • Search Similar (Pro): right-click any row in Data Browser or Search Results to run a vector-to-vector similarity search
    • table_context_menu handler hardened for many embedding/id formats and includes fallbacks
    • Vector Studio injects breadcrumb controls into Settings dialog via settings_panel_hook
  • Tests and CI

    • Added tests/test_settings_injection.py to assert settings panel hook registration
    • Updated context-menu tests to use log_info and assert for pytest
    • Local test run: 5 tests passed; GUI-heavy suite ~9s due to PySide6 startup

Vector Inspector

Disclaimer: This tool is currently under active development and is not production ready. Not all features have been thoroughly tested and code is released frequently. Use with caution in critical or production environments.

CI Publish

PyPI Version PyPI Downloads

A comprehensive desktop application for visualizing, querying, and managing vector database data. Similar to SQL database viewers, Vector Inspector provides an intuitive GUI for exploring vector embeddings, metadata, and performing similarity searches across multiple vector database providers.

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.

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)
  • 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.

Installation

From PyPI (Recommended)

pip install vector-inspector
vector-inspector

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

From Source

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

# Install dependencies using PDM
pdm install

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

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-viewer/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_viewer

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.3.9.tar.gz (128.4 kB 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.3.9-py3-none-any.whl (152.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vector_inspector-0.3.9.tar.gz
  • Upload date:
  • Size: 128.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vector_inspector-0.3.9.tar.gz
Algorithm Hash digest
SHA256 11f39329b35b07779e5fb5420fb303d90654e2415167365c30be84271155ee57
MD5 0080d2da905eedd9429b30aac87cb0d2
BLAKE2b-256 4d477b94a5446a2dbd00de1aa6809276aab10e60d773d98ddedcde68065661c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for vector_inspector-0.3.9.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.3.9-py3-none-any.whl.

File metadata

File hashes

Hashes for vector_inspector-0.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 50787eb3a7065601d7e17973afd98218f860904908b1fa3d2ea323c3e9eb7764
MD5 040265541c035fefbf62093f68cfdc78
BLAKE2b-256 fdf331a362b6ee64bf843e163347cca72d245fccc86756808c8b69e6f27c1eac

See more details on using hashes here.

Provenance

The following attestation bundles were made for vector_inspector-0.3.9-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