Image-Text-to-Text
Transformers
Safetensors
English
internvl_chat
feature-extraction
mathematics
reasoning
multi-modal-qa
math-qa
figure-qa
geometry-qa
math-word-problem
textbook-qa
vqa
geometry-diagram
synthetic-scene
chart
plot
scientific-figure
table
function-plot
abstract-scene
puzzle-test
document-image
science
conversational
custom_code
File size: 4,820 Bytes
b6e638d b2d6ffc b6e638d b2d6ffc 7eb9416 b2d6ffc b6e638d c5bb942 b6e638d 27e9d1b b6e638d 27e9d1b b6e638d a9ae026 b6e638d 34bca4a b6e638d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 |
---
license: apache-2.0
language:
- en
metrics:
- accuracy
pipeline_tag: image-text-to-text
tags:
- mathematics
- reasoning
- multi-modal-qa
- math-qa
- figure-qa
- geometry-qa
- math-word-problem
- textbook-qa
- vqa
- geometry-diagram
- synthetic-scene
- chart
- plot
- scientific-figure
- table
- function-plot
- abstract-scene
- puzzle-test
- document-image
- science
library_name: transformers
base_model:
- OpenGVLab/InternVL2-8B
---
# MathCoder-VL: Bridging Vision and Code for Enhanced Multimodal Mathematical Reasoning
Repo: [https://github.com/mathllm/MathCoder](https://github.com/mathllm/MathCoder)
Paper: [https://huggingface.co/papers/2505.10557](https://huggingface.co/papers/2505.10557)
## Introduction
We introduce MathCoder-VL, a series of open-source large multimodal models (LMMs) specifically tailored for general math problem-solving. We also introduce [FigCodifier-8B](https://huggingface.co/MathLLMs/FigCodifier), an image-to-code model.
| Base Model |Ours |
|-------------------------------------------------------------------|-----------------------------------------------------------------------|
| [Mini-InternVL-Chat-2B-V1-5](https://huggingface.co/OpenGVLab/Mini-InternVL-Chat-2B-V1-5) | [MathCoder-VL-2B](https://huggingface.co/MathLLMs/MathCoder-VL-2B) |
| [InternVL2-8B](https://huggingface.co/OpenGVLab/InternVL2-8B) | [MathCoder-VL-8B](https://huggingface.co/MathLLMs/MathCoder-VL-8B)|
| [InternVL2-8B](https://huggingface.co/OpenGVLab/InternVL2-8B) | [FigCodifier-8B](https://huggingface.co/MathLLMs/FigCodifier)|
## Usage
For training and inference code, please refer to [InternVL](https://github.com/OpenGVLab/InternVL).
```
from datasets import load_dataset
from PIL import Image
from io import BytesIO
mm_mathinstruct = load_dataset("MathLLMs/MM-MathInstruct")
print(mm_mathinstruct)
# show the last image
img = Image.open(BytesIO(mm_mathinstruct['train'][-1]['image']))
img.show()
```
It should print:
```
DatasetDict({
train: Dataset({
features: ['id', 'image', 'question', 'solution', 'image_path'],
num_rows: 2871988
})
})
```
### Prompt for TikZ Code Generation
```
<image>\nPlease generate the corresponding TikZ code that accurately represents the visual elements in the image. TikZ is a powerful tool for creating vector graphics within LaTeX documents. Your generated code should be precise, well-structured, and should recreate the image as faithfully as possible.
```
<div align="center">
<img src="./examples/tikzimage.png" width="100%" title="Result Figure">
</div>
### Prompt for Python Code Generation
```
Please provide the Python code needed to reproduce this image.\n<image>
```
<div align="center">
<img src="./examples/pyimage.png" width="100%" title="Result Figure">
</div>
## Motivation
<div align="center">
<img src="./examples/fig1.png" width="100%" title="Result Figure">
</div>
## Construction of FigCodifier
<div align="center">
<img src="./examples/fig2.png" width="100%" title="Result Figure">
</div>
## Construction of MathCoder-VL
<div align="center">
<img src="./examples/fig4.png" width="100%" title="Result Figure">
</div>
## Performance
<div align="center">
<img src="./examples/tab1.png" width="100%" title="Result Figure">
</div>
## **Citation**
Please cite the paper if you use our data, model or code.
```
@inproceedings{
wang2025mathcodervl,
title={MathCoder-{VL}: Bridging Vision and Code for Enhanced Multimodal Mathematical Reasoning},
author={Ke Wang and Junting Pan and Linda Wei and Aojun Zhou and Weikang Shi and Zimu Lu and Han Xiao and Yunqiao Yang and Houxing Ren and Mingjie Zhan and Hongsheng Li},
booktitle={The 63rd Annual Meeting of the Association for Computational Linguistics},
year={2025},
url={https://openreview.net/forum?id=nuvtX1imAb}
}
```
```
@inproceedings{
lu2025mathcoder2,
title={MathCoder2: Better Math Reasoning from Continued Pretraining on Model-translated Mathematical Code},
author={Zimu Lu and Aojun Zhou and Ke Wang and Houxing Ren and Weikang Shi and Junting Pan and Mingjie Zhan and Hongsheng Li},
booktitle={The Thirteenth International Conference on Learning Representations},
year={2025},
url={https://openreview.net/forum?id=1Iuw1jcIrf}
}
```
```
@inproceedings{
wang2024mathcoder,
title={MathCoder: Seamless Code Integration in {LLM}s for Enhanced Mathematical Reasoning},
author={Ke Wang and Houxing Ren and Aojun Zhou and Zimu Lu and Sichun Luo and Weikang Shi and Renrui Zhang and Linqi Song and Mingjie Zhan and Hongsheng Li},
booktitle={The Twelfth International Conference on Learning Representations},
year={2024},
url={https://openreview.net/forum?id=z8TW0ttBPp}
}
``` |