Batch recognition
File queue
- Supports PDF, PNG, JPEG and TIFF, added by drag and drop or the Add files button.
- Entries are de-duplicated by path, so dropping the same file twice is harmless.
- Each task reports waiting, running, done, failed or cancelled.
- Failed tasks keep their error detail and can be retried alone without touching the rest.
Batch options
Batch options apply to the whole queue and are merged as app default → engine default → batch.
| Option | Default | Values |
|---|---|---|
| Batch engine | Follow app default | App default / installed engines |
| Language | Auto detect | Auto detect / Chinese (Simplified) / English |
| Concurrency | 1 | 1 / 2 / 3 |
| Keep layout structure | On | On / Off |
Concurrency defaults to 1 to avoid contention on a single machine. macOS and Windows allow 3; low-end Linux is best kept at 1. Expanding the panel also reveals the active engine's inference parameters.
Inference parameters
The panel follows the engine adapter:
- llama.cpp family (MiniCPM-OCR, Xiaomi-OCR-0, PaddleOCR-VL):
prompt,temperature,topP,topK,repeatPenalty,maxTokens,layoutThreshold. - PP-OCR ONNX:
detBoxThreshold,layoutThreshold.
Empty fields keep engine or model defaults. Invalid values are ignored with a warning while the remaining fields still apply. "Fill recommended values" restores the official MiniCPM-OCR sampling parameters.
layoutThreshold is the layout confidence threshold and only applies while Keep layout structure is on. Region switches such as seals or charts appear only on engines that support those capabilities.
Per-task overrides
Double-click a task (or choose Override in its menu) to open the override panel:
- Keys match the batch options; fill only what changes and the rest keeps inheriting;
- Overrides apply to that task only and never write back to the batch;
- Each field shows which layer its current value comes from, so nothing silently fails to apply.
Merge order is fixed: app defaults → engine defaults → batch options → task overrides.
Run, cancel, retry
- Start processes the queue in order, with concurrency from the batch options.
- Cancel stops the whole batch, resets states and cleans temporary output, leaving no half-written files.
- A single failure never aborts the batch; retry failed items individually.
- Progress is reported per stage (preprocess, layout, recognition, postprocess), with both overall and current-task progress.
- Long runs write to the task log, filterable, copyable and clearable on the logs page.
Performance notes
- On low-end hardware keep concurrency at 1 and lower the quantization level instead.
- For many small images start with PP-OCRv6, confirm the layout, then switch to a VLM engine.
- Use a mid-size model for scans and MiniCPM-OCR for photos and curved pages.
- Turning off Keep layout structure saves significant VLM time but drops reading order and block types.