From 820ec43eed75a0e1e506fde246b7b75cddc69b34 Mon Sep 17 00:00:00 2001 From: Habeb Nawatha <109216430+HabebNawatha@users.noreply.github.com> Date: Thu, 14 Aug 2025 17:09:59 +0300 Subject: [PATCH 1/3] fix: make provider_id a required field in vector DB registration --- llama_stack/apis/vector_dbs/vector_dbs.py | 2 +- llama_stack/core/routing_tables/vector_dbs.py | 11 +---------- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/llama_stack/apis/vector_dbs/vector_dbs.py b/llama_stack/apis/vector_dbs/vector_dbs.py index 47820fa0f..47adf2a12 100644 --- a/llama_stack/apis/vector_dbs/vector_dbs.py +++ b/llama_stack/apis/vector_dbs/vector_dbs.py @@ -90,8 +90,8 @@ class VectorDBs(Protocol): self, vector_db_id: str, embedding_model: str, + provider_id: str, embedding_dimension: int | None = 384, - provider_id: str | None = None, vector_db_name: str | None = None, provider_vector_db_id: str | None = None, ) -> VectorDB: diff --git a/llama_stack/core/routing_tables/vector_dbs.py b/llama_stack/core/routing_tables/vector_dbs.py index 00f71b4fe..ac02d8d14 100644 --- a/llama_stack/core/routing_tables/vector_dbs.py +++ b/llama_stack/core/routing_tables/vector_dbs.py @@ -47,21 +47,12 @@ class VectorDBsRoutingTable(CommonRoutingTableImpl, VectorDBs): self, vector_db_id: str, embedding_model: str, + provider_id: str, embedding_dimension: int | None = 384, - provider_id: str | None = None, provider_vector_db_id: str | None = None, vector_db_name: str | None = None, ) -> VectorDB: provider_vector_db_id = provider_vector_db_id or vector_db_id - if provider_id is None: - if len(self.impls_by_provider_id) > 0: - provider_id = list(self.impls_by_provider_id.keys())[0] - if len(self.impls_by_provider_id) > 1: - logger.warning( - f"No provider specified and multiple providers available. Arbitrarily selected the first provider {provider_id}." - ) - else: - raise ValueError("No provider available. Please configure a vector_io provider.") model = await lookup_model(self, embedding_model) if model is None: raise ModelNotFoundError(embedding_model) From e6a5ad5e35ed76afad4f378019b61420658957a3 Mon Sep 17 00:00:00 2001 From: Habeb Nawatha <109216430+HabebNawatha@users.noreply.github.com> Date: Thu, 11 Sep 2025 11:57:07 +0300 Subject: [PATCH 2/3] chore(pre-commit): apply codegen and permissions fixes --- docs/_static/llama-stack-spec.html | 11 ++++++----- docs/_static/llama-stack-spec.yaml | 7 ++++--- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/docs/_static/llama-stack-spec.html b/docs/_static/llama-stack-spec.html index 7cb2a73f3..34583cca8 100644 --- a/docs/_static/llama-stack-spec.html +++ b/docs/_static/llama-stack-spec.html @@ -16632,14 +16632,14 @@ "type": "string", "description": "The embedding model to use." }, - "embedding_dimension": { - "type": "integer", - "description": "The dimension of the embedding model." - }, "provider_id": { "type": "string", "description": "The identifier of the provider." }, + "embedding_dimension": { + "type": "integer", + "description": "The dimension of the embedding model." + }, "vector_db_name": { "type": "string", "description": "The name of the vector database." @@ -16652,7 +16652,8 @@ "additionalProperties": false, "required": [ "vector_db_id", - "embedding_model" + "embedding_model", + "provider_id" ], "title": "RegisterVectorDbRequest" }, diff --git a/docs/_static/llama-stack-spec.yaml b/docs/_static/llama-stack-spec.yaml index 25089868c..f9c7abe7d 100644 --- a/docs/_static/llama-stack-spec.yaml +++ b/docs/_static/llama-stack-spec.yaml @@ -12367,12 +12367,12 @@ components: embedding_model: type: string description: The embedding model to use. - embedding_dimension: - type: integer - description: The dimension of the embedding model. provider_id: type: string description: The identifier of the provider. + embedding_dimension: + type: integer + description: The dimension of the embedding model. vector_db_name: type: string description: The name of the vector database. @@ -12384,6 +12384,7 @@ components: required: - vector_db_id - embedding_model + - provider_id title: RegisterVectorDbRequest RerankRequest: type: object From fa7144163ee0b6ebf50216095ebe9f4d8b0e1f2c Mon Sep 17 00:00:00 2001 From: Habeb Nawatha <109216430+HabebNawatha@users.noreply.github.com> Date: Fri, 12 Sep 2025 12:26:22 +0300 Subject: [PATCH 3/3] refactor(vector-db): remove redundant fallback assignment for provider_vector_db_id --- llama_stack/core/routing_tables/vector_dbs.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/llama_stack/core/routing_tables/vector_dbs.py b/llama_stack/core/routing_tables/vector_dbs.py index 242d257f8..d5d27579f 100644 --- a/llama_stack/core/routing_tables/vector_dbs.py +++ b/llama_stack/core/routing_tables/vector_dbs.py @@ -52,8 +52,6 @@ class VectorDBsRoutingTable(CommonRoutingTableImpl, VectorDBs): provider_vector_db_id: str | None = None, vector_db_name: str | None = None, ) -> VectorDB: - provider_vector_db_id = provider_vector_db_id or vector_db_id - model = await lookup_model(self, embedding_model) if model is None: raise ModelNotFoundError(embedding_model)