从环境准备到报告生成,端到端全流程自动化
Docker镜像
配置文件
数据集下载
容器启动
资源限制
参数配置
逐题调用
模型推理
答案记录
预测结果
判定对比
统计汇总
数据可视化
对比分析
网站展示
构建 Docker 镜像,准备配置文件和数据集
基于 Python 3.10-slim,安装 OpenCompass v1.2.0
config.py 声明 6 个模型 API 信息和评测参数
从 OpenCompass 官方 OSS 下载 MMLU 数据集到 /opt/llm-eval/data/mmlu
使用 Docker 运行 OpenCompass 评测任务
docker run --rm \
--name opencompass-eval \
--memory=3.5g \
--cpus=1 \
-v ./configs:/app/configs \
-v ./results:/app/results \
-v /opt/llm-eval/data:/opt/llm-eval/data \
opencompass:latest \
python /app/run.py \
/app/configs/full_eval_config.py \
--max-num-workers 1 \
-w /app/results \
--retry 3 \
-l
顺序执行 6 个模型 × 57 个数据集 = 342 个推理任务
OpenCompass 将评测任务分区,每个模型-数据集组合作为独立任务
遇到 404/504 等错误时自动重试,最多 3 次,间隔 5 秒
OpenCompass 自动汇总所有预测结果
每个题目的模型输出保存在 JSON 文件:
predictions/{model}/{dataset}.json
准确率统计和详细判定:
eval/{model}/{dataset}.json
使用 Python 处理数据,生成 HTML 报告网站
| 环节 | 技术/工具 | 说明 |
|---|---|---|
| 环境部署 | Docker + OpenCompass v1.2.0 | 容器化部署,隔离评测环境 |
| 模型调用 | OpenAI API 兼容接口 | 统一接口调用 6 个模型 |
| API 平台 | YH Platform | yhapiplatform.com 聚合平台 |
| 数据集 | MMLU (5 个子集) | 757 道选择题 |
| 数据处理 | Python 3.10 | 结果聚合与统计分析 |
| 报告生成 | HTML / CSS / JS | TailwindCSS + Chart.js 可视化 |