diff --git a/llama_stack/providers/inline/tool_runtime/rag/memory.py b/llama_stack/providers/inline/tool_runtime/rag/memory.py index b1204e651..9b7b37fdf 100644 --- a/llama_stack/providers/inline/tool_runtime/rag/memory.py +++ b/llama_stack/providers/inline/tool_runtime/rag/memory.py @@ -129,7 +129,7 @@ class MemoryToolRuntimeImpl(ToolsProtocolPrivate, ToolRuntime, RAGToolRuntime): scores = [s for r in results for s in r.scores] if not chunks: - raise ValueError("The knowledge search tool did not find any information relevant to the query.") + return RAGQueryResult(content=None) # sort by score chunks, scores = zip(*sorted(zip(chunks, scores, strict=False), key=lambda x: x[1], reverse=True), strict=False) # type: ignore diff --git a/tests/unit/rag/test_rag_query.py b/tests/unit/rag/test_rag_query.py index e3f3f3ca5..b9fd8cca4 100644 --- a/tests/unit/rag/test_rag_query.py +++ b/tests/unit/rag/test_rag_query.py @@ -4,11 +4,10 @@ # This source code is licensed under the terms described in the LICENSE file in # the root directory of this source tree. -from unittest.mock import AsyncMock, MagicMock +from unittest.mock import MagicMock import pytest -from llama_stack.apis.vector_io import QueryChunksResponse from llama_stack.providers.inline.tool_runtime.rag.memory import MemoryToolRuntimeImpl @@ -18,16 +17,3 @@ class TestRagQuery: rag_tool = MemoryToolRuntimeImpl(config=MagicMock(), vector_io_api=MagicMock(), inference_api=MagicMock()) with pytest.raises(ValueError): await rag_tool.query(content=MagicMock(), vector_db_ids=[]) - - @pytest.mark.asyncio - async def test_query_raises_on_no_chunks_found(self): - vector_io_api = MagicMock() - vector_io_api.query_chunks = AsyncMock(return_value=QueryChunksResponse(chunks=[], scores=[])) - - rag_tool = MemoryToolRuntimeImpl( - config=MagicMock(), - vector_io_api=vector_io_api, - inference_api=MagicMock(), - ) - with pytest.raises(ValueError): - await rag_tool.query(content=MagicMock(), vector_db_ids=["test_db"])