Chart Recognition Status Investigation:
- OpenSpec limitation record is ACCURATE but based on old PaddlePaddle 3.0.0 (Mar 2025)
- PaddlePaddle has released multiple updates (3.1.x, 3.2.x, latest: 3.2.2 Nov 2025)
- The fused_rms_norm_ext API MAY now be available in newer versions
Root Cause:
- PaddleOCR-VL chart recognition requires paddle.incubate.nn.functional.fused_rms_norm_ext
- PaddlePaddle 3.0.0 only provided fused_rms_norm (base version)
- Not a compatibility issue - PaddleOCR 3.x is fully compatible with PaddlePaddle 3.x
- Issue is missing API, not version mismatch
What Still Works (Even with Chart Recognition Disabled):
✅ Chart detection and extraction as images
✅ Table recognition (with nested formulas/images)
✅ Formula recognition
✅ Text recognition (OCR core)
What's Disabled:
❌ Deep chart understanding (type, data extraction, axis/legend parsing)
❌ Converting chart content to structured data
Created Files:
1. CHART_RECOGNITION.md - Comprehensive guide explaining:
- Current limitation status and history
- What works vs what's disabled
- How to verify if newer PaddlePaddle versions support the API
- How to enable chart recognition if API becomes available
- Troubleshooting and performance considerations
2. backend/verify_chart_recognition.py - Verification script to:
- Check if fused_rms_norm_ext API is available
- Display current PaddlePaddle version
- Provide actionable recommendations
Next Steps for Users:
1. Run: conda activate tool_ocr && python backend/verify_chart_recognition.py
2. If API is available, enable chart recognition in ocr_service.py:217
3. Update OpenSpec if limitation is resolved in newer versions
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>