From 5ec6f5dcff5dded95bc33c3c4b0b86b31fb06126 Mon Sep 17 00:00:00 2001 From: Francisco Javier Arceo Date: Tue, 25 Nov 2025 23:24:07 -0500 Subject: [PATCH] raise when querying without config Signed-off-by: Francisco Javier Arceo --- .../providers/utils/memory/vector_store.py | 5 +++-- .../vector_io/test_vector_io_openai_vector_stores.py | 12 +++--------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/llama_stack/providers/utils/memory/vector_store.py b/src/llama_stack/providers/utils/memory/vector_store.py index e22075a5f..e00537c85 100644 --- a/src/llama_stack/providers/utils/memory/vector_store.py +++ b/src/llama_stack/providers/utils/memory/vector_store.py @@ -296,8 +296,9 @@ class VectorStoreWithIndex: async def _rewrite_query_for_file_search(self, query: str) -> str: """Rewrite a search query using the globally configured LLM model for better retrieval results.""" if not rewrite_query_config._DEFAULT_REWRITE_QUERY_MODEL: - log.debug("No default query rewriting model configured, using original query") - return query + raise ValueError( + "Query rewriting requested but not configured. Please configure rewrite_query_params.model in vector_stores config." + ) model_id = f"{rewrite_query_config._DEFAULT_REWRITE_QUERY_MODEL.provider_id}/{rewrite_query_config._DEFAULT_REWRITE_QUERY_MODEL.model_id}" diff --git a/tests/unit/providers/vector_io/test_vector_io_openai_vector_stores.py b/tests/unit/providers/vector_io/test_vector_io_openai_vector_stores.py index 4588fe7e5..e0ae568c5 100644 --- a/tests/unit/providers/vector_io/test_vector_io_openai_vector_stores.py +++ b/tests/unit/providers/vector_io/test_vector_io_openai_vector_stores.py @@ -1325,7 +1325,7 @@ async def test_query_expansion_functionality(vector_io_adapter): assert chat_call_args.max_tokens == 150 assert chat_call_args.temperature == 0.7 - # Test 2: No query expansion when no global model is configured + # Test 2: Error when query rewriting is requested but no global model is configured mock_inference_api.reset_mock() mock_index.reset_mock() @@ -1333,14 +1333,8 @@ async def test_query_expansion_functionality(vector_io_adapter): set_default_rewrite_query_config(None) params = {"rewrite_query": True, "max_chunks": 5} - result2 = await vector_store_with_index.query_chunks("test query", params) - - # Verify chat completion was NOT called - mock_inference_api.openai_chat_completion.assert_not_called() - # But normal flow should still work - mock_inference_api.openai_embeddings.assert_called_once() - mock_index.query_vector.assert_called_once() - assert result2 == mock_response + with pytest.raises(ValueError, match="Query rewriting requested but not configured"): + await vector_store_with_index.query_chunks("test query", params) # Test 3: Normal behavior without rewrite_query parameter mock_inference_api.reset_mock()