vector-engine 1.1.0__tar.gz → 1.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- vector_engine-1.2.0/CITATION.cff +11 -0
- vector_engine-1.2.0/MANIFEST.in +4 -0
- {vector_engine-1.1.0/vector_engine.egg-info → vector_engine-1.2.0}/PKG-INFO +35 -8
- vector_engine-1.1.0/PKG-INFO → vector_engine-1.2.0/README.md +20 -25
- vector_engine-1.2.0/docs/releases/v0.2.0-alpha.md +61 -0
- vector_engine-1.2.0/docs/releases/v0.3.0.md +57 -0
- vector_engine-1.2.0/docs/releases/v1.0.0-checklist.md +40 -0
- vector_engine-1.2.0/docs/releases/v1.0.0.md +88 -0
- vector_engine-1.2.0/docs/releases/v1.1.0-checklist.md +40 -0
- vector_engine-1.2.0/docs/releases/v1.1.0.md +114 -0
- vector_engine-1.2.0/docs/releases/v1.1.1.md +21 -0
- vector_engine-1.2.0/docs/releases/v1.2.0-checklist.md +48 -0
- vector_engine-1.2.0/docs/releases/v1.2.0.md +72 -0
- vector_engine-1.2.0/notebooks/01_semantic_search.ipynb +101 -0
- vector_engine-1.2.0/notebooks/02_knn_baseline.ipynb +111 -0
- vector_engine-1.2.0/notebooks/03_recommender_similarity.ipynb +100 -0
- vector_engine-1.2.0/notebooks/04_stability_runs.ipynb +255 -0
- vector_engine-1.2.0/notebooks/05_ann_backend.ipynb +132 -0
- vector_engine-1.2.0/pyproject.toml +50 -0
- vector_engine-1.2.0/scripts/artifact_contracts.py +319 -0
- vector_engine-1.2.0/scripts/benchmark_ivf.py +125 -0
- vector_engine-1.2.0/scripts/benchmark_ivf_batching.py +163 -0
- vector_engine-1.2.0/scripts/benchmark_matrix.py +342 -0
- vector_engine-1.2.0/scripts/build_release_bundle.py +90 -0
- vector_engine-1.2.0/scripts/credibility_audit.py +238 -0
- vector_engine-1.2.0/scripts/datasets.py +278 -0
- vector_engine-1.2.0/scripts/env_diagnostics.py +91 -0
- vector_engine-1.2.0/scripts/ingest_dataset.py +273 -0
- vector_engine-1.2.0/scripts/matrix_profile_advisor.py +74 -0
- vector_engine-1.2.0/scripts/performance_gates.py +161 -0
- vector_engine-1.2.0/scripts/profile_local.py +113 -0
- vector_engine-1.2.0/scripts/publishable_results.py +124 -0
- vector_engine-1.2.0/scripts/rag_baseline.py +103 -0
- vector_engine-1.2.0/scripts/rag_real_corpus_eval.py +207 -0
- vector_engine-1.2.0/scripts/repro_smoke.py +164 -0
- vector_engine-1.2.0/scripts/stability_runs.py +203 -0
- vector_engine-1.2.0/tests/test_ivf_backend.py +206 -0
- vector_engine-1.2.0/tests/test_notebook_integrity.py +30 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_release_bundle.py +5 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/__init__.py +1 -1
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/backends/__init__.py +3 -0
- vector_engine-1.2.0/vector_engine/backends/ivf.py +224 -0
- vector_engine-1.1.0/README.md → vector_engine-1.2.0/vector_engine.egg-info/PKG-INFO +52 -7
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine.egg-info/SOURCES.txt +36 -0
- vector_engine-1.1.0/pyproject.toml +0 -32
- {vector_engine-1.1.0 → vector_engine-1.2.0}/LICENSE +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/setup.cfg +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_api_stability.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_artifact_contracts.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_core.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_credibility_audit.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_dataset_benchmark_tooling.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_env_diagnostics.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_eval_surface_v1.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_faiss_optional.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_hardening.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_ingest_pipeline.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_install_smoke.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_matrix_profile_advisor.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_ml_eval.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_perf_smoke.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_persistence_compat.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_profile_local.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_rag_reliability.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_real_corpus_eval.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_release_performance_workflow.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/tests/test_v02_features.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/array.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/backends/base.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/backends/bruteforce.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/backends/faiss_backend.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/backends/registry.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/eval/__init__.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/eval/retrieval.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/index.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/io/__init__.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/io/manifest.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/metric.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/ml/__init__.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/ml/clustering.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/ml/knn.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/results.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/training/__init__.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine/training/hard_negative.py +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine.egg-info/dependency_links.txt +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine.egg-info/requires.txt +0 -0
- {vector_engine-1.1.0 → vector_engine-1.2.0}/vector_engine.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
cff-version: 1.2.0
|
|
2
|
+
title: "Vector Engine"
|
|
3
|
+
message: "If you use Vector Engine in research, please cite this project."
|
|
4
|
+
type: software
|
|
5
|
+
authors:
|
|
6
|
+
- family-names: "Panchal"
|
|
7
|
+
given-names: "Neel"
|
|
8
|
+
repository-code: "https://github.com/neelpanchal11/Vector-Engine"
|
|
9
|
+
license: MIT
|
|
10
|
+
version: "1.2.0"
|
|
11
|
+
date-released: 2026-08-13
|
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: vector-engine
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.2.0
|
|
4
4
|
Summary: ML-first vector computation and retrieval engine.
|
|
5
5
|
Author: Neel Panchal
|
|
6
6
|
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/neelpanchal11/Vector-Engine
|
|
8
|
+
Project-URL: Repository, https://github.com/neelpanchal11/Vector-Engine
|
|
9
|
+
Project-URL: Issues, https://github.com/neelpanchal11/Vector-Engine/issues
|
|
10
|
+
Project-URL: Documentation, https://github.com/neelpanchal11/Vector-Engine/tree/main/docs
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Intended Audience :: Science/Research
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
19
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
20
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
7
21
|
Requires-Python: >=3.10
|
|
8
22
|
Description-Content-Type: text/markdown
|
|
9
23
|
License-File: LICENSE
|
|
@@ -16,7 +30,7 @@ Provides-Extra: dev
|
|
|
16
30
|
Requires-Dist: pytest<9,>=8.2; extra == "dev"
|
|
17
31
|
Dynamic: license-file
|
|
18
32
|
|
|
19
|
-
# Vector Engine v1.
|
|
33
|
+
# Vector Engine v1.2.0
|
|
20
34
|
|
|
21
35
|
Reproducibility-first vector retrieval toolkit for local ML and IR workflows.
|
|
22
36
|
|
|
@@ -97,8 +111,14 @@ print(results.ids[0], results.scores[0])
|
|
|
97
111
|
|
|
98
112
|
## Colab Demos
|
|
99
113
|
|
|
100
|
-
|
|
101
|
-
|
|
114
|
+
Each notebook opens directly from this repo, so it always matches the current release.
|
|
115
|
+
|
|
116
|
+
- Semantic search: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/01_semantic_search.ipynb)
|
|
117
|
+
- kNN baseline classifier: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/02_knn_baseline.ipynb)
|
|
118
|
+
- Item-item recommender similarity: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/03_recommender_similarity.ipynb)
|
|
119
|
+
- IVF ANN backend (recall vs. speed): [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/05_ann_backend.ipynb)
|
|
120
|
+
|
|
121
|
+
`notebooks/04_stability_runs.ipynb` analyzes locally generated benchmark artifacts (see [Reproducibility and Evidence](#reproducibility-and-evidence)) and is not a standalone Colab demo.
|
|
102
122
|
|
|
103
123
|
## v1.1.0 Surface
|
|
104
124
|
|
|
@@ -161,13 +181,16 @@ Bundle outputs include:
|
|
|
161
181
|
|
|
162
182
|
## Backends
|
|
163
183
|
|
|
164
|
-
| Backend | Search | Add | Save/Load | Custom Metric |
|
|
165
|
-
| --- | ---: | ---: | ---: | ---: |
|
|
166
|
-
| `bruteforce` | yes | yes | yes | yes |
|
|
167
|
-
| `
|
|
184
|
+
| Backend | Search | Add | Save/Load | Custom Metric | Deps |
|
|
185
|
+
| --- | ---: | ---: | ---: | ---: | --- |
|
|
186
|
+
| `bruteforce` | yes | yes | yes | yes | numpy only |
|
|
187
|
+
| `ivf` | yes | yes | yes | yes | numpy only |
|
|
188
|
+
| `faiss` | yes | yes | yes | no | `faiss-cpu` (optional; no wheel on macOS arm64) |
|
|
168
189
|
|
|
169
190
|
FAISS is optional. The required reproducibility path is bruteforce-safe.
|
|
170
191
|
|
|
192
|
+
`ivf` is a pure-numpy approximate backend (coarse-quantize with k-means, probe the `nprobe` nearest clusters at search time) — it needs no extra install and works on hosts where `faiss-cpu` has no wheel. Tune it via `backend_config={"n_clusters": ..., "nprobe": ...}`. Search batches queries by probed cluster to reduce per-query Python overhead. It still trades recall for speed as `nprobe` changes; see `docs/releases/v1.2.0.md` for the original recall/latency sweep and its implementation details.
|
|
193
|
+
|
|
171
194
|
## Reproducibility and Evidence
|
|
172
195
|
|
|
173
196
|
Recommended release evidence flow:
|
|
@@ -175,6 +198,8 @@ Recommended release evidence flow:
|
|
|
175
198
|
```bash
|
|
176
199
|
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
177
200
|
python scripts/benchmark_matrix.py --mode exact --warmup 2 --loops 8 --seed 7 --output-dir artifacts/benchmark_matrix
|
|
201
|
+
python scripts/benchmark_ivf_batching.py --n 5000 --d 64 --nq 200 --k 10 --n-clusters 32 --nprobe-options 1,4,16,32 --loops 5 --warmup 1 --seed 22 --output artifacts/ivf_benchmark/ivf_batching_comparison.json
|
|
202
|
+
python scripts/benchmark_ivf.py --n 5000 --d 64 --nq 100 --k 10 --n-clusters 32 --nprobe-options 1,4,8,16,32 --loops 3 --seed 7 --output artifacts/ivf_benchmark/ivf_batched_recall_sweep.json
|
|
178
203
|
python scripts/publishable_results.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --output artifacts/benchmark_matrix/publishable_results.v1.json
|
|
179
204
|
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --output artifacts/audit/credibility_audit.v1.json
|
|
180
205
|
```
|
|
@@ -187,6 +212,7 @@ python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/
|
|
|
187
212
|
- `notebooks/01_semantic_search.ipynb`
|
|
188
213
|
- `notebooks/02_knn_baseline.ipynb`
|
|
189
214
|
- `notebooks/03_recommender_similarity.ipynb`
|
|
215
|
+
- `notebooks/05_ann_backend.ipynb`
|
|
190
216
|
|
|
191
217
|
## Troubleshooting
|
|
192
218
|
|
|
@@ -197,6 +223,7 @@ python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/
|
|
|
197
223
|
|
|
198
224
|
## Project Links
|
|
199
225
|
|
|
226
|
+
- `docs/releases/v1.2.0.md`
|
|
200
227
|
- `docs/releases/v1.1.0.md`
|
|
201
228
|
- `docs/releases/v1.1.0-checklist.md`
|
|
202
229
|
- `docs/reproducibility.md`
|
|
@@ -1,22 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Name: vector-engine
|
|
3
|
-
Version: 1.1.0
|
|
4
|
-
Summary: ML-first vector computation and retrieval engine.
|
|
5
|
-
Author: Neel Panchal
|
|
6
|
-
License-Expression: MIT
|
|
7
|
-
Requires-Python: >=3.10
|
|
8
|
-
Description-Content-Type: text/markdown
|
|
9
|
-
License-File: LICENSE
|
|
10
|
-
Requires-Dist: numpy<2.0,>=1.26.4
|
|
11
|
-
Provides-Extra: faiss
|
|
12
|
-
Requires-Dist: faiss-cpu>=1.7.4; (platform_system != "Darwin" or platform_machine != "arm64") and extra == "faiss"
|
|
13
|
-
Provides-Extra: ml
|
|
14
|
-
Requires-Dist: scikit-learn<1.7,>=1.4; extra == "ml"
|
|
15
|
-
Provides-Extra: dev
|
|
16
|
-
Requires-Dist: pytest<9,>=8.2; extra == "dev"
|
|
17
|
-
Dynamic: license-file
|
|
18
|
-
|
|
19
|
-
# Vector Engine v1.1.0
|
|
1
|
+
# Vector Engine v1.2.0
|
|
20
2
|
|
|
21
3
|
Reproducibility-first vector retrieval toolkit for local ML and IR workflows.
|
|
22
4
|
|
|
@@ -97,8 +79,14 @@ print(results.ids[0], results.scores[0])
|
|
|
97
79
|
|
|
98
80
|
## Colab Demos
|
|
99
81
|
|
|
100
|
-
|
|
101
|
-
|
|
82
|
+
Each notebook opens directly from this repo, so it always matches the current release.
|
|
83
|
+
|
|
84
|
+
- Semantic search: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/01_semantic_search.ipynb)
|
|
85
|
+
- kNN baseline classifier: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/02_knn_baseline.ipynb)
|
|
86
|
+
- Item-item recommender similarity: [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/03_recommender_similarity.ipynb)
|
|
87
|
+
- IVF ANN backend (recall vs. speed): [](https://colab.research.google.com/github/neelpanchal11/Vector-Engine/blob/main/notebooks/05_ann_backend.ipynb)
|
|
88
|
+
|
|
89
|
+
`notebooks/04_stability_runs.ipynb` analyzes locally generated benchmark artifacts (see [Reproducibility and Evidence](#reproducibility-and-evidence)) and is not a standalone Colab demo.
|
|
102
90
|
|
|
103
91
|
## v1.1.0 Surface
|
|
104
92
|
|
|
@@ -161,13 +149,16 @@ Bundle outputs include:
|
|
|
161
149
|
|
|
162
150
|
## Backends
|
|
163
151
|
|
|
164
|
-
| Backend | Search | Add | Save/Load | Custom Metric |
|
|
165
|
-
| --- | ---: | ---: | ---: | ---: |
|
|
166
|
-
| `bruteforce` | yes | yes | yes | yes |
|
|
167
|
-
| `
|
|
152
|
+
| Backend | Search | Add | Save/Load | Custom Metric | Deps |
|
|
153
|
+
| --- | ---: | ---: | ---: | ---: | --- |
|
|
154
|
+
| `bruteforce` | yes | yes | yes | yes | numpy only |
|
|
155
|
+
| `ivf` | yes | yes | yes | yes | numpy only |
|
|
156
|
+
| `faiss` | yes | yes | yes | no | `faiss-cpu` (optional; no wheel on macOS arm64) |
|
|
168
157
|
|
|
169
158
|
FAISS is optional. The required reproducibility path is bruteforce-safe.
|
|
170
159
|
|
|
160
|
+
`ivf` is a pure-numpy approximate backend (coarse-quantize with k-means, probe the `nprobe` nearest clusters at search time) — it needs no extra install and works on hosts where `faiss-cpu` has no wheel. Tune it via `backend_config={"n_clusters": ..., "nprobe": ...}`. Search batches queries by probed cluster to reduce per-query Python overhead. It still trades recall for speed as `nprobe` changes; see `docs/releases/v1.2.0.md` for the original recall/latency sweep and its implementation details.
|
|
161
|
+
|
|
171
162
|
## Reproducibility and Evidence
|
|
172
163
|
|
|
173
164
|
Recommended release evidence flow:
|
|
@@ -175,6 +166,8 @@ Recommended release evidence flow:
|
|
|
175
166
|
```bash
|
|
176
167
|
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
177
168
|
python scripts/benchmark_matrix.py --mode exact --warmup 2 --loops 8 --seed 7 --output-dir artifacts/benchmark_matrix
|
|
169
|
+
python scripts/benchmark_ivf_batching.py --n 5000 --d 64 --nq 200 --k 10 --n-clusters 32 --nprobe-options 1,4,16,32 --loops 5 --warmup 1 --seed 22 --output artifacts/ivf_benchmark/ivf_batching_comparison.json
|
|
170
|
+
python scripts/benchmark_ivf.py --n 5000 --d 64 --nq 100 --k 10 --n-clusters 32 --nprobe-options 1,4,8,16,32 --loops 3 --seed 7 --output artifacts/ivf_benchmark/ivf_batched_recall_sweep.json
|
|
178
171
|
python scripts/publishable_results.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --output artifacts/benchmark_matrix/publishable_results.v1.json
|
|
179
172
|
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --output artifacts/audit/credibility_audit.v1.json
|
|
180
173
|
```
|
|
@@ -187,6 +180,7 @@ python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/
|
|
|
187
180
|
- `notebooks/01_semantic_search.ipynb`
|
|
188
181
|
- `notebooks/02_knn_baseline.ipynb`
|
|
189
182
|
- `notebooks/03_recommender_similarity.ipynb`
|
|
183
|
+
- `notebooks/05_ann_backend.ipynb`
|
|
190
184
|
|
|
191
185
|
## Troubleshooting
|
|
192
186
|
|
|
@@ -197,6 +191,7 @@ python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/
|
|
|
197
191
|
|
|
198
192
|
## Project Links
|
|
199
193
|
|
|
194
|
+
- `docs/releases/v1.2.0.md`
|
|
200
195
|
- `docs/releases/v1.1.0.md`
|
|
201
196
|
- `docs/releases/v1.1.0-checklist.md`
|
|
202
197
|
- `docs/reproducibility.md`
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# Vector Engine v0.2.0-alpha (Draft)
|
|
2
|
+
|
|
3
|
+
## Highlights
|
|
4
|
+
|
|
5
|
+
- Expanded clustering API with richer outputs:
|
|
6
|
+
- labels
|
|
7
|
+
- centers
|
|
8
|
+
- inertia
|
|
9
|
+
- iteration count
|
|
10
|
+
- Hard-negative mining strategies:
|
|
11
|
+
- `top1`
|
|
12
|
+
- `topk_sample`
|
|
13
|
+
- `distance_band`
|
|
14
|
+
- plus exclusion support (`exclude_ids`, `exclude_mask`)
|
|
15
|
+
- Retrieval evaluation enhancements:
|
|
16
|
+
- `retrieval_report_detailed` (summary + per-query)
|
|
17
|
+
- `batch_metrics_summary` for multi-run aggregation
|
|
18
|
+
- Real-corpus evaluation script:
|
|
19
|
+
- `scripts/rag_real_corpus_eval.py`
|
|
20
|
+
- supports retrieval thresholds and latency gates
|
|
21
|
+
- Public demo template included in `demo_repo_template/`
|
|
22
|
+
|
|
23
|
+
## Validation Snapshot
|
|
24
|
+
|
|
25
|
+
- RAG baseline artifact generation validated.
|
|
26
|
+
- Real-corpus style 3-run reports generated in `artifacts/real_corpus_runs/`:
|
|
27
|
+
- quality stable across runs (`recall@1/3/6 = 1.0`, `ndcg@1/3/6 = 1.0`)
|
|
28
|
+
- p95 latency envelope: `0.0376-0.0717 ms`
|
|
29
|
+
- thresholds pass in all runs (`recall >= 0.75`, `ndcg >= 0.70`, `p95 <= 120 ms`)
|
|
30
|
+
- Faiss Flat exact-equivalence checks generated in `artifacts/faiss_equivalence/`:
|
|
31
|
+
- `overlap_vs_bruteforce = 1.0` in all 3 runs with `--min-flat-overlap 0.99`
|
|
32
|
+
- p95 latency ranges:
|
|
33
|
+
- bruteforce: `29.99-37.63 ms`
|
|
34
|
+
- faiss_flat: `4.17-15.03 ms`
|
|
35
|
+
- 200-run stability study generated:
|
|
36
|
+
- `artifacts/testing_runs/stability_runs_bruteforce_200.jsonl`
|
|
37
|
+
- `artifacts/testing_runs/stability_summary_bruteforce_200.json`
|
|
38
|
+
- p95 mean `0.0255 ms` (95% interval `0.0203-0.0547 ms`)
|
|
39
|
+
- qps mean `188,097` (95% interval `117,499-214,111`)
|
|
40
|
+
- Stability analysis notebook: `notebooks/04_stability_runs.ipynb`.
|
|
41
|
+
|
|
42
|
+
## Known Limitations
|
|
43
|
+
|
|
44
|
+
- Real-corpus evaluation requires user-provided embeddings/ground-truth files.
|
|
45
|
+
- Public demo template is included locally; publish as separate repo for outreach.
|
|
46
|
+
- Mock/public-safe corpus numbers are not a substitute for production-scale private corpus benchmarks.
|
|
47
|
+
|
|
48
|
+
## Release Checklist
|
|
49
|
+
|
|
50
|
+
1. Run `python3 -m pytest -q`
|
|
51
|
+
2. Run `python3 scripts/rag_baseline.py --output-dir artifacts --k 3`
|
|
52
|
+
3. Run exact equivalence:
|
|
53
|
+
- `python3 benchmarks/compare_bruteforce_vs_faiss.py --mode exact --min-flat-overlap 0.99 --output artifacts/benchmark_exact.json`
|
|
54
|
+
4. Run real corpus eval:
|
|
55
|
+
- `python3 scripts/rag_real_corpus_eval.py --embeddings ... --query-embeddings ... --ids ... --ground-truth ...`
|
|
56
|
+
5. Run stability study:
|
|
57
|
+
- `python3 scripts/stability_runs.py --embeddings ... --query-embeddings ... --ids ... --ground-truth ... --backend bruteforce --run-count 200 --output-dir artifacts/testing_runs`
|
|
58
|
+
6. Update README benchmark and quality numbers
|
|
59
|
+
7. Tag and release:
|
|
60
|
+
- `git tag -a v0.2.0-alpha -m "Vector Engine v0.2.0-alpha"`
|
|
61
|
+
- `git push origin v0.2.0-alpha`
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Vector Engine v0.3.0 (Draft)
|
|
2
|
+
|
|
3
|
+
## Release Positioning
|
|
4
|
+
|
|
5
|
+
v0.3.0 is a stability-oriented integration release. It focuses on adoption and reproducibility workflows on top of the core feature surfaces introduced in v0.2.0-alpha.
|
|
6
|
+
|
|
7
|
+
## Highlights
|
|
8
|
+
|
|
9
|
+
- Public-ready demo workflow under `demo_repo_template/`:
|
|
10
|
+
- semantic retrieval demo
|
|
11
|
+
- item similarity demo
|
|
12
|
+
- benchmark demo with bruteforce vs faiss_flat comparison
|
|
13
|
+
- quickstart verification script (`scripts/verify_quickstart.py`)
|
|
14
|
+
- Stable integration guidance:
|
|
15
|
+
- `docs/integration_guides.md`
|
|
16
|
+
- `docs/reproducibility.md`
|
|
17
|
+
- Reproducibility-first command workflow and artifact policy:
|
|
18
|
+
- baseline report
|
|
19
|
+
- real-corpus evaluation report
|
|
20
|
+
- repeated stability runs
|
|
21
|
+
- exact-equivalence benchmark checks
|
|
22
|
+
|
|
23
|
+
## Migration from v0.2.0-alpha
|
|
24
|
+
|
|
25
|
+
- No breaking API changes are introduced in core `vector_engine` entry points.
|
|
26
|
+
- Existing v0.2.0-alpha workflows continue to run.
|
|
27
|
+
- Documentation language now positions the project as v0.3.0 stable.
|
|
28
|
+
- Integration and release workflows are now organized into explicit guides and publish/private artifact policy.
|
|
29
|
+
|
|
30
|
+
## Validation Evidence Snapshot
|
|
31
|
+
|
|
32
|
+
- Real-corpus style 3-run results remain stable (see `artifacts/real_corpus_runs/`).
|
|
33
|
+
- Faiss Flat exact-equivalence checks pass overlap gating (`overlap_vs_bruteforce >= 0.99` target, observed `1.0` in recorded runs).
|
|
34
|
+
- 200-run stability study generated with summary statistics and plot:
|
|
35
|
+
- `artifacts/testing_runs/stability_runs_bruteforce_200.jsonl`
|
|
36
|
+
- `artifacts/testing_runs/stability_summary_bruteforce_200.json`
|
|
37
|
+
- `artifacts/testing_runs/stability_plot_p95_qps.png`
|
|
38
|
+
- Stability notebook:
|
|
39
|
+
- `notebooks/04_stability_runs.ipynb`
|
|
40
|
+
|
|
41
|
+
## Known Limits
|
|
42
|
+
|
|
43
|
+
- Real private-corpus embeddings and raw IDs should remain outside the public repo.
|
|
44
|
+
- Published benchmark numbers are configuration-dependent; include hardware/runtime notes with external reports.
|
|
45
|
+
- Faiss benchmark paths require local Faiss installation (`faiss-cpu`).
|
|
46
|
+
|
|
47
|
+
## Release Checklist
|
|
48
|
+
|
|
49
|
+
1. Run tests: `python3 -m pytest -q`
|
|
50
|
+
2. Generate baseline: `python3 scripts/rag_baseline.py --output-dir artifacts --k 3`
|
|
51
|
+
3. Run real-corpus evaluation: `python3 scripts/rag_real_corpus_eval.py --embeddings ... --query-embeddings ... --ids ... --ground-truth ...`
|
|
52
|
+
4. Run stability workflow: `python3 scripts/stability_runs.py --embeddings ... --query-embeddings ... --ids ... --ground-truth ... --backend bruteforce --run-count 200 --output-dir artifacts/testing_runs`
|
|
53
|
+
5. Run exact benchmark: `python3 benchmarks/compare_bruteforce_vs_faiss.py --mode exact --min-flat-overlap 0.99 --output artifacts/faiss_equivalence/run_1.json`
|
|
54
|
+
6. Verify docs links and artifact policy language in `README.md`.
|
|
55
|
+
7. Tag and release:
|
|
56
|
+
- `git tag -a v0.3.0 -m "Vector Engine v0.3.0"`
|
|
57
|
+
- `git push origin v0.3.0`
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# v1.0.0 Final Checklist
|
|
2
|
+
|
|
3
|
+
## Core quality
|
|
4
|
+
|
|
5
|
+
- [ ] `python -m pytest -q` completes successfully in `.venv312` created via `requirements/constraints-macos-arm64-py312.txt`.
|
|
6
|
+
- [ ] API stability tests pass (`tests/test_api_stability.py`).
|
|
7
|
+
|
|
8
|
+
## Performance evidence
|
|
9
|
+
|
|
10
|
+
- [ ] Optional: exact-equivalence benchmark generated when Faiss is available (`artifacts/faiss_equivalence/run_*.json`).
|
|
11
|
+
- [ ] Stability summary generated (`artifacts/testing_runs/stability_summary_*.json`).
|
|
12
|
+
- [ ] Matrix summary generated (`artifacts/benchmark_matrix/matrix_summary.json`).
|
|
13
|
+
- [ ] Local medium profile summary generated (`artifacts/local_profile/profile_local_summary.json`).
|
|
14
|
+
- [ ] Performance table in `docs/releases/v1.0.0.md` populated from artifacts.
|
|
15
|
+
|
|
16
|
+
## Reproducibility
|
|
17
|
+
|
|
18
|
+
- [ ] Protocol settings are fixed and documented (`seed`, `warmup`, `loops`, matrix configs).
|
|
19
|
+
- [ ] Hardware/runtime notes captured in machine-readable artifacts.
|
|
20
|
+
- [ ] Public/private artifact policy respected (no confidential embeddings committed).
|
|
21
|
+
|
|
22
|
+
## Packaging
|
|
23
|
+
|
|
24
|
+
- [ ] `README.md` includes v1.0.0 install/start, ingest-to-eval, and benchmark matrix commands.
|
|
25
|
+
- [ ] `docs/reproducibility.md` includes matrix workflow + artifact locations.
|
|
26
|
+
- [ ] Canonical py312 macOS arm64 bootstrap command is documented in README and reproducibility docs.
|
|
27
|
+
- [ ] `docs/api.md` includes v1.0 API stability contract.
|
|
28
|
+
|
|
29
|
+
## Release actions
|
|
30
|
+
|
|
31
|
+
- [ ] Commit final release changes on `main`.
|
|
32
|
+
- [ ] Tag `v1.0.0` on final release commit.
|
|
33
|
+
- [ ] Publish GitHub release notes from `docs/releases/v1.0.0.md`.
|
|
34
|
+
- [ ] Build and publish PyPI package.
|
|
35
|
+
|
|
36
|
+
## Next minor cadence gate (`v1.x.0`)
|
|
37
|
+
|
|
38
|
+
- [ ] Tier-1 KPI review complete (`docs/kpi_charter.md`).
|
|
39
|
+
- [ ] Credibility audit status is `pass`.
|
|
40
|
+
- [ ] Release bundle manifest has `ready_for_submission=true`.
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Vector Engine v1.0.0
|
|
2
|
+
|
|
3
|
+
## Release summary
|
|
4
|
+
|
|
5
|
+
v1.0.0 establishes Vector Engine as a reproducibility-first Python library for local retrieval experimentation, with stable API contracts, contract-validated artifacts, and publication-oriented evaluation workflows.
|
|
6
|
+
|
|
7
|
+
## Patch notes
|
|
8
|
+
|
|
9
|
+
### v1.0.2
|
|
10
|
+
|
|
11
|
+
- `retrieval_report_detailed(..., include_error_buckets=True)` now computes `zero_hit_rate@k` and `perfect_recall_rate@k` over queries that have non-empty ground truth.
|
|
12
|
+
- `no_ground_truth_rate@k` continues to use total-query denominator so missing-label prevalence stays visible.
|
|
13
|
+
- This is a semantics correction for mixed query sets (labeled + unlabeled) and does not change API names or output keys.
|
|
14
|
+
|
|
15
|
+
## Stable public surface
|
|
16
|
+
|
|
17
|
+
- Core: `VectorArray`, `VectorIndex`, `Metric`, `SearchResult`
|
|
18
|
+
- ML: `kmeans`, `KMeansResult`, `knn_classify`, `knn_regress`
|
|
19
|
+
- Training: `mine_hard_negatives`, `TripletBatch`
|
|
20
|
+
- Eval: `retrieval_report`, `retrieval_report_detailed`, `batch_metrics_summary`, `retrieval_cohort_report`
|
|
21
|
+
|
|
22
|
+
See `docs/api_stability.md` and `tests/test_api_stability.py`.
|
|
23
|
+
|
|
24
|
+
## Highlights
|
|
25
|
+
|
|
26
|
+
- Reproducibility contract pipeline via `artifact_contract_version`
|
|
27
|
+
- Dataset ingest/connectors pipeline with reproducible bundle manifests
|
|
28
|
+
- Matrix benchmarks with protocol and environment metadata
|
|
29
|
+
- Stability-study summaries with spread metrics (`std`, `cv`, intervals)
|
|
30
|
+
- Credibility audit flow for evidence-quality checks
|
|
31
|
+
|
|
32
|
+
## Evidence and artifact flow
|
|
33
|
+
|
|
34
|
+
1. benchmark matrix outputs
|
|
35
|
+
2. repeated stability outputs
|
|
36
|
+
3. publishable summary composition
|
|
37
|
+
4. credibility audit report
|
|
38
|
+
5. release bundle manifest
|
|
39
|
+
|
|
40
|
+
Recommended commands:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
44
|
+
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --real-corpus-report artifacts/real_corpus_runs/run_1.json --output artifacts/audit/credibility_audit.v1.json
|
|
45
|
+
python scripts/build_release_bundle.py --output-dir artifacts/release_bundle
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Legal and citation
|
|
49
|
+
|
|
50
|
+
- `LICENSE`
|
|
51
|
+
- `CITATION.cff`
|
|
52
|
+
|
|
53
|
+
## Caveats and scope boundaries
|
|
54
|
+
|
|
55
|
+
- This project does not claim a new ANN algorithm.
|
|
56
|
+
- Performance outcomes are configuration and hardware dependent.
|
|
57
|
+
- Private embeddings and sensitive metadata must remain outside public artifacts.
|
|
58
|
+
|
|
59
|
+
See `docs/limitations.md` and `docs/credibility_audit.md`.
|
|
60
|
+
|
|
61
|
+
## Migration notes (from v0.3.x)
|
|
62
|
+
|
|
63
|
+
- No intentional breaking changes in core public API.
|
|
64
|
+
- v1.0.0 formalizes API stability and reproducibility contracts.
|
|
65
|
+
- Existing v0.3 workflows remain usable, with additional artifact validation and release packaging.
|
|
66
|
+
|
|
67
|
+
## Reproduce release evidence
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
python3.12 -m venv .venv312
|
|
71
|
+
source .venv312/bin/activate
|
|
72
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
73
|
+
python -m pip install -c requirements/constraints-macos-arm64-py312.txt -e ".[dev,ml]"
|
|
74
|
+
python scripts/env_diagnostics.py
|
|
75
|
+
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
76
|
+
python scripts/rag_baseline.py --output-dir artifacts --k 3
|
|
77
|
+
python scripts/rag_real_corpus_eval.py --embeddings artifacts/repro_smoke/real_corpus_inputs/embeddings.npy --query-embeddings artifacts/repro_smoke/real_corpus_inputs/query_embeddings.npy --ids artifacts/repro_smoke/real_corpus_inputs/ids.json --ground-truth artifacts/repro_smoke/real_corpus_inputs/ground_truth.json --metadata artifacts/repro_smoke/real_corpus_inputs/metadata.json --output artifacts/real_corpus_runs/run_1.json --backend bruteforce --k 10 --ks 1,5,10 --loops 5
|
|
78
|
+
python scripts/stability_runs.py --embeddings artifacts/repro_smoke/real_corpus_inputs/embeddings.npy --query-embeddings artifacts/repro_smoke/real_corpus_inputs/query_embeddings.npy --ids artifacts/repro_smoke/real_corpus_inputs/ids.json --ground-truth artifacts/repro_smoke/real_corpus_inputs/ground_truth.json --metadata artifacts/repro_smoke/real_corpus_inputs/metadata.json --backend bruteforce --run-count 200 --output-dir artifacts/testing_runs
|
|
79
|
+
python benchmarks/compare_bruteforce_vs_faiss.py --mode exact --min-flat-overlap 0.99 --output artifacts/faiss_equivalence/run_1.json
|
|
80
|
+
python scripts/benchmark_matrix.py --mode exact --warmup 2 --loops 8 --seed 7 --min-flat-overlap 0.99 --output-dir artifacts/benchmark_matrix
|
|
81
|
+
python scripts/publishable_results.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --output artifacts/benchmark_matrix/publishable_results.v1.json
|
|
82
|
+
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --real-corpus-report artifacts/real_corpus_runs/run_1.json --output artifacts/audit/credibility_audit.v1.json
|
|
83
|
+
python scripts/build_release_bundle.py --output-dir artifacts/release_bundle
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Release checklist
|
|
87
|
+
|
|
88
|
+
See `docs/releases/v1.0.0-checklist.md`.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# v1.1.0 Final Checklist
|
|
2
|
+
|
|
3
|
+
## Core quality
|
|
4
|
+
|
|
5
|
+
- [x] `python -m pytest -q` completes successfully in `.venv312` created via `requirements/constraints-macos-arm64-py312.txt`. (71 passed, 1 skipped — optional faiss test, faiss not installed on this macOS arm64 host)
|
|
6
|
+
- [x] API stability tests pass (`tests/test_api_stability.py`).
|
|
7
|
+
|
|
8
|
+
## Performance evidence
|
|
9
|
+
|
|
10
|
+
- [x] Optional: exact-equivalence benchmark generated when Faiss is available (`artifacts/faiss_equivalence/run_*.json`). Faiss is unavailable on this host (macOS arm64, no faiss-cpu wheel); existing committed artifacts stand, regeneration deferred to a faiss-capable host.
|
|
11
|
+
- [x] Stability summary generated (`artifacts/testing_runs/stability_summary_*.json`).
|
|
12
|
+
- [x] Matrix summary generated (`artifacts/benchmark_matrix/matrix_summary.json`).
|
|
13
|
+
- [x] Local medium profile summary generated (`artifacts/local_profile/profile_local_summary.json`).
|
|
14
|
+
- [x] Performance table in `docs/releases/v1.1.0.md` populated from artifacts.
|
|
15
|
+
|
|
16
|
+
## Reproducibility
|
|
17
|
+
|
|
18
|
+
- [x] Protocol settings are fixed and documented (`seed`, `warmup`, `loops`, matrix configs).
|
|
19
|
+
- [x] Hardware/runtime notes captured in machine-readable artifacts.
|
|
20
|
+
- [x] Public/private artifact policy respected (no confidential embeddings committed).
|
|
21
|
+
|
|
22
|
+
## Packaging
|
|
23
|
+
|
|
24
|
+
- [x] `README.md` includes v1.1.0 install/start, ingest-to-eval, and benchmark matrix commands.
|
|
25
|
+
- [x] `docs/reproducibility.md` includes matrix workflow + artifact locations.
|
|
26
|
+
- [x] Canonical py312 macOS arm64 bootstrap command is documented in README and reproducibility docs.
|
|
27
|
+
- [x] `docs/api.md` includes v1.0 API stability contract.
|
|
28
|
+
|
|
29
|
+
## Release actions
|
|
30
|
+
|
|
31
|
+
- [ ] Commit final release changes on `main`.
|
|
32
|
+
- [ ] Tag `v1.1.0` on final release commit.
|
|
33
|
+
- [ ] Publish GitHub release notes from `docs/releases/v1.1.0.md`.
|
|
34
|
+
- [ ] Build and publish PyPI package.
|
|
35
|
+
|
|
36
|
+
## Next minor cadence gate (`v1.x.0`)
|
|
37
|
+
|
|
38
|
+
- [x] Tier-1 KPI review complete (`docs/kpi_charter.md`).
|
|
39
|
+
- [x] Credibility audit status is `pass`.
|
|
40
|
+
- [x] Release bundle manifest has `ready_for_submission=true`.
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# Vector Engine v1.1.0
|
|
2
|
+
|
|
3
|
+
## Release summary
|
|
4
|
+
|
|
5
|
+
v1.1.0 continues Vector Engine as a reproducibility-first Python library for local retrieval experimentation, with stable API contracts, contract-validated artifacts, and publication-oriented evaluation workflows.
|
|
6
|
+
|
|
7
|
+
## Patch notes
|
|
8
|
+
|
|
9
|
+
### Included fixes from v1.0.2
|
|
10
|
+
|
|
11
|
+
- `retrieval_report_detailed(..., include_error_buckets=True)` computes `zero_hit_rate@k` and `perfect_recall_rate@k` over queries that have non-empty ground truth.
|
|
12
|
+
- `no_ground_truth_rate@k` continues to use total-query denominator so missing-label prevalence stays visible.
|
|
13
|
+
- This is a semantics correction for mixed query sets (labeled + unlabeled) and does not change API names or output keys.
|
|
14
|
+
|
|
15
|
+
## Stable public surface
|
|
16
|
+
|
|
17
|
+
- Core: `VectorArray`, `VectorIndex`, `Metric`, `SearchResult`
|
|
18
|
+
- ML: `kmeans`, `KMeansResult`, `knn_classify`, `knn_regress`
|
|
19
|
+
- Training: `mine_hard_negatives`, `TripletBatch`
|
|
20
|
+
- Eval: `retrieval_report`, `retrieval_report_detailed`, `batch_metrics_summary`, `retrieval_cohort_report`
|
|
21
|
+
|
|
22
|
+
See `docs/api_stability.md` and `tests/test_api_stability.py`.
|
|
23
|
+
|
|
24
|
+
## Highlights
|
|
25
|
+
|
|
26
|
+
- Reproducibility contract pipeline via `artifact_contract_version`
|
|
27
|
+
- Dataset ingest/connectors pipeline with reproducible bundle manifests
|
|
28
|
+
- Matrix benchmarks with protocol and environment metadata
|
|
29
|
+
- Stability-study summaries with spread metrics (`std`, `cv`, intervals)
|
|
30
|
+
- Credibility audit flow for evidence-quality checks
|
|
31
|
+
|
|
32
|
+
## Performance table
|
|
33
|
+
|
|
34
|
+
Environment: macOS-arm64, Python 3.12.0, backend `bruteforce`, mode `exact`.
|
|
35
|
+
|
|
36
|
+
### Stability study (`run-count=200`, k=10)
|
|
37
|
+
|
|
38
|
+
| Metric | Mean | CV |
|
|
39
|
+
| --- | ---: | ---: |
|
|
40
|
+
| Latency p50 (ms) | 0.037 | 0.031 |
|
|
41
|
+
| Latency p95 (ms) | 0.041 | 0.070 |
|
|
42
|
+
| QPS | 313,036 | 0.036 |
|
|
43
|
+
|
|
44
|
+
All stability CVs are well under the v1.x gate (`<= 0.35`).
|
|
45
|
+
|
|
46
|
+
### Benchmark matrix (`profile=medium`, warmup=2, loops=8, seed=7)
|
|
47
|
+
|
|
48
|
+
| Config | n | d | nq | k | Latency p95 (ms) | QPS |
|
|
49
|
+
| --- | ---: | ---: | ---: | ---: | ---: | ---: |
|
|
50
|
+
| s_small | 5,000 | 64 | 100 | 10 | 17.98 | 8,041 |
|
|
51
|
+
| m_balanced | 10,000 | 128 | 200 | 10 | 31.64 | 6,978 |
|
|
52
|
+
| l_wide | 25,000 | 256 | 300 | 20 | 146.23 | 2,377 |
|
|
53
|
+
|
|
54
|
+
`overlap_vs_bruteforce = 1.0` for all configs (exact mode, self-comparison against bruteforce).
|
|
55
|
+
|
|
56
|
+
Source artifacts: `artifacts/testing_runs/stability_summary_bruteforce_200.json`, `artifacts/benchmark_matrix/matrix_summary.json`, `artifacts/benchmark_matrix/publishable_results.v1.json`.
|
|
57
|
+
|
|
58
|
+
## Evidence and artifact flow
|
|
59
|
+
|
|
60
|
+
1. benchmark matrix outputs
|
|
61
|
+
2. repeated stability outputs
|
|
62
|
+
3. publishable summary composition
|
|
63
|
+
4. credibility audit report
|
|
64
|
+
5. release bundle manifest
|
|
65
|
+
|
|
66
|
+
Recommended commands:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
70
|
+
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --real-corpus-report artifacts/real_corpus_runs/run_1.json --output artifacts/audit/credibility_audit.v1.json
|
|
71
|
+
python scripts/build_release_bundle.py --output-dir artifacts/release_bundle
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Legal and citation
|
|
75
|
+
|
|
76
|
+
- `LICENSE`
|
|
77
|
+
- `CITATION.cff`
|
|
78
|
+
|
|
79
|
+
## Caveats and scope boundaries
|
|
80
|
+
|
|
81
|
+
- This project does not claim a new ANN algorithm.
|
|
82
|
+
- Performance outcomes are configuration and hardware dependent.
|
|
83
|
+
- Private embeddings and sensitive metadata must remain outside public artifacts.
|
|
84
|
+
|
|
85
|
+
See `docs/limitations.md` and `docs/credibility_audit.md`.
|
|
86
|
+
|
|
87
|
+
## Migration notes (from v0.3.x)
|
|
88
|
+
|
|
89
|
+
- No intentional breaking changes in core public API.
|
|
90
|
+
- v1.1.0 continues API stability and reproducibility contracts.
|
|
91
|
+
- Existing v0.3 workflows remain usable, with additional artifact validation and release packaging.
|
|
92
|
+
|
|
93
|
+
## Reproduce release evidence
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
python3.12 -m venv .venv312
|
|
97
|
+
source .venv312/bin/activate
|
|
98
|
+
python -m pip install --upgrade pip setuptools wheel
|
|
99
|
+
python -m pip install -c requirements/constraints-macos-arm64-py312.txt -e ".[dev,ml]"
|
|
100
|
+
python scripts/env_diagnostics.py
|
|
101
|
+
python scripts/repro_smoke.py --output-dir artifacts/repro_smoke
|
|
102
|
+
python scripts/rag_baseline.py --output-dir artifacts --k 3
|
|
103
|
+
python scripts/rag_real_corpus_eval.py --embeddings artifacts/repro_smoke/real_corpus_inputs/embeddings.npy --query-embeddings artifacts/repro_smoke/real_corpus_inputs/query_embeddings.npy --ids artifacts/repro_smoke/real_corpus_inputs/ids.json --ground-truth artifacts/repro_smoke/real_corpus_inputs/ground_truth.json --metadata artifacts/repro_smoke/real_corpus_inputs/metadata.json --output artifacts/real_corpus_runs/run_1.json --backend bruteforce --k 10 --ks 1,5,10 --loops 5
|
|
104
|
+
python scripts/stability_runs.py --embeddings artifacts/repro_smoke/real_corpus_inputs/embeddings.npy --query-embeddings artifacts/repro_smoke/real_corpus_inputs/query_embeddings.npy --ids artifacts/repro_smoke/real_corpus_inputs/ids.json --ground-truth artifacts/repro_smoke/real_corpus_inputs/ground_truth.json --metadata artifacts/repro_smoke/real_corpus_inputs/metadata.json --backend bruteforce --run-count 200 --output-dir artifacts/testing_runs
|
|
105
|
+
python benchmarks/compare_bruteforce_vs_faiss.py --mode exact --min-flat-overlap 0.99 --output artifacts/faiss_equivalence/run_1.json
|
|
106
|
+
python scripts/benchmark_matrix.py --mode exact --warmup 2 --loops 8 --seed 7 --min-flat-overlap 0.99 --output-dir artifacts/benchmark_matrix
|
|
107
|
+
python scripts/publishable_results.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --output artifacts/benchmark_matrix/publishable_results.v1.json
|
|
108
|
+
python scripts/credibility_audit.py --matrix-summary artifacts/benchmark_matrix/matrix_summary.json --stability-summary artifacts/testing_runs/stability_summary_bruteforce_200.json --publishable-summary artifacts/benchmark_matrix/publishable_results.v1.json --real-corpus-report artifacts/real_corpus_runs/run_1.json --output artifacts/audit/credibility_audit.v1.json
|
|
109
|
+
python scripts/build_release_bundle.py --output-dir artifacts/release_bundle
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Release checklist
|
|
113
|
+
|
|
114
|
+
See `docs/releases/v1.1.0-checklist.md`.
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Vector Engine v1.1.1
|
|
2
|
+
|
|
3
|
+
## Release summary
|
|
4
|
+
|
|
5
|
+
v1.1.1 is a packaging and documentation patch on top of v1.1.0. No public API surface, behavior, or evidence artifacts changed; see `docs/releases/v1.1.0.md` for the full evidence package (stability, matrix, and reproducibility contracts, which remain valid for this patch).
|
|
6
|
+
|
|
7
|
+
## Changes
|
|
8
|
+
|
|
9
|
+
- Added PyPI `classifiers` and `[project.urls]` (Homepage, Repository, Issues, Documentation) to `pyproject.toml`.
|
|
10
|
+
- Closed out the v1.1.0 release checklist and populated the performance table in `docs/releases/v1.1.0.md` from regenerated evidence artifacts.
|
|
11
|
+
- Colab demo notebooks now install standalone via `pip` and link directly from GitHub instead of static Drive copies.
|
|
12
|
+
- Fixed a build failure under newer setuptools caused by a redundant `License ::` classifier conflicting with the SPDX `license = "MIT"` field (PEP 639).
|
|
13
|
+
|
|
14
|
+
## Stable public surface
|
|
15
|
+
|
|
16
|
+
Unchanged from v1.1.0. See `docs/api_stability.md` and `tests/test_api_stability.py`.
|
|
17
|
+
|
|
18
|
+
## Legal and citation
|
|
19
|
+
|
|
20
|
+
- `LICENSE`
|
|
21
|
+
- `CITATION.cff`
|