微信扫码
添加专属顾问
 
                        我要投稿
掌握RAG知识问答系统的自动化评测技巧,提升问答系统的准确性和可靠性。 核心内容: 1. RAG问答系统的人工测评与AI自动测评方法 2. ragas框架的核心概念和评估维度 3. 使用ragas框架实现RAG系统自动化评测的详细步骤
 
                                # ================== 数据集函数 ==================def prepare_eval_dataset():    """准备评估数据集(首次运行需取消注释)"""    knowledge_base_id = "信贷业务"    embedding_model_id = "huggingface_bge-large-zh-v1.5"    eval_questions = ["信贷审批的特殊情形有哪些?"]    answers, contexts = [], []    for q in eval_questions:        try:            query_engine = utils.load_vector_index(                knowledge_base_id,                 embedding_model_id            ).as_query_engine(llm=DeepSeek_llm)            response = query_engine.query(q)            answers.append(response.response.strip())            contexts.append([node.text for node in response.source_nodes])        except Exception as e:            logger.error(f"生成答案失败: {str(e)}")            answers.append("")            contexts.append([])    eval_dataset = Dataset.from_dict({        "question": eval_questions,        "answer": answers,        "contexts": contexts    })    eval_dataset.save_to_disk("eval_dataset")    logger.info("? 评估数据集已保存")metrics = [ ContextRelevance(llm=ragas_llm), Faithfulness(llm=ragas_llm), AnswerRelevancy(llm=ragas_llm)]
 # 加载数据集    try:        eval_dataset = load_from_disk("eval_dataset")        logger.info(f"? 加载数据集成功 | 样本数: {len(eval_dataset)}")    except Exception as e:        logger.error(f"数据集加载失败: {str(e)}")        exit(1)    # 执行评估    try:        result = evaluate(            eval_dataset,            metrics=metrics,            llm=ragas_llm,            raise_exceptions=False            #,timeout=300        )    except Exception as e:        logger.critical(f"评估流程异常终止: {str(e)}")        exit(1) # 结果安全处理    logger.info("\n" + " 评估报告 ".center(50, "="))        score_map = {        'context_relevance': 0.0,        'faithfulness': 0.0,        'answer_relevancy': 0.0    }        for key in score_map.keys():        if key in result:            score_map[key] = result[key].mean(skipna=True)        logger.info(f"上下文相关性: {score_map['context_relevance']:.2%}")    logger.info(f"回答忠实度: {score_map['faithfulness']:.2%}")    logger.info(f"答案相关度: {score_map['answer_relevancy']:.2%}")    logger.info("\n详细结果:")    print(result.to_pandas().to_markdown(index=False))53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
 
            2025-09-15
2025-09-02
2025-08-05
2025-08-18
2025-08-25
2025-08-25
2025-08-25
2025-09-03
2025-08-20
2025-09-08
2025-10-04
2025-09-30
2025-09-10
2025-09-10
2025-09-03
2025-08-28
2025-08-25
2025-08-20