Reasoning-based RAG for Excel financial models — no vectors, no chunking. Supports all major LLM providers.
Project description
Vectorless-QV
Reasoning-based RAG for Excel financial models — no vectors, no chunking.
Inspired by the PageIndex architecture, Vectorless builds a hierarchical tree index of an Excel workbook and uses an LLM reasoning loop (via AWS Bedrock) to navigate it — just like a financial analyst would.
Features
- No vector database — no embeddings, no similarity search
- No chunking — formulas and cell relationships stay intact
- Hierarchical tree index — sheets → tables → formulas → cells
- LLM-driven reasoning — parallel tool calls, search, drill-down
- Formula tracing — follows
=+PL!X118across sheets - What-if analysis — override cells and recalculate formulas
- 100% traceable — every answer cites exact sheet, cell, and formula
Installation
pip install -e .
Or from a built wheel:
pip install vectorless-qv
Quick Start
1. Index a workbook
vectorless-qv index --file financials.xlsx
This creates two files:
financials.tree.json— the hierarchical tree indexfinancials.parsed.json— raw cell data for query-time lookups
2. Ask questions
# Single question
vectorless-qv query --file financials.xlsx -q "What is the gross margin?"
# Interactive mode
vectorless-qv query --file financials.xlsx
# With reasoning trace
vectorless-qv query --file financials.xlsx -q "How is EBITDA calculated?" -v
3. Inspect the tree
# Full overview
vectorless-qv inspect --file financials.xlsx
# Specific node
vectorless-qv inspect --file financials.xlsx --node s1_t0
Python API
from vectorless_qv import parse_workbook, build_tree, BedrockAgent
import json
# Parse and index
data = parse_workbook("financials.xlsx")
tree = build_tree(data)
# Query
agent = BedrockAgent(tree=tree, workbook_data=data, excel_path="financials.xlsx")
result = agent.query("What drives net income?")
print(result["answer"])
print(result["citations"])
Configuration
| Env Variable | Default | Description |
|---|---|---|
AWS_DEFAULT_REGION |
us-east-1 |
AWS region for Bedrock |
AWS_ACCESS_KEY_ID |
— | AWS credentials |
AWS_SECRET_ACCESS_KEY |
— | AWS credentials |
Override the model via CLI:
vectorless-qv query --file f.xlsx --model us.anthropic.claude-sonnet-4-5-20250929-v1:0 -q "..."
Architecture
Excel File
│
▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Parser │────▶│ Indexer │────▶│ Tree JSON│
│(openpyxl)│ │(hierarchy)│ │ (ToC) │
└──────────┘ └──────────┘ └──────────┘
│
▼
┌──────────────┐
│ Bedrock Agent │◀── User Question
│ (Claude LLM) │
└──────┬───────┘
│
┌───────────┼───────────┐
▼ ▼ ▼
drill_down get_cells search_rows
get_row what_if answer
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vectorless_qv-0.2.0.tar.gz.
File metadata
- Download URL: vectorless_qv-0.2.0.tar.gz
- Upload date:
- Size: 1.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f4365b1c34679c50fcd242552502b9142c6a0b086ccfb8fe89a832d534362ef
|
|
| MD5 |
ba5876028c90c1dbf689218e7a2da74b
|
|
| BLAKE2b-256 |
434b7ee80bc26d41115bc9794488ae144843a9f4797852bb83cdbba61ee35ce8
|
File details
Details for the file vectorless_qv-0.2.0-py3-none-any.whl.
File metadata
- Download URL: vectorless_qv-0.2.0-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
143e4d7c936c44cbcc306198d88aafac1f766178dfb66a6ceb7e3bc18bcdccc9
|
|
| MD5 |
70f80e2cbff11177dc063959a01574e6
|
|
| BLAKE2b-256 |
f50fd176146366bb9f5da85bed82054d768bbe480088a6fa27edb57c318bf925
|