UniRL基准测试完全指南:GenEval2、VBench评测协议与verl公平吞吐对比方法

发布时间:2026/10/16 21:11:17
UniRL基准测试完全指南:GenEval2、VBench评测协议与verl公平吞吐对比方法
【免费下载链接】UniRLUniRL is a Framework for Unified Multimodal Model Reinforcement Learning项目地址https://gitcode.com/gh_mirrors/uni/UniRL点击查看免费下载UniRL是一个面向统一多模态模型的强化学习RL训练框架支持从扩散图像/视频模型到 LLM/VLM 的 RL 后训练。本文带你完整掌握 UniRL 的基准测试能力如何用 benchmarks/ 模块对训练产出的 checkpoint 跑GenEval2、VBench 等固定协议的独立评测以及如何按照仓库内置的公平对比协议与 verl 系框架做可信的吞吐量throughput对比——不踩坑、数字可比。独立评测体系为什么基准测试与训练解耦UniRL 的 benchmarks/ 是一个独立于训练栈的 checkpoint 评测器评测对象是工件一个 HF repo id / 本地目录可选再挂一个 LoRA adapter或直接挂 UniRL 原始 checkpoint会自动导出为 PEFT 格式每个基准测试都在固定且文档化的协议下打分保证同一 checkpoint 可以跨多个基准测试、跨多次运行、与公开表格数字直接对比注意区分训练循环内的eval/*只是训练时的信号不遵循这些协议。30 秒上手一条命令跑完多个基准测试先看看内置了哪些基准测试然后一条命令对同一个 checkpoint 跑图像类评测python -m benchmarks.run --list # 列出全部基准测试 # 文生图base 模型 你训练出的 LoRA打分走 reward service python -m benchmarks.run -b image/geneval2 -b image/preference \ --ckpt stabilityai/stable-diffusion-3.5-medium --lora ckpt-or-adapter-dir \ --reward-url http://reward-host:8080 # 文本先用 sglang/vllm 起服务再指向 endpoint python -m benchmarks.run -b text/aime24,text/math500 --endpoint http://127.0.0.1:30000 python -m benchmarks.run --report # 把所有 summary 汇总成 markdown 表格几个实用技巧冒烟测试加--num-prompts 8快速验证流程summary 会标记为子集多卡加速每张卡起一个进程用--shard i/n切分生成任务分离部署--stage generate跑在 GPU 机器上--stage score可放到任意有 reward service / CPU 的机器上。GenEval2 评测协议VQAScore 与 DPPO 复现配置GenEval2是 UniRL 文生图评测的头牌800 条组合式 prompt 内建于仓库见 image/geneval2 说明每条 prompt 都附带一组原子化的vqa_list检查项物体是否存在、数量、颜色/属性、位置、动词。打分采用Soft-TIFA VQAScore由视觉语言模型Qwen3-VL逐条回答原子问题把每个检查项的答案概率做几何平均得到[0, 1]的单图分数报告时 ×100。打分后端有两档后端特点适用场景Reward servicevLLM--reward-url读 top-k logprobs 近似全词表 softmax快日常基准测试、训练监控本地 transformers Qwen3-VL-8B--local-geneval2全词表 softmax分数与论文完全一致复现 DPPO 论文数字必需要精确复现 DPPO 的 GenEval2 评测协议被 core/registry.py 中的 spec 钉死两个参数是承重的改错会让分数大约掉一半512×512 分辨率、40 步采样、cfg 1.0、max_sequence_length256显式linspace(1, 1/steps, steps)的 flow-match sigma 网格且按 prompt 内容哈希取种子、每 prompt 仅 1 张样本。# 基座模型精确 800 条唯一 prompt python -m benchmarks.run -b image/geneval2 \ --ckpt stabilityai/stable-diffusion-3.5-medium --local-geneval2除 GenEval2 外图像侧还有image/geneval说明官方 GenEval 553 条 prompt4 图/promptMask2FormerCLIP 官方管线打分image/preference说明1632 条 PartiPrompts一次性经hpsv3、pickscore、imagereward三个打分器评估——注意这是相对指标只适合同一基座的 RL 前后对比不宜跨论文比较image/dpg_bench1065 条稠密长 prompt需 fetch.sh 拉数据由官方 ELLA mPLUG 脚本在外部打分。VBench 视频评测协议官方工具链 命名约定视频侧走 video/vbench/采用VBench 官方工具链runner 不自己驱动视频模型prompt 套件已 vendor 进仓库data/两个套件all_dimension.txt946 条与all_category.txt800 条官方协议每 prompt 生成 5 条视频命名必须为完整prompt文本-i.mp4i 0..4种子随机记录特例temporal_flickering维度需要 25 条视频/prompt并先跑其static_filter.py预处理打分直接用vbenchpip 包vbench evaluate --videos_path ... --dimension ...模型权重自动下载。生成侧可以用 UniRL 训练出的视频 checkpointwan21/22、hunyuan_video15、ltx2 等 recipe pipeline或纯 diffusers只要遵守上面的命名约定即可。verl 公平吞吐对比方法6 条协议 实测数据框架级速度对比最容易自说自话。speed_benchmarks/ 内置了一套公平对比协议并与 verl-omni 提供了钉住 commit 的可运行对齐配置见 verl_omni 目录。公平对比 6 条协议双方都要钉住并随数字一起公布完整配置模型 算法—— 同一 checkpoint、同一 RL 算法负载—— 每步 prompt 数、group size、分辨率、去噪步数t2i或最大 token 数LLM、每步优化器更新次数全部一致Reward—— 同一打分器挂在同一 HTTP 服务后同置放reward GPU 要么双方都计入、要么都不计入硬件—— 同数量/型号/互联的 GPU一次只跑一个框架稳态—— 至少 20 步丢弃 warmup报告 median s/step 与 samples/GPU-hour每对配置两行对齐后端如两侧都用 vLLM-Omni rollout与各自最优配置——两者回答的是不同问题。测量 UniRL 侧不需要特殊埋点每个 trainer 都会向 wandb 记录perf/step_time_s端到端墙钟与perf/phase_time_sgenerate / reward / train / weight-sync 分相归因。没有 wandb 也行控制台的rollout N/M reward…行足够python benchmarks/speed_benchmarks/parse_perf.py train.log --samples-per-step batch×group --gpus 8 # 输出steps、median/mean/p90 s/step、samples/s、samples/GPU-hour默认丢弃前2步warmup实测参考1×8 H20 96GB对齐的 SD3.5 FlowGRPO 负载48 prompts/step × 16 样本 384²、10 步去噪、LoRA r32一侧注意力median s/stepp90samples/GPU-h相对UniRLSDPA45.045.07680.01.00×verl-omni钉住 commitSDPA 对齐111.4111.83102.80.40×verl-omni钉住 commitFA3其默认113.6115.33042.20.40×可信度的关键在于工作量交叉验证25 步后三组的 PickScore 停在几乎相同的位置0.8101 / 0.8217 / 0.8211说明每步做的优化工作量相等——差距来自吞吐而非走捷径。如果训练足够长仓库还建议报告到 reward 阈值的耗时曲线同一评测、墙钟为横轴——这是端到端最有说服力的证据。结果目录约定与发布清单结果统一落在benchmarks_results/ckpt-tag/name/下图像基准测试是images/scores.jsonlsummary.json文本是completions.jsonl 两个 json 文件name是注册名把/换成_如image_geneval2。图片命名p{prompt:05d}_s{k}.pngseed 由--seed 1000×prompt k决定geneval2 用 prompt 文本哈希这是生成与打分两阶段之间唯一共享的状态。发布任何数字前对照这份清单自查✅ 钉住了双方含上游 commit 级版本✅ 完整配置verl_omni 对齐配置示例随数字一起展示✅ 稳态 ≥20 步、丢弃 warmup、报告 median 而非均值✅ 蒸馏/turbo checkpoint 传了模型卡对应的--steps/--guidance否则评的是错误的采样器设置✅ 复现论文数字时GenEval2 用了--local-geneval2本地后端。核心代码入口都集中在 benchmarks/core/注册表、生成、打分、汇总、checkpoint 处理与 benchmarks/run.py扩展一个新基准测试 一份数据或 fetch 脚本 注册表里的一个BenchmarkSpec生成/分片/断点续跑/汇总这套机制对所有模态通用。赞分享【免费下载链接】UniRLUniRL is a Framework for Unified Multimodal Model Reinforcement Learning项目地址https://gitcode.com/gh_mirrors/uni/UniRL点击查看免费下载相关推荐如何在Chrome DevTools中使用rep从安装到HTTP请求重放的完整指南如何在Chrome DevTools中使用rep从安装到HTTP请求重放的完整指南 rep 是一款轻量级的Chrome DevTools扩展灵感源自BuCodis 基准测试指南Redis 集群代理吞吐量对比与压测方法详解Codis 基准测试指南Redis 集群代理吞吐量对比与压测方法详解 Codis 是仓库中 codis/ https://link.gitcode.com/i数据库KV存储后端Detectron2 训练速度基准测试全解读Mask R-CNN 跨框架吞吐量对比、测试方法与复现指南Detectron2 训练速度基准测试全解读Mask R CNN 跨框架吞吐量对比、测试方法与复现指南 导读本文以 Detectron2 官方基准测试文档为人工智能计算机视觉深度学习创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考