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

1# SPDX-FileCopyrightText: 2022-present deepset GmbH <info@deepset.ai> 

2# 

3# SPDX-License-Identifier: Apache-2.0 

4 

5import sys 

6from typing import TYPE_CHECKING 

7 

8from lazy_imports import LazyImporter 

9 

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} 

24 

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)