Skip to content

Conversation

ofekshenawa
Copy link
Collaborator

Implements comprehensive support for the VAMANA vector index algorithm introduced in Redis 8.2+.

Key Changes

  • Core Implementation : Added FTVamanaOptions struct with full parameter support (distance metrics, vector types, compression, advanced tuning)

  • Feature Set : Supports L2/COSINE/IP distance metrics, FLOAT16/FLOAT32 vector types, LVQ8 compression, construction window size and graph max degree

  • Tests: Includes test suite covering VAMANA functionality, distance metrics, compression scenarios, and parameter combinations

Copy link
Member

@ndyakov ndyakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ofekshenawa thank you for contributing this. I can see there are panics that were in the code even before we added this change, but let's make sure we don't panic during the execution of a command. Maybe the arguments were dynamically build, and returning an error should be sufficient way of noting that they are wrong, panicking will stop the whole execution of the application (if not recovered) and we should not do that.

@ofekshenawa ofekshenawa force-pushed the add-vamana-vector-type-to-search branch from a424291 to 8c00693 Compare August 1, 2025 10:13
Copy link
Member

@ndyakov ndyakov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me

@ndyakov ndyakov added the feature label Aug 1, 2025
@ndyakov ndyakov merged commit 3c85d09 into master Aug 1, 2025
20 checks passed
ofekshenawa added a commit that referenced this pull request Aug 10, 2025
* Add VAMANA vector type to redisearch

* Change to svs-vamana vector type && remove panics from search module

* fix tests

* fix tests

* fix tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants