ChartMoE: Mixture of Expert Connector for Advanced Chart Understanding
Paper • 2409.03277 • Published • 1
docker run --gpus all \
--shm-size 32g \
-p 30000:30000 \
-v ~/.cache/huggingface:/root/.cache/huggingface \
--env "HF_TOKEN=<secret>" \
--ipc=host \
lmsysorg/sglang:latest \
python3 -m sglang.launch_server \
--model-path "IDEA-FinAI/chartmoe" \
--host 0.0.0.0 \
--port 30000# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:30000/v1/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "IDEA-FinAI/chartmoe",
"prompt": "Once upon a time,",
"max_tokens": 512,
"temperature": 0.5
}'ChartMoE
ICLR2025 Oral
ChartMoE is a multimodal large language model with Mixture-of-Expert connector, based on InternLM-XComposer2 for advanced chart 1)understanding, 2)replot, 3)editing, 4)highlighting and 5)transformation.
To load the ChartMoE model using Transformers, use the following code:
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
ckpt_path = "IDEA-FinAI/chartmoe"
tokenizer = AutoTokenizer.from_pretrained(ckpt_path, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(ckpt_path, trust_remote_code=True).half().cuda().eval()
We provide a simple example and a gradio webui demo to show how to use ChartMoE. Please refer to https://github.com/IDEA-FinAI/ChartMoE.
The code is licensed under Apache-2.0.
Install from pip and serve model
# Install SGLang from pip: pip install sglang# Start the SGLang server: python3 -m sglang.launch_server \ --model-path "IDEA-FinAI/chartmoe" \ --host 0.0.0.0 \ --port 30000# Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "IDEA-FinAI/chartmoe", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'