From 60780ce8978e7a6f834b4055192383fcd60b5fce Mon Sep 17 00:00:00 2001 From: ZanSara Date: Thu, 11 Jan 2024 12:33:26 +0100 Subject: [PATCH] feat: Tweak `CacheChecker` output type (#6719) * specify cache checker output type * (de)serialization * tests * add default value for type * reno * mypy * feedback * reduce diff * reduce diff * reno --- haystack/components/caching/cache_checker.py | 2 +- .../notes/cache_checker_output_type-0b05e75ca41aab61.yaml | 3 +++ test/components/caching/test_url_cache_checker.py | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/cache_checker_output_type-0b05e75ca41aab61.yaml diff --git a/haystack/components/caching/cache_checker.py b/haystack/components/caching/cache_checker.py index 3ef71e25f..75b97d6f6 100644 --- a/haystack/components/caching/cache_checker.py +++ b/haystack/components/caching/cache_checker.py @@ -57,7 +57,7 @@ class CacheChecker: data["init_parameters"]["document_store"] = docstore return default_from_dict(cls, data) - @component.output_types(hits=List[Document], misses=List[Any]) + @component.output_types(hits=List[Document], misses=List) def run(self, items: List[Any]): """ Checks if any document associated with the specified field is already present in the store. If matching documents diff --git a/releasenotes/notes/cache_checker_output_type-0b05e75ca41aab61.yaml b/releasenotes/notes/cache_checker_output_type-0b05e75ca41aab61.yaml new file mode 100644 index 000000000..3c14d75c9 --- /dev/null +++ b/releasenotes/notes/cache_checker_output_type-0b05e75ca41aab61.yaml @@ -0,0 +1,3 @@ +--- +enhancements: + - Modify the output type of `CacheChecker` from `List[Any]` to `List` to make it possible to connect it in a Pipeline. diff --git a/test/components/caching/test_url_cache_checker.py b/test/components/caching/test_url_cache_checker.py index b4d9b7717..e026acd56 100644 --- a/test/components/caching/test_url_cache_checker.py +++ b/test/components/caching/test_url_cache_checker.py @@ -6,7 +6,7 @@ from haystack.document_stores.in_memory import InMemoryDocumentStore from haystack.components.caching.cache_checker import CacheChecker -class TestUrlCacheChecker: +class TestCacheChecker: def test_to_dict(self): mocked_docstore_class = document_store_class("MockedDocumentStore") component = CacheChecker(document_store=mocked_docstore_class(), cache_field="url")