Coverage for haystack/utils/__init__.py: 100%
5 statements
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 13:53 +0000
« prev ^ index » next coverage.py v7.15.4, created at 2026-08-21 13:53 +0000
1# SPDX-FileCopyrightText: 2022-present deepset GmbH <info@deepset.ai>
2#
3# SPDX-License-Identifier: Apache-2.0
5import sys
6from typing import TYPE_CHECKING
8from lazy_imports import LazyImporter
10_import_structure = {
11 "auth": ["Secret", "deserialize_secrets_inplace"],
12 "azure": ["default_azure_ad_token_provider"],
13 "base_serialization": ["_deserialize_value_with_schema", "_serialize_value_with_schema"],
14 "callable_serialization": ["deserialize_callable", "serialize_callable"],
15 "device": ["ComponentDevice", "Device", "DeviceMap", "DeviceType"],
16 "deserialization": ["deserialize_chatgenerator_inplace", "deserialize_component_inplace"],
17 "filters": ["document_matches_filter"],
18 "jinja2_extensions": ["Jinja2TimeExtension"],
19 "jupyter": ["is_in_jupyter"],
20 "misc": ["expit", "expand_page_range"],
21 "requests_utils": ["request_with_retry", "async_request_with_retry"],
22 "type_serialization": ["deserialize_type", "serialize_type"],
23}
25if TYPE_CHECKING:
26 from .auth import Secret as Secret
27 from .auth import deserialize_secrets_inplace as deserialize_secrets_inplace
28 from .azure import default_azure_ad_token_provider as default_azure_ad_token_provider
29 from .base_serialization import _deserialize_value_with_schema as _deserialize_value_with_schema
30 from .base_serialization import _serialize_value_with_schema as _serialize_value_with_schema
31 from .callable_serialization import deserialize_callable as deserialize_callable
32 from .callable_serialization import serialize_callable as serialize_callable
33 from .deserialization import deserialize_chatgenerator_inplace as deserialize_chatgenerator_inplace
34 from .deserialization import deserialize_component_inplace as deserialize_component_inplace
35 from .device import ComponentDevice as ComponentDevice
36 from .device import Device as Device
37 from .device import DeviceMap as DeviceMap
38 from .device import DeviceType as DeviceType
39 from .filters import document_matches_filter as document_matches_filter
40 from .jinja2_extensions import Jinja2TimeExtension as Jinja2TimeExtension
41 from .jupyter import is_in_jupyter as is_in_jupyter
42 from .misc import expand_page_range as expand_page_range
43 from .misc import expit as expit
44 from .requests_utils import async_request_with_retry as async_request_with_retry
45 from .requests_utils import request_with_retry as request_with_retry
46 from .type_serialization import deserialize_type as deserialize_type
47 from .type_serialization import serialize_type as serialize_type
48else:
49 sys.modules[__name__] = LazyImporter(name=__name__, module_file=__file__, import_structure=_import_structure)