Skip to content

RedisVectorStore : add configuration elements for schema description, disabling the TEXT index of the content_text #1846

Open
@Aelentel

Description

@Aelentel

Expected Behavior

add properties to define schema outside of the TEXT and VECTOR that are created by default.
add properties to disable the full text search index that is taking a lot of redis space and may be unused in certain use cases.

Current Behavior

at the moment (version 1.0.0-M4)

  • the configuration class RedisVectorStoreProperties doesn't enable to define an indexing schema.
  • the indexing schema create a TEXT index on the text content of the document

Proposed Enhancements

modify the code of RedisVectorStore to allow schema metadata injection by configuration.
add capability to disable the default TEXT index on the content of the document
enable more easier subclassing by not relying on private accessor and use getter on the configuration helper classes.

Context

I'm indexing embeddings for language teaching contents that would be retrieved by multiples search axis.

  • embedding vector similarity (of course)
  • specific business constrains : content language, accessibility constrains and so on.

as such I'm not interested in the full text search and only interested in the capability to search by vector similarity and additional TAG indexes.

the result on my side is that i had to bypass the Autoconfigure and copy/paste the whole code of the RedisVectorStore class just alter the index creation and remove the TEXT index on the content_text, and inject the RedisVectorStoreConfig into the modified RedisVectorStore.

even if it's my own use case and that a bit of work was enough to get the expected result, this could help solve more easily a lot of use cases.

i'm not sure if this issue should be split in multiples sub issue for each points.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions