跳到内容

合成器

BaseSynthesizer dataclass

BaseSynthesizer(name: str = '', llm: BaseRagasLLM = llm_factory())

基类:ABC, Generic[Scenario], PromptMixin

合成场景和样本的基类。

default_query_distribution

default_query_distribution(llm: BaseRagasLLM, kg: Optional[KnowledgeGraph] = None) -> QueryDistribution
源代码位于 src/ragas/testset/synthesizers/__init__.py
def default_query_distribution(
    llm: BaseRagasLLM, kg: t.Optional[KnowledgeGraph] = None
) -> QueryDistribution:
    """ """
    default_queries = [
        SingleHopSpecificQuerySynthesizer(llm=llm),
        MultiHopAbstractQuerySynthesizer(llm=llm),
        MultiHopSpecificQuerySynthesizer(llm=llm),
    ]
    if kg is not None:
        available_queries = []
        for query in default_queries:
            if query.get_node_clusters(kg):
                available_queries.append(query)
    else:
        available_queries = default_queries

    return [(query, 1 / len(available_queries)) for query in available_queries]