feat: configure vector-io provider with an embedding model

Signed-off-by: Mustafa Elbehery <melbeher@redhat.com>
This commit is contained in:
Mustafa Elbehery 2025-07-31 13:07:03 +02:00
parent 1f0766308d
commit d8f013b35a
29 changed files with 228 additions and 24 deletions

View file

@ -43,6 +43,7 @@ See [Chroma's documentation](https://docs.trychroma.com/docs/overview/introducti
|-------|------|----------|---------|-------------|
| `db_path` | `<class 'str'>` | No | PydanticUndefined | |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -38,6 +38,7 @@ more details about Faiss in general.
| Field | Type | Required | Default | Description |
|-------|------|----------|---------|-------------|
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -9,6 +9,7 @@ Meta's reference implementation of a vector database.
| Field | Type | Required | Default | Description |
|-------|------|----------|---------|-------------|
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -13,6 +13,7 @@ Please refer to the remote provider documentation.
| `db_path` | `<class 'str'>` | No | PydanticUndefined | |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend (SQLite only for now) |
| `consistency_level` | `<class 'str'>` | No | Strong | The consistency level of the Milvus server |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -207,6 +207,7 @@ See [sqlite-vec's GitHub repo](https://github.com/asg017/sqlite-vec/tree/main) f
|-------|------|----------|---------|-------------|
| `db_path` | `<class 'str'>` | No | PydanticUndefined | Path to the SQLite database file |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend (SQLite only for now) |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -12,6 +12,7 @@ Please refer to the sqlite-vec provider documentation.
|-------|------|----------|---------|-------------|
| `db_path` | `<class 'str'>` | No | PydanticUndefined | Path to the SQLite database file |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend (SQLite only for now) |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -42,6 +42,7 @@ See [Chroma's documentation](https://docs.trychroma.com/docs/overview/introducti
|-------|------|----------|---------|-------------|
| `url` | `str \| None` | No | PydanticUndefined | |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -115,6 +115,7 @@ For more details on TLS configuration, refer to the [TLS setup guide](https://mi
| `token` | `str \| None` | No | PydanticUndefined | The token of the Milvus server |
| `consistency_level` | `<class 'str'>` | No | Strong | The consistency level of the Milvus server |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | Config for KV store backend |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
| `config` | `dict` | No | {} | This configuration allows additional fields to be passed through to the underlying Milvus client. See the [Milvus](https://milvus.io/docs/install-overview.md) documentation for more details about Milvus in general. |
> **Note**: This configuration class accepts additional fields beyond those listed above. You can pass any additional configuration options that will be forwarded to the underlying provider.

View file

@ -41,6 +41,7 @@ See [PGVector's documentation](https://github.com/pgvector/pgvector) for more de
| `user` | `str \| None` | No | postgres | |
| `password` | `str \| None` | No | mysecretpassword | |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig, annotation=NoneType, required=False, default='sqlite', discriminator='type'` | No | | Config for KV store backend (SQLite only for now) |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -21,6 +21,7 @@ Please refer to the inline provider documentation.
| `timeout` | `int \| None` | No | | |
| `host` | `str \| None` | No | | |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig` | No | sqlite | |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration

View file

@ -40,6 +40,7 @@ See [Weaviate's documentation](https://weaviate.io/developers/weaviate) for more
| `weaviate_api_key` | `str \| None` | No | | The API key for the Weaviate instance |
| `weaviate_cluster_url` | `str \| None` | No | localhost:8080 | The URL of the Weaviate cluster |
| `kvstore` | `utils.kvstore.config.RedisKVStoreConfig \| utils.kvstore.config.SqliteKVStoreConfig \| utils.kvstore.config.PostgresKVStoreConfig \| utils.kvstore.config.MongoDBKVStoreConfig, annotation=NoneType, required=False, default='sqlite', discriminator='type'` | No | | Config for KV store backend (SQLite only for now) |
| `embedding` | `utils.vector_io.embedding_config.EmbeddingConfig \| None` | No | | Default embedding configuration for this provider. When specified, vector databases created with this provider will use these embedding settings as defaults. |
## Sample Configuration