Add Similarity Search optimization guides - #20
Conversation
- Remove BIOS and hardware recommendation sections - Add high-level LVQ and LeanVec description - Replace benchmarks with data from Redis tech dive blog - Mention SVS can be used directly, integrations in progress - Remove contributing section - Focus on compression selection and performance data
- Add FAISS optimization guide with SVS index types - Cover IndexSVSVamana, IndexSVSVamanaLVQ, IndexSVSVamanaLeanVec - Include factory string format and examples - Add compression selection guide - Include benchmark data from Intel SVS - Update overview and main README
- Remove benchmark section (no official FAISS SVS performance data) - Update overview to remove specific performance claims - Clarify Intel-only requirement in FAQ - Keep technical how-to guidance
- Add licensing warning for LVQ/LeanVec (AGPLv3/SSPLv1 incompatible) - Add language spec to FAISS factory string code block
ahuber21
left a comment
There was a problem hiding this comment.
Dropping my change request to not block anything while I'm OOO. Still would like to see the FAISS doc sorted out though.
|
@napetrov Do you plan to drop FAISS document in this PR? |
yes, removed. Would give opportunity to look on this pr for couple other people |
- Fix SVS intro: 'is integrated' instead of 'working on integrating' - Clarify Level 2 compression: LVQ encodes residuals, LeanVec encodes full dimensionality - Fix LeanVec4x8 description with reduced/full dimensionality detail - Fix DISTANCE_METRIC guidance: L2 for normalized embeddings - Add 'slower build' note to CONSTRUCTION_WINDOW_SIZE - Fix compression ratios: LVQ4x8 ~2.5x, LeanVec notation with f factor - Add LeanVec dimensionality reduction factor explanation - Remove bash markers from Redis command blocks - Fix SVS-VAMANA parameter count (14 → 12) in LeanVec example - Remove EPSILON row (not SVS-specific, range search only) - Fix attribution: Redis benchmarking (authors are Redis) - Fix precision metric: remove '+' (calibrated value) - Clarify SVS-VAMANA effectiveness: 'improving throughput' Co-authored-by: mihaic <mihaic@users.noreply.github.com>
mihaic
left a comment
There was a problem hiding this comment.
A few of my earlier suggestions are unaddressed and there is still a reference to the deleted Faiss document.
Co-authored-by: Mihai Capotă <mihai@mihaic.ro>
- Remove 'bash' code fence marker from FT.SEARCH example - Remove SEARCH_BUFFER_CAPACITY row (not SVS-specific, range search only)
mihaic
left a comment
There was a problem hiding this comment.
I marked some previous comments as still relevant. Please have a look.
… Redis OS link, reorder FAQ steps
|
Addressed remaining review comments in commit 82c959e:
|
|
Done. Added REDUCE back to the table in commit 0ab8dbb. |
aguerreb
left a comment
There was a problem hiding this comment.
Looks good overall, made a few comments.
- Update intro: add LVQ/LeanVec mention in Redis intro sentence - Add Vamana algorithm reference (Subramanya et al., NeurIPS 2019) - GRAPH_MAX_DEGREE: add note 'Equivalent to HNSW M x 2' - Remove upper bound 3072: change to '768+ dimensions' - Benchmark LVQ8 note: clarify LeanVec recommended for Cohere/DBpedia in production - Ingestion trade-offs: replace 'compression overhead' with broader description - FAQ recall steps: swap steps 2 and 3 (REDUCE before TRAINING_THRESHOLD) - FAQ ARM: clarify HNSW preferable due to both faster search and ingestion
|
@jasukhar - i think we ready to merge this |
Summary
This PR adds documentation for optimizing vector similarity search workloads on Intel Xeon processors.
New Content
software/similarity-search/README.md— Overview of Intel's compression technologies (LVQ, LeanVec) for vector searchsoftware/similarity-search/redis/README.md— Complete guide for Redis SVS-VAMANA configuration and tuningKey Topics Covered
Benchmarks Highlighted
Based on Redis and Intel benchmarking:
Related: Intel Scalable Vector Search library — https://intel.github.io/ScalableVectorSearch/