PL
返回项目列表
MLOps
Airflow
RAG
Evaluation
Docker

RAG Evaluation Pipeline

基于 Airflow 的 RAG 自动化评测流水线,覆盖检索质量、生成质量和基线对比

5
DAG 任务
8+
评测指标
JSON, HTML
报告格式
Docker Compose
容器编排

概述

基于 Apache Airflow + CeleryExecutor 构建的 RAG 自动化评测流水线。 评测维度覆盖检索质量(MRR、NDCG、HitRate)和生成质量(ROUGE、BLEU、BERTScore)。 核心特性:Docker Compose 容器化编排、PostgreSQL 结果存储、 自动化报告生成(JSON/HTML)以及 Baseline 对比与统计显著性检验。

Technical Deep Dive

Airflow DAG

prepare_data        →  load_corpus + generate_test_queries
     │
     ▼
run_retrieval_eval  →  MRR / NDCG / HitRate / Precision
     │
     ▼
run_generation_eval →  ROUGE / BLEU / BERTScore
     │
     ▼
baseline_compare    →  Delta Metrics + 统计显著性检验 (t-test)
     │
     ▼
generate_report     →  JSON / HTML 报告 + 可视化图表

Prepare

加载语料库 + 生成测试查询对

Retrieve

执行检索并计算 MRR/NDCG/HitRate

Generate

LLM 生成答案并计算 ROUGE/BLEU/BERTScore

Compare

Baseline 对比 + t-test 显著性检验

Report

输出 JSON/HTML 报告与可视化图表

评测指标体系

检索质量

MRR

Mean Reciprocal Rank,正确答案排名的倒数均值

NDCG@K

Normalized Discounted Cumulative Gain,考虑相关度加权的排序指标

HitRate@K

Top-K 中是否命中正确答案

Precision@K

Top-K 结果中相关文档的比例

生成质量

ROUGE-L

最长公共子序列匹配,衡量生成文本与参考答案的重叠度

BLEU-4

4-gram 精确匹配,评估生成文本的流畅度和准确性

BERTScore

基于 BERT 嵌入的语义相似度,捕捉语义层面的匹配

Baseline 对比

每个新配置必须与 Baseline(默认 BM25 + 标准 Prompt)做对比,计算 Delta Metrics 并进行统计显著性检验。

对比项Baseline实验组Deltap-value
MRR0.420.58+38%0.003
NDCG@50.510.63+24%0.012
BERTScore0.780.85+9%0.041
Latency (ms)245198-19%0.008

部署架构

Docker Compose
├── airflow-webserver (Airflow UI + DAG 调度)
├── airflow-scheduler (CeleryExecutor 任务分发)
├── airflow-worker × N (并行执行评测任务)
├── postgres (Airflow 元数据 + 评测结果存储)
├── redis (Celery 消息队列)
└── minio (可选,报告文件存储)

CeleryExecutor

任务级并行,多 Worker 同时跑不同评测任务

PostgreSQL

评测结果持久化,支持历史对比和趋势分析

一键部署

docker-compose up -d 拉起完整环境

技术栈

PythonApache AirflowPostgreSQLRedisDocker ComposePydantichttpx

核心特性

检索评测(MRR、NDCG、HitRate、Precision)
生成评测(ROUGE、BLEU、BERTScore)
Baseline 对比 + Delta Metrics 差异分析
自动化 JSON/HTML 报告生成
PostgreSQL 结果持久化存储
Docker Compose 一键部署
Airflow CeleryExecutor 分布式调度
统计显著性检验