CircuitOCR LoRA Weights
LoRA fine-tuning weights for PaddleOCR-VL-0.9B on circuit schematic OCR.
Available Checkpoints
| Version | File | Checkpoint | CompF1 | NED β | Notes |
|---|---|---|---|---|---|
| V10-Fixed β | lora_best_v10_fixed_fp16.pdparams |
S600 | 0.2061 | 0.8031 | Best checkpoint, r=16 |
| V10-Fixed | lora_v10_fixed_final_fp16.pdparams |
S800 | 0.2080 | 0.8063 | Overfits (RepRate 40.9%) |
| V11-Regularized | lora_best_v11_regularized_fp16.pdparams |
S600 | β | β | Dropout=0.05 |
| V12-Stage2 | lora_best_v12_stage2_fp16.pdparams |
β | β | β | Two-stage vision+LLM LoRA |
| V13-HiRes | lora_best_v13_fp16.pdparams |
β | 0.1781 | β | r=32, max_dim=512, dropout=0.05 |
| V9-Pure | lora_best_v9_pure_fp16.pdparams |
β | β | β | Pure OCR dataset baseline |
| Projector-only | lora_projector_only_fp16.pdparams |
β | β | β | Vision projector only, no LLM LoRA |
| Projector r16 | lora_projector_r16_fp16.pdparams |
β | β | β | Full LoRA r16 (early) |
Benchmark on easy50-pure (44 samples), evaluated with
eval_benchmark_v3.py. S600 is the recommended checkpoint; S800 shows overfitting (repetition rate 40.9%).
Architecture
- Base model: PaddleOCR-VL-0.9B
- LoRA: r=16, alpha=32, target_modules=[q_proj, k_proj, v_proj, o_proj]
- Trainable params: 5.7M / 0.9B (0.6%)
- Training: 1,554 samples, 3 epochs, RTX 4060 8GB (~34 min)
Quick Start
from paddlex import PaddleOCRVLModel
model = PaddleOCRVLModel.from_pretrained("PaddleOCR-VL/PaddleOCR-VL-0.9B")
model.load_lora_weights("yingchu83/CircuitOCR-lora", "lora_best_v10_fixed_fp16.pdparams")
Links
Inference Providers NEW
This model isn't deployed by any Inference Provider. π Ask for provider support