Instructions to use ProvidusAI/providus-vl-mini-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use ProvidusAI/providus-vl-mini-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf ProvidusAI/providus-vl-mini-GGUF:F16 # Run inference directly in the terminal: llama cli -hf ProvidusAI/providus-vl-mini-GGUF:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf ProvidusAI/providus-vl-mini-GGUF:F16 # Run inference directly in the terminal: llama cli -hf ProvidusAI/providus-vl-mini-GGUF:F16
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf ProvidusAI/providus-vl-mini-GGUF:F16 # Run inference directly in the terminal: ./llama-cli -hf ProvidusAI/providus-vl-mini-GGUF:F16
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf ProvidusAI/providus-vl-mini-GGUF:F16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf ProvidusAI/providus-vl-mini-GGUF:F16
Use Docker
docker model run hf.co/ProvidusAI/providus-vl-mini-GGUF:F16
- LM Studio
- Jan
- vLLM
How to use ProvidusAI/providus-vl-mini-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "ProvidusAI/providus-vl-mini-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "ProvidusAI/providus-vl-mini-GGUF", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/ProvidusAI/providus-vl-mini-GGUF:F16
- Ollama
How to use ProvidusAI/providus-vl-mini-GGUF with Ollama:
ollama run hf.co/ProvidusAI/providus-vl-mini-GGUF:F16
- Unsloth Desktop
- Docker Model Runner
How to use ProvidusAI/providus-vl-mini-GGUF with Docker Model Runner:
docker model run hf.co/ProvidusAI/providus-vl-mini-GGUF:F16
- Lemonade
How to use ProvidusAI/providus-vl-mini-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull ProvidusAI/providus-vl-mini-GGUF:F16
Run and chat with the model
lemonade run user.providus-vl-mini-GGUF-F16
List all available models
lemonade list
- Atomic Chat
providus-vl-mini-GGUF
This repo holds providus-vl-mini in GGUF format, for llama.cpp and LM Studio. The weights are the merged model of ProvidusAI/providus-vl-mini, converted to F16 (no quantization).
providus-vl-mini is a fine-tune of MinerU2.5-Pro by OpenDataLab (Apache-2.0). We did not pretrain a model.
All the base knowledge comes from OpenDataLab and the MinerU team. See NOTICE.
Files
| File | Use |
|---|---|
providus-vl-mini-F16.gguf |
The language model and the text decoder. |
mmproj-providus-vl-mini-F16.gguf |
The vision projector. Load it with the model: without it the model cannot read images. |
Modelfile |
The Ollama model file (see "Ollama"). |
FILES.md |
Size and SHA-256 of each file. |
NOTICE, LICENSE |
Attribution and the Apache-2.0 license. |
CITATION.cff |
How to cite this work. |
How to use
One model for every request
The GGUF build is one model. In the pipeline, every request (layout, text, table, formula, chart) goes to it. There is no router and no second model. This is different from the base models setup of the main repo, where the base model from OpenDataLab answers the layout, table, formula and chart requests. The scores below were measured in the one-model setup.
llama.cpp
Download both files into one folder (hf download ProvidusAI/providus-vl-mini-GGUF --local-dir ./providus-vl-mini-GGUF), then run:
llama-server -m providus-vl-mini-F16.gguf --mmproj mmproj-providus-vl-mini-F16.gguf \
--alias providus-vl-mini --host 127.0.0.1 --port 8000 \
-c 8192 -np 1 --special --image-min-tokens 64 --image-max-tokens 2048 --repeat-last-n 8192
--mmprojloads the vision projector.--specialprints all special tokens. The layout and table tokens are marked as user-defined tokens in this file, so llama.cpp, LM Studio and Ollama print them even without this flag.--image-min-tokensand--image-max-tokensset the image size limits of the model. They make llama.cpp resize the crops as the model expects.-c 8192 -np 1gives one request a context of 8192 tokens. For N requests at the same time, use-c8192 times N, and-npN.--repeat-last-n 8192sets the length of the repeat-penalty window to the context.- On a CUDA GPU with many slots (the full run used
-c 196608 -np 24), add--cache-ram 0and start the server withGGML_CUDA_DISABLE_GRAPHS=1. Without them, llama-server stopped with a CUDA error in the vision encoder in our full runs.
Then parse pages with providus-parse-tools (pip install providus-parse-tools==1.0.0):
python -m providus_parse.server --port 8100 --vllm http://127.0.0.1:8000
The --vllm argument takes the address of any OpenAI-compatible server, here llama-server. Code:
GitHub.
LM Studio
Keep the two GGUF files in one folder. LM Studio expects ~/.lmstudio/models/<publisher>/<model>/<file>.gguf.
Download them with lms get https://huggingface.co/ProvidusAI/providus-vl-mini-GGUF, or search for ProvidusAI/providus-vl-mini-GGUF in the app.
Load providus-vl-mini and start the local server (Developer tab, or lms server start). Set the context length to 8192.
Then point providus_parse.server at the server. LM Studio lists every model you have, so name this one:
MINERU_VL_MODEL_NAME=providus-vl-mini python -m providus_parse.server --port 8100 --vllm http://127.0.0.1:1234.
Ollama
Put Modelfile from this repo in the folder with the two GGUF files, then run ollama create providus-vl-mini -f Modelfile and MINERU_VL_MODEL_NAME=providus-vl-mini:latest python -m providus_parse.server --port 8100 --vllm http://127.0.0.1:11434.
Ollama runs this model on its own engine and resizes the images with its own code, so its output can differ from llama.cpp. The scores below do not cover Ollama. For the measured setup, use llama.cpp or LM Studio.
Results
Tested with: LM Studio (llama.cpp runtime 2.57.0), macOS: 3 pages parsed.
Scorer: ParseBench main b9ba246 (2026-10-12). Each run has 2,078 pages. No rule in our pipeline contains ParseBench documents, file names or answers.
The first row is one full run, so it has no standard deviation. The second row is the base models setup of the main repo: the MinerU2.5-Pro base model and providus-vl-mini on vLLM (mean of 4 runs, standard deviation 0.04 on the overall score).
| Row | Overall | Tables | Charts | Content faithfulness | Semantic formatting | Visual grounding |
|---|---|---|---|---|---|---|
| providus-vl-mini GGUF F16, llama.cpp, one model for every request, 1 run | 79.03 | 86.41 | 71.01 | 88.02 | 74.60 | 75.10 |
| MinerU2.5-Pro base model + providus-vl-mini (vLLM, two models), mean of 4 runs | 78.96 | 86.33 | 71.14 | 87.71 | 74.41 | 75.19 |
- The GGUF run used llama.cpp
b11609(commitfcac190), buildcuda-sm90, on NVIDIA H100 80GB HBM3. - The base models row is a different setup: the MinerU2.5-Pro base model answers the layout, table, formula and chart requests, and providus-vl-mini reads the text.
- A different pipeline will give different scores.
Limits
- The scores are for ParseBench, in the one-model setup. Check the model on your own documents before you rely on it.
- The base models setup of the main repo sends only text crops to the merged model. The GGUF build answers every kind of request, and that setup was measured as shown above.
- The model can make mistakes in the text it reads. Do not use it alone for decisions where an error is costly.
- llama.cpp resizes images with its own code, so a crop can differ a little from the Hugging Face processor.
- In the vocabulary of
providus-vl-mini-F16.gguf, the layout and table tokens (<|box_start|>,<|ref_start|>,<fcel>,<nl>and others) are marked as user-defined, not control, tokens. The weights and token ids are the same as in the scored file.
Access
The files are open: you need no login and no terms to download them.
License and credits
- License: Apache-2.0. The weights are a modified version of MinerU2.5-Pro-2605-1.2B (OpenDataLab, Apache-2.0): we merged a LoRA adapter into them and converted them to GGUF. Keep the
NOTICEfile when you redistribute the model or a derivative. - Thank you to OpenDataLab and the MinerU team for the base model and
mineru-vl-utils, to the llama.cpp authors, and to the ParseBench authors. - To cite: see
CITATION.cff. Please cite the MinerU papers too (see the model card of the main repo).
- Downloads last month
- 291
16-bit
Model tree for ProvidusAI/providus-vl-mini-GGUF
Base model
opendatalab/MinerU2.5-Pro-2605-1.2B