Skip to main content

AI Native Testing Framework for VectorWave

Project description

VectorCheck: AI Native Testing Framework

PyPI version License: MIT Python 3.10+

VectorBoard is a regression testing framework designed for AI agents and LLM-based applications.

Traditional string comparison methods (assert a == b) are often insufficient for testing generative AI, where responses can vary with each execution. VectorBoard leverages Vector Similarity and Semantic Evaluation to validate tests based on "Intent", ensuring that semantically identical outputs pass even if the exact wording differs.


✨ Key Features

  • 🧠 Semantic Testing: Validates test results based on meaning rather than exact text matching. (Uses LLM Judge or Embedding Similarity)
  • ⏪ Golden Data Replay: Fetches verified "Golden Data" (production logs) from Weaviate and replays them to ensure regression stability.
  • ⚡ Zero Config Setup: Automatically generates optimal default configurations (including .env) if they are missing.
  • 🔍 Smart Auto-Discovery: Automatically detects and registers target functions within your project.
  • 📊 CLI Dashboard: Provides real-time, intuitive Pass/Fail reports directly in your terminal.

🚀 Installation

You can easily install VectorBoard via pip. (Requires the VectorWave framework)

pip install vectorcheck

🏁 Quick Start

Run the following command in your project's root directory:

vw test

On the first run, it will automatically generate a .env file and apply local environment settings.


⚙️ Configuration

1. vwtest.ini (Testing Strategy)

You can define different testing strategies for each function. Use similarity for functions with high randomness, and exact for deterministic functions.

[vectorboard]
python_paths = test_ex  # Path to the module being tested

; 1. LLM Summary Function (High Randomness) -> Pass if similarity > 85%
[test:test_ex.example.generate_review_summary]
strategy = similarity
threshold = 0.85

; 2. Payment Process (Partial Changes like IDs) -> Pass if similarity > 95%
[test:test_ex.example.process_payment]
strategy = similarity
threshold = 0.95

; 3. URL Generation (Deterministic) -> Must match exactly
[test:test_ex.example.generate_report]
strategy = exact

2. .env (Environment Variables)

Choose between HuggingFace (Free, Local) or OpenAI (Paid, High Performance) for your vectorizer.

# Default: Use Local HuggingFace Model (Zero Cost)
VECTORIZER="huggingface"
HF_MODEL_NAME="sentence-transformers/all-MiniLM-L6-v2"

# Optional: Use OpenAI
# OPENAI_API_KEY=sk-...

🛠 CLI Usage

Run Tests (vw test)

# Run all tests (follows ini configuration)
vw test

# Run a specific target function
vw test --target test_ex.example.process_payment

# Force Semantic (LLM Judge) mode for all tests
vw test --semantic

# Force Similarity mode (Threshold > 0.8) for all tests
vw test --threshold 0.8

Export Logs (vw export)

Export execution logs from the DB for training or analysis purposes.

vw export --output ./data/dataset.jsonl

🏗 Architecture

VectorBoard operates in integration with the VectorWave core.

  1. Trace: Captures function Inputs/Outputs and metadata, storing them in Weaviate (Vector DB).
  2. Fetch: Retrieves verified 'Golden Data' during testing.
  3. Replay: Re-executes the current code logic using the same inputs.
  4. Evaluate: Compares the past results (Expected) with the current results (Actual) in vector space.

📝 License

Distributed under the MIT License. See LICENSE for more information.

Developed by Kim Junyeong.

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

vectorcheck-0.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

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

vectorcheck-0.1.0-py3-none-any.whl (12.7 kB view details)

Uploaded Python 3

File details

Details for the file vectorcheck-0.1.0.tar.gz.

File metadata

  • Download URL: vectorcheck-0.1.0.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vectorcheck-0.1.0.tar.gz
Algorithm Hash digest
SHA256 123cd4628b508bb5d167692a4dbdf8103956a4dd6a2101a23861b7dadde09d39
MD5 ba7f4bb62b3aef3ccf4247d90a828d76
BLAKE2b-256 2393728843932bcfce930a2f1f6f687e1850f6face95dfb4c4b58306389a62fd

See more details on using hashes here.

File details

Details for the file vectorcheck-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: vectorcheck-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for vectorcheck-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2ac491a3a220e69f764530ab9822438aef0bda482821ba7823163bc128bff781
MD5 2fda67144f277f934dc466b04aae4de4
BLAKE2b-256 6184422ab5dc482cba5828d7e7aa209a41016c054750c3cae0d30801ebdde30c

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