/ haystack / components / generators / chat / __init__.py
__init__.py
 1  # SPDX-FileCopyrightText: 2022-present deepset GmbH <info@deepset.ai>
 2  #
 3  # SPDX-License-Identifier: Apache-2.0
 4  
 5  import sys
 6  from typing import TYPE_CHECKING
 7  
 8  from lazy_imports import LazyImporter
 9  
10  _import_structure = {
11      "openai": ["OpenAIChatGenerator"],
12      "openai_responses": ["OpenAIResponsesChatGenerator"],
13      "azure": ["AzureOpenAIChatGenerator"],
14      "azure_responses": ["AzureOpenAIResponsesChatGenerator"],
15      "hugging_face_local": ["HuggingFaceLocalChatGenerator"],
16      "hugging_face_api": ["HuggingFaceAPIChatGenerator"],
17      "fallback": ["FallbackChatGenerator"],
18      "llm": ["LLM"],
19  }
20  
21  if TYPE_CHECKING:
22      from .azure import AzureOpenAIChatGenerator as AzureOpenAIChatGenerator
23      from .azure_responses import AzureOpenAIResponsesChatGenerator as AzureOpenAIResponsesChatGenerator
24      from .fallback import FallbackChatGenerator as FallbackChatGenerator
25      from .hugging_face_api import HuggingFaceAPIChatGenerator as HuggingFaceAPIChatGenerator
26      from .hugging_face_local import HuggingFaceLocalChatGenerator as HuggingFaceLocalChatGenerator
27      from .llm import LLM as LLM
28      from .openai import OpenAIChatGenerator as OpenAIChatGenerator
29      from .openai_responses import OpenAIResponsesChatGenerator as OpenAIResponsesChatGenerator
30  
31  else:
32      sys.modules[__name__] = LazyImporter(name=__name__, module_file=__file__, import_structure=_import_structure)