← MIC coverage of Transformers model types

openbmb/MiniCPM-OCR-1.0

huggingface-mic/MiniCPM-OCR-1.0-mic@e1d4b2467a7a ← openbmb/MiniCPM-OCR-1.0@38498ccffef8 · MiniCPMOcrForConditionalGeneration · random weights

CI: no failure on main in 30 days · MIC failures dashboard

Original1.3Bparameters
Fixture16.7Mparameters
Layer stacks3compared
Findings0to review

✓ Same architecture, smaller

Every module class, layer kind and checked property of the original is in the fixture.

Model tester (advisory)

The model's own small test config in its ModelTester (43 literal values, 28 set by the model's own tester, the rest generic base-tester defaults). Testers are usually representative but not always, so these notes are for review, not rules.

The fixture covers every per-layer kind the tester sets, and shrinks every size it does.

Layer stacks

One square per layer, colored by kind: the layer's module classes and type attributes. Hover a square for its index and kind.

model.vision_tower.encoder.layers

Original · 27
Fixture · 2
KindOriginalFixture
VisionEncoderLayer272✓ kept

model.language_model.layers

Original · 24
Fixture · 2
KindOriginalFixture
linear_attention, Conv1d, Qwen3_5GatedDeltaNet …181✓ kept
is_causal=True, Qwen3_5Attention61✓ kept

model.merger.mlp

Original · 1
Fixture · 1
KindOriginalFixture
GELU11✓ kept

Where the parameters are

Share of each model's parameters per component. Vocabulary and patch sizes are kept, so embeddings usually take a larger share of the fixture.

Original
Fixture
ComponentOriginalShareFixtureShare
model.language_model.layers498.1M38.3%152.9K0.9%
model.vision_tower.encoder.layers411.5M31.6%66.9K0.4%
model.language_model254.1M19.5%15.9M95.0%
model.vision_tower110.8M8.5%533.1K3.2%
model.merger.mlp26.0M2.0%82.8K0.5%

Preserved properties

ConfigPropertyOriginalFixture
modelmodel_typeminicpm_ocrminicpm_ocr✓ kept
modeltie_word_embeddingsTrueTrue✓ kept
modelpatch_size1414✓ kept
text_configattention styleGQA (8 heads, 2 KV)GQA (4 heads, 2 KV)✓ kept
text_configRoPE typedefaultdefault✓ kept
text_configmodel_typeqwen3_5_textqwen3_5_text✓ kept
text_configvocab_size248100248100✓ kept
text_configtie_word_embeddingsTrueTrue✓ kept
text_confighidden_actsilusilu✓ kept
text_configmax_position_embeddings262144262144✓ kept
vision_configmodel_typeminicpm_ocr_visionminicpm_ocr_vision✓ kept
vision_confighidden_actgelu_pytorch_tanhgelu_pytorch_tanh✓ kept
vision_configimage_size980980✓ kept
vision_configpatch_size1414✓ kept
vision_confignum_channels33✓ kept

Module classes

Instances of each class in the built model (prefix MiniCPMOcr omitted).

ClassOriginalFixture
Linear35736
Qwen3_5RMSNorm617
LayerNorm588
GELUTanh283
VisionAttention283
VisionEncoderLayer272
VisionMLP272
Qwen3_5DecoderLayer242
Qwen3_5MLP242
SiLUActivation242
Conv1d181
Qwen3_5GatedDeltaNet181
Qwen3_5RMSNormGated181
Qwen3_5Attention61
ModuleList33
Embedding22
Conv2d11
GELU11
DownsampleMLP11
ForConditionalGeneration11
Merger11
Model11
ViTWindowAttentionMerger11
VisionEmbeddings11
VisionEncoder11
VisionModel11
Qwen3_5TextModel11
Qwen3_5TextRotaryEmbedding11

Config changes

12 fields changed, 66 unchanged.

FieldOriginalFixture
text_config.head_dim25616
text_config.hidden_size102464
text_config.intermediate_size3584128
text_config.layer_types24 entries: 18× linear_attention, 6× full_attention["linear_attention", "full_attention"]
text_config.linear_key_head_dim12816
text_config.linear_value_head_dim12816
text_config.num_attention_heads84
text_config.num_hidden_layers242
vision_config.hidden_size115264
vision_config.intermediate_size4304128
vision_config.num_attention_heads164
vision_config.num_hidden_layers272