--- title: Qwen3.5-OCR-JP-2B emoji: 📄 colorFrom: blue colorTo: gray sdk: gradio sdk_version: 5.50.0 app_file: app.py pinned: false license: apache-2.0 hardware: zero-a10g models: - ebinan92/Qwen3.5-ocr-jp-2b --- # Qwen3.5-OCR-JP-2B Gradio demo for [`ebinan92/Qwen3.5-ocr-jp-2b`](https://huggingface.co/ebinan92/Qwen3.5-ocr-jp-2b) on Hugging Face Spaces. ## Configuration Set these Space variables as needed: - `MODEL_ID`: Hugging Face model repo or local model path. Defaults to `ebinan92/Qwen3.5-ocr-jp-2b`. - `HF_TOKEN`: required Space **Secret** for private models (read scope). - `MAX_IMAGE_PIXELS`: area-based image cap (px²). Defaults to `2359296` (1536²) ≈ 2300 visual tokens — matches the [chandra-ocr-2 reference Space](https://huggingface.co/spaces/victor/chandra-ocr-2) for ZeroGPU-friendly latency. - `PDF_DPI`: PDF render DPI. Defaults to `180`. - `CONCURRENCY_LIMIT`: Gradio queue concurrency. Defaults to `1`. Hardware: ZeroGPU (`hardware: zero-a10g`). Inference uses HF transformers + **flash-linear-attention** (Qwen3.5 has 18 linear-attention layers; without optimized CUDA kernels they fall back to a 5–10x slower Python path). Runs inside `@spaces.GPU(duration=180)`. Expect ~60–120s/page.