open-compass / open-compass/VLMEvalKit
Adding [BenchCAD]: would you accept execution-based image→CadQuery-code tasks (heavier deps)?
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 4.4k
- Forks
- 768
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 17
Description
Hi! I'm adding BenchCAD (CAD code understanding for MLLMs) to VLMEvalKit.
Paper: https://arxiv.org/abs/2605.10865 · Code: https://github.com/BenchCAD/BenchCAD-main
The two QA configs — BenchCAD_VQA and BenchCAD_CodeQA (image → single number, deterministic scoring, no judge) — fit the standard ImageBaseDataset pattern and I have that ready to PR.
BenchCAD also has two execution-based tasks, which are its main signal (and the ones reported in Anthropic's [Claude Fable 5 and Claude Mythos 5](https://anthropic.com/claude-fable-5-mythos-5-system-card, 8.16.4)) :
- CodeGen: image → CadQuery program, scored by voxel IoU between the executed STEP solid and the ground-truth STEP.
- CodeEdit: text instruction → edit an existby normalized IoU.
These are heavier than a typical VQA datasetated code in a subprocess and needs cadquery/ cadquery-ocp / trimesh / vtk.
Before I write them up, would you be open to execution-based tasks like this in VLMEvalKit? Options I'm happy to take
- Add them with the CAD deps as an optional extra, imported lazily inside evaluate() so they don't affect users who don't run BenchCAD.
- Keep VLMEvalKit to the lighter VQA configs and host the execution tasks in our own harness.
- Whatever you'd prefer for keeping the depacceptable.
Thanks!
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the BenchCAD paper and linked repository, then compare the proposed CodeGen and CodeEdit execution tasks with VLMEvalKit's existing benchmark integration pattern. A concrete done state is not defined in the issue; maintainer guidance is needed on whether these heavier tasks and optional dependencies belong in the repository.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100