alt.freeweights.minicpm / MiniCPM-V-4_5-GPTQ
From: openbmb <huggingface.co/openbmb>Newsgroups: alt.freeweights.minicpmSubject:

MiniCPM-V-4_5-GPTQ

Date: 2026-11-15Commit: b68f43fSigned: 2DC28CC7B26A283B ✓

Image text to text model with 8.7B parameters. Safetensors weights, 7.13 GB in all. Published by openbmb under Apache-2.0.

8.7B params7.13GBMiniCPM-V-4_5-GPTQsafetensorspermissive
FactsParams8.7BSize7.13 GBFormatssafetensorsTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get openbmb/MiniCPM-V-4_5-GPTQ
# manifest sha256 7a9a54d1f4a8… · 7.13 GB · 22 files
$ fw verify ./MiniCPM-V-4_5-GPTQ openbmb/MiniCPM-V-4_5-GPTQ
From sourceHosted (signed)openbmb/MiniCPM-V-4_5-GPTQLast check: 2026-11-15 05:21 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Quantized of MiniCPM-V-4_5.

Works with

Overview

Size
7.13 GB
Weights
7.11 GB (safetensors)
Parameters
8.7B
Formats
safetensors
Task
image text to text
License
Apache-2.0 (permissive)
Files
22, each with a sha256
Publisher
openbmb
Added
2026-11-15
Section
alt.freeweights.minicpm
Lineage

Original release from the publisher.

Base model: openbmb/MiniCPM-V-4_5

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 05:21 UTCpassed

Model card

From the publisher at commit b68f43f. Shown as plain text with links; images open at the publisher.

A GPT-4o Level MLLM for Single Image, Multi Image and High-FPS Video Understanding on Your Phone#

GitHub | CookBook | Technical Report | Demo

MiniCPM-V 4.5#

MiniCPM-V 4.5 is the latest and most capable model in the MiniCPM-V series. The model is built on Qwen3-8B and SigLIP2-400M with a total of 8B parameters. It exhibits a significant performance improvement over previous MiniCPM-V and MiniCPM-o models, and introduces new useful features. Notable features of MiniCPM-V 4.5 include:

  • 🔥 State-of-the-art Vision-Language Capability. MiniCPM-V 4.5 achieves an average score of 77.0 on OpenCompass, a comprehensive evaluation of 8 popular benchmarks. With only 8B parameters, it surpasses widely used proprietary models like GPT-4o-latest, Gemini-2.0 Pro, and strong open-source models like Qwen2.5-VL 72B for vision-language capabilities, making it the most performant MLLM under 30B parameters.
  • 🎬 Efficient High-FPS and Long Video Understanding. Powered by a new unified 3D-Resampler over images and videos, MiniCPM-V 4.5 can now achieve 96x compression rate for video tokens, where 6 448x448 video frames can be jointly compressed into 64 video tokens (normally 1,536 tokens for most MLLMs). This means that the model can perceive significantly more video frames without increasing the LLM inference cost. This brings state-of-the-art high-FPS (up to 10FPS) video understanding and long video understanding capabilities on Video-MME, LVBench, MLVU, MotionBench, FavorBench, etc., efficiently.
  • ⚙️ Controllable Hybrid Fast/Deep Thinking. MiniCPM-V 4.5 supports both fast thinking for efficient frequent usage with competitive performance, and deep thinking for more complex problem solving. To cover efficiency and performance trade-offs in different user scenarios, this fast/deep thinking mode can be switched in a highly controlled fashion.
  • 💪 Strong OCR, Document Parsing and Others.

Based on LLaVA-UHD architecture, MiniCPM-V 4.5 can process high-resolution images with any aspect ratio and up to 1.8 million pixels (e.g., 1344x1344), using 4x less visual tokens than most MLLMs. The model achieves leading performance on OCRBench, surpassing proprietary models such as GPT-4o-latest and Gemini 2.5. It also achieves state-of-the-art performance for PDF document parsing capability on OmniDocBench among general MLLMs. Based on the latest RLAIF-V and VisCPM techniques, it features trustworthy behaviors, outperforming GPT-4o-latest on MMHal-Bench, and supports multilingual capabilities in more than 30 languages.

  • 💫 Easy Usage.

MiniCPM-V 4.5 can be easily used in various ways: (1) llama.cpp and ollama support for efficient CPU inference on local devices, (2) int4, GGUF and AWQ format quantized models in 16 sizes, (3) SGLang and vLLM support for high-throughput and memory-efficient inference, (4) fine-tuning on new domains and tasks with Transformers and LLaMA-Factory, (5) quick local WebUI demo, (6) optimized local iOS app on iPhone and iPad, and (7) online web demo on server. See our Cookbook for full usages!

Key Techniques#

Image: image

  • Architechture: Unified 3D-Resampler for High-density Video Compression. MiniCPM-V 4.5 introduces a 3D-Resampler that overcomes the performance-efficiency trade-off in video understanding. By grouping and jointly compressing up to 6 consecutive video frames into just 64 tokens (the same token count used for a single image in MiniCPM-V series), MiniCPM-V 4.5 achieves a 96× compression rate for video tokens. This allows the model to process more video frames without additional LLM computational cost, enabling high-FPS video and long video understanding. The architecture supports unified encoding for images, multi-image inputs, and videos, ensuring seamless capability and knowledge transfer.
  • Pre-training: Unified Learning for OCR and Knowledge from Documents. Existing MLLMs learn OCR capability and knowledge from documents in isolated training approaches. We observe that the essential difference between these two training approaches is the visibility of the text in images. By dynamically corrupting text regions in documents with varying noise levels and asking the model to reconstruct the text, the model learns to adaptively and properly switch between accurate text recognition (when text is visible) and multimodal context-based knowledge reasoning (when text is heavily obscured). This eliminates reliance on error-prone document parsers in knowledge learning from documents, and prevents hallucinations from over-augmented OCR data, resulting in top-tier OCR and multimodal knowledge performance with minimal engineering overhead.
  • Post-training: Hybrid Fast/Deep Thinking with Multimodal RL. MiniCPM-V 4.5 offers a balanced reasoning experience through two switchable modes: fast thinking for efficient daily use and deep thinking for complex tasks. Using a new hybrid reinforcement learning method, the model jointly optimizes both modes, significantly enhancing fast-mode performance without compromising deep-mode capability. Incorporated with RLPR and RLAIF-V, it generalizes robust reasoning skills from broad multimodal data while effectively reducing hallucinations.
Evaluation#

Image: image

Image: image

Inference Efficiency#

OpenCompass

| Model | Size | Avg Score ↑ | Total Inference Time ↓

| GLM-4.1V-9B-Thinking | 10.3B | 76.6 | 17.5h

| MiMo-VL-7B-RL | 8.3B | 76.4 | 11h

| MiniCPM-V 4.5 | 8.7B | 77.0 | 7.5h

Video-MME

| Model | Size | Avg Score ↑ | Total Inference Time ↓ | GPU Mem ↓

| Qwen2.5-VL-7B-Instruct | 8.3B | 71.6 | 3h | 60G

| GLM-4.1V-9B-Thinking | 10.3B | 73.6 | 2.63h | 32G

| MiniCPM-V 4.5 | 8.7B | 73.5 | 0.26h | 28G

Both Video-MME and OpenCompass were evaluated using 8×A100 GPUs for inference. The reported inference time of Video-MME includes full model-side computation, and excludes the external cost of video frame extraction (dependent on specific frame extraction tools) for fair comparison.

Examples#

https://www.youtube.com/watch?v=Cn23FujYMMU

Image: en_case1 Image: en_case2 Image: en_case3

We deploy MiniCPM-V 4.5 on iPad M4 with iOS demo. The demo video is the raw screen recording without editing.

Image: image Image: image

Image: image Image: image

Framework Support Matrix#

| Category | Framework | Cookbook Link | Upstream PR | Supported since(branch) | Supported since(release)

| Edge(On-device) | Llama.cpp | Llama.cpp Doc | #15575(2025-08-26) | master(2025-08-26) | b6282

| Ollama | Ollama Doc | #12078(2025-08-26) | Merging | Waiting for official release

| Serving(Cloud) | vLLM | vLLM Doc | #23586(2025-08-26) | main(2025-08-27) | v0.10.2 SGLang SGLang Doc | #9610(2025-08-26) | Merging | Waiting for official release

| Finetuning | LLaMA-Factory | LLaMA-Factory Doc | #9022(2025-08-26) | main(2025-08-26) | Waiting for official release

| Quantization | GGUF | GGUF Doc | — | — | —

| BNB | BNB Doc | — | — | —

| AWQ | AWQ Doc | — | — | —

| Demos | Gradio Demo | Gradio Demo Doc | — | — | —

Note: If you'd like us to prioritize support for another open-source framework, please let us know via this short form.

Usage#

If you wish to enable thinking mode, provide the argument enable_thinking=True to the chat function.

Chat with Image#
import torch
from PIL import Image
from transformers import AutoModel, AutoTokenizer

torch.manual_seed(100)

model = AutoModel.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True, # or openbmb/MiniCPM-o-2_6
    attn_implementation='sdpa', torch_dtype=torch.bfloat16) # sdpa or flash_attention_2, no eager
model = model.eval().cuda()
tokenizer = AutoTokenizer.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True) # or openbmb/MiniCPM-o-2_6

image = Image.open('./assets/minicpmo2_6/show_demo.jpg').convert('RGB')

enable_thinking=False # If `enable_thinking=True`, the thinking mode is enabled.
stream=True # If `stream=True`, the answer is string

# First round chat 
question = "What is the landform in the picture?"
msgs = [{'role': 'user', 'content': [image, question]}]

answer = model.chat(
    msgs=msgs,
    tokenizer=tokenizer,
    enable_thinking=enable_thinking,
    stream=True
)

generated_text = ""
for new_text in answer:
    generated_text += new_text
    print(new_text, flush=True, end='')

# Second round chat, pass history context of multi-turn conversation
msgs.append({"role": "assistant", "content": [generated_text]})
msgs.append({"role": "user", "content": ["What should I pay attention to when traveling here?"]})

answer = model.chat(
    msgs=msgs,
    tokenizer=tokenizer,
    stream=True
)

generated_text = ""
for new_text in answer:
    generated_text += new_text
    print(new_text, flush=True, end='')

You will get the following output:

# round1
The landform in the picture is karst topography. Karst landscapes are characterized by distinctive, jagged limestone hills or mountains with steep, irregular peaks and deep valleys—exactly what you see here These unique formations result from the dissolution of soluble rocks like limestone over millions of years through water erosion.

This scene closely resembles the famous karst landscape of Guilin and Yangshuo in China’s Guangxi Province. The area features dramatic, pointed limestone peaks rising dramatically above serene rivers and lush green forests, creating a breathtaking and iconic natural beauty that attracts millions of visitors each year for its picturesque views.

# round2
When traveling to a karst landscape like this, here are some important tips:

1. Wear comfortable shoes: The terrain can be uneven and hilly.
2. Bring water and snacks for energy during hikes or boat rides.
3. Protect yourself from the sun with sunscreen, hats, and sunglasses—especially since you’ll likely spend time outdoors exploring scenic spots.
4. Respect local customs and nature regulations by not littering or disturbing wildlife.

By following these guidelines, you'll have a safe and enjoyable trip while appreciating the stunning natural beauty of places such as Guilin’s karst mountains.
Chat with Video#
## The 3d-resampler compresses multiple frames into 64 tokens by introducing temporal_ids. 
# To achieve this, you need to organize your video data into two corresponding sequences: 
#   frames: List[Image]
#   temporal_ids: List[List[Int]].

import torch
from PIL import Image
from transformers import AutoModel, AutoTokenizer
from decord import VideoReader, cpu    # pip install decord
from scipy.spatial import cKDTree
import numpy as np
import math

model = AutoModel.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True,  # or openbmb/MiniCPM-o-2_6
    attn_implementation='sdpa', torch_dtype=torch.bfloat16) # sdpa or flash_attention_2, no eager
model = model.eval().cuda()
tokenizer = AutoTokenizer.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True)  # or openbmb/MiniCPM-o-2_6

MAX_NUM_FRAMES=180 # Indicates the maximum number of frames received after the videos are packed. The actual maximum number of valid frames is MAX_NUM_FRAMES * MAX_NUM_PACKING.
MAX_NUM_PACKING=3  # indicates the maximum packing number of video frames. valid range: 1-6
TIME_SCALE = 0.1 

def map_to_nearest_scale(values, scale):
    tree = cKDTree(np.asarray(scale)[:, None])
    _, indices = tree.query(np.asarray(values)[:, None])
    return np.asarray(scale)[indices]


def group_array(arr, size):
    return [arr[i:i+size] for i in range(0, len(arr), size)]

def encode_video(video_path, choose_fps=3, force_packing=None):
    def uniform_sample(l, n):
        gap = len(l) / n
        idxs = [int(i * gap + gap / 2) for i in range(n)]
        return [l[i] for i in idxs]
    vr = VideoReader(video_path, ctx=cpu(0))
    fps = vr.get_avg_fps()
    video_duration = len(vr) / fps
        
    if choose_fps * int(video_duration) <= MAX_NUM_FRAMES:
        packing_nums = 1
        choose_frames = round(min(choose_fps, round(fps)) * min(MAX_NUM_FRAMES, video_duration))
        
    else:
        packing_nums = math.ceil(video_duration * choose_fps / MAX_NUM_FRAMES)
        if packing_nums <= MAX_NUM_PACKING:
            choose_frames = round(video_duration * choose_fps)
        else:
            choose_frames = round(MAX_NUM_FRAMES * MAX_NUM_PACKING)
            packing_nums = MAX_NUM_PACKING

    frame_idx = [i for i in range(0, len(vr))]      
    frame_idx =  np.array(uniform_sample(frame_idx, choose_frames))

    if force_packing:
        packing_nums = min(force_packing, MAX_NUM_PACKING)
    
    print(video_path, ' duration:', video_duration)
    print(f'get video frames={len(frame_idx)}, packing_nums={packing_nums}')
    
    frames = vr.get_batch(frame_idx).asnumpy()

    frame_idx_ts = frame_idx / fps
    scale = np.arange(0, video_duration, TIME_SCALE)

    frame_ts_id = map_to_nearest_scale(frame_idx_ts, scale) / TIME_SCALE
    frame_ts_id = frame_ts_id.astype(np.int32)

    assert len(frames) == len(frame_ts_id)

    frames = [Image.fromarray(v.astype('uint8')).convert('RGB') for v in frames]
    frame_ts_id_group = group_array(frame_ts_id, packing_nums)
    
    return frames, frame_ts_id_group


video_path="video_test.mp4"
fps = 5 # fps for video
force_packing = None # You can set force_packing to ensure that 3D packing is forcibly enabled; otherwise, encode_video will dynamically set the packing quantity based on the duration.
frames, frame_ts_id_group = encode_video(video_path, fps, force_packing=force_packing)

question = "Describe the video"
msgs = [
    {'role': 'user', 'content': frames + [question]}, 
]


answer = model.chat(
    msgs=msgs,
    tokenizer=tokenizer,
    use_image_id=False,
    max_slice_nums=1,
    temporal_ids=frame_ts_id_group
)
print(answer)
Chat with multiple images#

Click to show Python code running MiniCPM-V 4.5 with multiple images input.

import torch
from PIL import Image
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True,
    attn_implementation='sdpa', torch_dtype=torch.bfloat16) # sdpa or flash_attention_2
model = model.eval().cuda()
tokenizer = AutoTokenizer.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True)

image1 = Image.open('image1.jpg').convert('RGB')
image2 = Image.open('image2.jpg').convert('RGB')
question = 'Compare image 1 and image 2, tell me about the differences between image 1 and image 2.'

msgs = [{'role': 'user', 'content': [image1, image2, question]}]

answer = model.chat(
    msgs=msgs,
    tokenizer=tokenizer
)
print(answer)
In-context few-shot learning#

Click to view Python code running MiniCPM-V 4.5 with few-shot input.

import torch
from PIL import Image
from transformers import AutoModel, AutoTokenizer

model = AutoModel.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True,
    attn_implementation='sdpa', torch_dtype=torch.bfloat16)
model = model.eval().cuda()
tokenizer = AutoTokenizer.from_pretrained('openbmb/MiniCPM-V-4_5-GPTQ', trust_remote_code=True)

question = "production date" 
image1 = Image.open('example1.jpg').convert('RGB')
answer1 = "2023.08.04"
image2 = Image.open('example2.jpg').convert('RGB')
answer2 = "2007.04.24"
image_test = Image.open('test.jpg').convert('RGB')

msgs = [
    {'role': 'user', 'content': [image1, question]}, {'role': 'assistant', 'content': [answer1]},
    {'role': 'user', 'content': [image2, question]}, {'role': 'assistant', 'content': [answer2]},
    {'role': 'user', 'content': [image_test, question]}
]

answer = model.chat(
    msgs=msgs,
    tokenizer=tokenizer
)
print(answer)

License#

Model License#
  • The MiniCPM-o/V model weights and code are open-sourced under the Apache-2.0 license.
  • To help us better understand and support our users, we would deeply appreciate it if you could consider optionally filling out a brief registration "questionnaire".
Statement#
  • As an LMM, MiniCPM-V 4.5 generates contents by learning a large amount of multimodal corpora, but it cannot comprehend, express personal opinions or make value judgement. Anything generated by MiniCPM-V 4.5 does not represent the views and positions of the model developers
  • We will not be liable for any problems arising from the use of the MinCPM-V models, including but not limited to data security issues, risk of public opinion, or any risks and problems arising from the misdirection, misuse, dissemination or misuse of the model.

Key Techniques and Other Multimodal Projects#

👏 Welcome to explore key techniques of MiniCPM-V 4.5 and other multimodal projects of our team:

VisCPM | RLPR | RLHF-V | LLaVA-UHD | RLAIF-V

Citation#

If you find our work helpful, please consider citing our papers 📝 and liking this project ❤️!

@misc{yu2025minicpmv45cookingefficient,
      title={MiniCPM-V 4.5: Cooking Efficient MLLMs via Architecture, Data, and Training Recipe}, 
      author={Tianyu Yu and Zefan Wang and Chongyi Wang and Fuwei Huang and Wenshuo Ma and Zhihui He and Tianchi Cai and Weize Chen and Yuxiang Huang and Yuanqian Zhao and Bokai Xu and Junbo Cui and Yingjing Xu and Liqing Ruan and Luoyuan Zhang and Hanyu Liu and Jingkun Tang and Hongyuan Liu and Qining Guo and Wenhao Hu and Bingxiang He and Jie Zhou and Jie Cai and Ji Qi and Zonghao Guo and Chi Chen and Guoyang Zeng and Yuxuan Li and Ganqu Cui and Ning Ding and Xu Han and Yuan Yao and Zhiyuan Liu and Maosong Sun},
      year={2025},
      eprint={2509.18154},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2509.18154}, 
}

@article{yao2024minicpm,
  title={MiniCPM-V: A GPT-4V Level MLLM on Your Phone},
  author={Yao, Yuan and Yu, Tianyu and Zhang, Ao and Wang, Chongyi and Cui, Junbo and Zhu, Hongji and Cai, Tianchi and Li, Haoyu and Zhao, Weilin and He, Zhihui and others},
  journal={Nat Commun 16, 5509 (2025)},
  year={2025}
}

Files

22 files · 7.13 GBWeights 7.11 GB (safetensors). Sizes and sha256 from the signed manifest.
Show all 22 files with their sha256
FileSizesha256
.gitattributes1.57 KB34448b82c17d60fec9b65b1f093c115ddbaadc04beb1b0140b6bfed2e012a930
README.md25.6 KBec2e4218705c447b1d95174739836d9bbf0e06084890dfc4b402764f07182655
added_tokens.json2.86 KB1f41288392d77dd5dd9f235bdef78a3152d41651ff56b15ebdec476e3aa1cb7f
config.json7.41 KB2dcd323d48bce420146cbe23c0a128192ade7e32cb7d7ce2bcb0ee9ac6c4d25c
configuration_minicpm.py3.29 KBbfdb65b291246e0d709831df2e10aaba96b94d2369f670f3ad831711d2f97e45
generation_config.json268 B4009ca3d9e615561897c0f4963bd01c26bccff50eda4b00fcf2c13cf3fcc86db
image_processing_minicpmv.py20.8 KB52888748938f40fec0827d187383b4a8fa857f4cffad5a0939e2e449051950d7
merges.txt1.67 MB8831e4f1a044471340f7c0a83d7bd71306a5b867e95fd870f74d0c5308a904d5
model-00001-of-00002.safetensors4.29 GB2c740764bbcf38170b9f182a6c720536b1aac8d75fd5eeae4e75ecdd3e224f96
model-00002-of-00002.safetensors2.82 GBb7511be0f1e7790176b91d3e2df35c5b2f6d3ee56d1bef8e5205e87bb60cf990
model.safetensors.index.json137 KB9a3f6522378f15b12a3abc31699914fd065dcb3573390e91f5a6e4ae9eeae5d1
modeling_minicpmv.py18.6 KBda7e53e9fd1ee931f8888ea5d78a53a903edb97a5634f0961d3347571f411cc6
modeling_navit_siglip.py41.8 KBc71ca316fe7405325b7097364f98f71c317fff8c9f5c8820f30d3362b1ed5bfa
preprocessor_config.json714 B5c0dbc92920ded2304e2ed6ad4251da56029aa1f3f69427117ac6df9bc68496e
processing_minicpmv.py11.0 KBaeb292555aba3362108eb10827234c48b9fede526398cc15bdbec798ba2c7fdd
quantize_config.json268 B4fedb690e8386a507da62b7019ba1ba968744a50286a2af3a86741fc323749be
resampler.py11.7 KB9258b6e6e0b66fd5d3ce7127372fd82eff3659481602658045c253ae18e8d5be
special_tokens_map.json12.1 KB742d22f66cc33f367b17d45d8dcb5ffde7d777fe94a9b05ee858dc43018c2016
tokenization_minicpmv_fast.py1.65 KB770e4a934f2e74e0e88e85126bceea93e345d84b411d21e99b38c5cfd095f736
tokenizer.json11.4 MBc5a94a2c3913b8aa2175fffb5fd6cf4301958f323d06475bfd91037c13bdd74b
tokenizer_config.json25.8 KB8cbacbea273108831f02441518bbbc73627c15e34ddaa3fec6369e7bd07b720c
vocab.json2.78 MBca10d7e9fb3ed18575dd1e277a2579c16d108e32f27439684afa0e10b1440910
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
b68f43fe2a pinned now2026-11-15 05:21 UTC22 files · 7.13 GB

Use it

$ fw get openbmb/MiniCPM-V-4_5-GPTQ
# manifest sha256 7a9a54d1f4a8… · 7.13 GB · 22 files
$ fw verify ./MiniCPM-V-4_5-GPTQ openbmb/MiniCPM-V-4_5-GPTQ
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/openbmb/MiniCPM-V-4_5-GPTQ.json --dir ./MiniCPM-V-4_5-GPTQ $ python3 fw.py verify ./MiniCPM-V-4_5-GPTQ ./openbmb__MiniCPM-V-4_5-GPTQ.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download openbmb/MiniCPM-V-4_5-GPTQ --revision b68f43fe2ae7d18c12e9c69002f6232cc04d0b9e --local-dir ./MiniCPM-V-4_5-GPTQ
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForImageTextToText, AutoProcessor processor = AutoProcessor.from_pretrained("openbmb/MiniCPM-V-4_5-GPTQ", revision="b68f43fe2ae7d18c12e9c69002f6232cc04d0b9e") model = AutoModelForImageTextToText.from_pretrained("openbmb/MiniCPM-V-4_5-GPTQ", revision="b68f43fe2ae7d18c12e9c69002f6232cc04d0b9e", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve openbmb/MiniCPM-V-4_5-GPTQ --revision b68f43fe2ae7d18c12e9c69002f6232cc04d0b9e

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
ec2e4218705c447b1d95174739836d9bbf0e06084890dfc4b402764f07182655
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: openbmb <huggingface.co/openbmb>Newsgroups: alt.freeweights.minicpmSubject: MiniCPM-V-4_5-GPTQDate: 2026-11-15Commit: b68f43fSigned: 2DC28CC7B26A283B ✓
Upstream
openbmb/MiniCPM-V-4_5-GPTQ
Pinned commit
b68f43fe2ae7d18c12e9c69002f6232cc04d0b9e
Manifest
MiniCPM-V-4_5-GPTQ.json · .minisig
Manifest sha256
7a9a54d1f4a852b7f15840be5d8e219ece08b527941696420132f357fc6a04b7
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 05:21 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/openbmb/MiniCPM-V-4_5-GPTQ.json $ curl -O https://freeweights.allternit.com/manifests/openbmb/MiniCPM-V-4_5-GPTQ.json.minisig $ minisign -Vm MiniCPM-V-4_5-GPTQ.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

Parent

openbmb/MiniCPM-V-4_5 · this model is a quantization of it

No model in the catalog names this one as its parent.

Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download openbmb/MiniCPM-V-4_5-GPTQ
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. MiniCPM-V-4_5-GPTQ.json. Provenance. Takedown history: none.
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Explore-GGUF
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Report
From: openbmb <huggingface.co/openbmb>Subject: AgentCPM-Report-GGUF
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-0.5B-gguf
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-1B-gguf
From: openbmb <huggingface.co/openbmb>Subject: BitCPM-CANN-3B-gguf