diff --git a/haystack/utils/filters.py b/haystack/utils/filters.py index a24affaf1..c8a3133e3 100644 --- a/haystack/utils/filters.py +++ b/haystack/utils/filters.py @@ -16,9 +16,9 @@ def raise_on_invalid_filter_syntax(filters: Optional[Dict[str, Any]] = None): """ Raise an error if the filter syntax is invalid. """ - if filters and "operator" not in filters and "conditions" not in filters: + if filters and ("operator" not in filters or "conditions" not in filters): msg = "Invalid filter syntax. See https://docs.haystack.deepset.ai/docs/metadata-filtering for details." - raise ValueError(msg) + raise FilterError(msg) def document_matches_filter(filters: Dict[str, Any], document: Document) -> bool: