/ haystack / components / evaluators / __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      "answer_exact_match": ["AnswerExactMatchEvaluator"],
12      "context_relevance": ["ContextRelevanceEvaluator"],
13      "document_map": ["DocumentMAPEvaluator"],
14      "document_mrr": ["DocumentMRREvaluator"],
15      "document_ndcg": ["DocumentNDCGEvaluator"],
16      "document_recall": ["DocumentRecallEvaluator"],
17      "faithfulness": ["FaithfulnessEvaluator"],
18      "llm_evaluator": ["LLMEvaluator"],
19      "sas_evaluator": ["SASEvaluator"],
20  }
21  
22  if TYPE_CHECKING:
23      from .answer_exact_match import AnswerExactMatchEvaluator as AnswerExactMatchEvaluator
24      from .context_relevance import ContextRelevanceEvaluator as ContextRelevanceEvaluator
25      from .document_map import DocumentMAPEvaluator as DocumentMAPEvaluator
26      from .document_mrr import DocumentMRREvaluator as DocumentMRREvaluator
27      from .document_ndcg import DocumentNDCGEvaluator as DocumentNDCGEvaluator
28      from .document_recall import DocumentRecallEvaluator as DocumentRecallEvaluator
29      from .faithfulness import FaithfulnessEvaluator as FaithfulnessEvaluator
30      from .llm_evaluator import LLMEvaluator as LLMEvaluator
31      from .sas_evaluator import SASEvaluator as SASEvaluator
32  
33  else:
34      sys.modules[__name__] = LazyImporter(name=__name__, module_file=__file__, import_structure=_import_structure)