PRMEval 是一个面向机器人任务进度与偏好模型的评测框架。它读取本地数据集,构造统一评测样本,通过本地 Hugging Face 模型或远程服务推理,并计算评测指标。

评测由三个可独立运行和验证的阶段组成:
EvaluationRecord。阶段职责和数据流见 三阶段评测流程,各文件的用途、内容及断点续跑行为见 全流程运行产物说明,字段定义见 EvaluationRecord 数据结构。
PRMEval 支持 Python 3.10 及以上版本。
pip install -e .
本地 Hugging Face/Qwen-VL 模型使用可选依赖:
pip install -e '.[local-hf,local-qwen]'
仓库提供了调用通用远程模型 progress_test 的端到端冒烟配置
configs/eval/progress_test_remote.yaml。运行前设置 OpenAI-compatible
服务信息:
export OPENAI_API_KEY='your-api-key'
export BASE_URL='https://your-service.example.com/v1'
export MODEL_ID='your-model-id'
连续执行采样、推理和指标计算:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml
命令行会在交互式终端中使用 tqdm 分别展示 Sample、Infer 和 Metrics 三个阶段的进度,并输出阶段开始、完成及断点续跑跳过数量。动态进度写入 stderr,最终 JSON 摘要写入 stdout,因此可以安全地重定向结果:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml > summary.json
在 CI、管道等非交互环境中,动态进度条会自动关闭,阶段日志仍会保留。也可以手动关闭动态进度条:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml --no-progress
也可以单独运行各阶段:
python -m prmeval.cli sample --config configs/eval/progress_test_remote.yaml
python -m prmeval.cli infer --config configs/eval/progress_test_remote.yaml
python -m prmeval.cli metrics --config configs/eval/progress_test_remote.yaml
查看已注册组件:
python -m prmeval.cli list-datasets
python -m prmeval.cli list-samplers
python -m prmeval.cli list-infers
python -m prmeval.cli list-metrics
完整命令和验证方式见 三阶段评测流程,冒烟测试的输入与预期产物见 完整冒烟测试说明。
本项目基于开源项目 Robometer 进行重构与扩展。
感谢 Robometer 项目的作者和贡献者开源其代码。本仓库中的部分实现来源于 Robometer,并在此基础上进行了代码结构重组、重构以及功能扩展,以适配本项目的具体需求。
3 commits
Python
98.4%
Shell
1.6%
PRMEval 是一个面向机器人任务进度与偏好模型的评测框架。它读取本地数据集,构造统一评测样本,通过本地 Hugging Face 模型或远程服务推理,并计算评测指标。

评测由三个可独立运行和验证的阶段组成:
EvaluationRecord。阶段职责和数据流见 三阶段评测流程,各文件的用途、内容及断点续跑行为见 全流程运行产物说明,字段定义见 EvaluationRecord 数据结构。
PRMEval 支持 Python 3.10 及以上版本。
pip install -e .
本地 Hugging Face/Qwen-VL 模型使用可选依赖:
pip install -e '.[local-hf,local-qwen]'
仓库提供了调用通用远程模型 progress_test 的端到端冒烟配置
configs/eval/progress_test_remote.yaml。运行前设置 OpenAI-compatible
服务信息:
export OPENAI_API_KEY='your-api-key'
export BASE_URL='https://your-service.example.com/v1'
export MODEL_ID='your-model-id'
连续执行采样、推理和指标计算:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml
命令行会在交互式终端中使用 tqdm 分别展示 Sample、Infer 和 Metrics 三个阶段的进度,并输出阶段开始、完成及断点续跑跳过数量。动态进度写入 stderr,最终 JSON 摘要写入 stdout,因此可以安全地重定向结果:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml > summary.json
在 CI、管道等非交互环境中,动态进度条会自动关闭,阶段日志仍会保留。也可以手动关闭动态进度条:
python -m prmeval.cli run --config configs/eval/progress_test_remote.yaml --no-progress
也可以单独运行各阶段:
python -m prmeval.cli sample --config configs/eval/progress_test_remote.yaml
python -m prmeval.cli infer --config configs/eval/progress_test_remote.yaml
python -m prmeval.cli metrics --config configs/eval/progress_test_remote.yaml
查看已注册组件:
python -m prmeval.cli list-datasets
python -m prmeval.cli list-samplers
python -m prmeval.cli list-infers
python -m prmeval.cli list-metrics
完整命令和验证方式见 三阶段评测流程,冒烟测试的输入与预期产物见 完整冒烟测试说明。
本项目基于开源项目 Robometer 进行重构与扩展。
感谢 Robometer 项目的作者和贡献者开源其代码。本仓库中的部分实现来源于 Robometer,并在此基础上进行了代码结构重组、重构以及功能扩展,以适配本项目的具体需求。
3 commits
Python
98.4%
Shell
1.6%