mirror of
https://github.com/MODSetter/SurfSense.git
synced 2026-10-21 05:05:36 +00:00
Every PDF went through Docling's layout, OCR and TableFormer models, about 3 s a page (5.5 on table pages) plus an 11 s cold start and 1 GB of RSS. A born-digital PDF already carries its text: pdfium reads it in about 7 ms a page with the page check. A PDF is now read from its text layer when every page passes a per-page check (no scans, scanner OCR layers, garbled or margin-only text, rotated pages or filled form fields); otherwise Docling reads it as before. Pages are joined with a blank line, soft hyphens are rejoined. Text-read PDFs keep their figures through the figures-only pass: on first request, and at idle priority when the file has images. Measured through the upload route on an idle Ryzen 5800X: Executive Summary (12 pp) 16.7 s -> 1.4 s, Operating Budget (46 pp) 125.6 s -> 9.0 s, a 33-page spec 73 s -> 3.8 s. In a Basic-mode A/B on the Boston budget corpus the shipped text scored 0.70 strict against 0.60 for Docling's markdown; a second, smaller corpus is 2.9 points behind on table cells. SURFSENSE_LOCAL_PDF_TEXT_LAYER=off restores Docling for every PDF. ADR 0059. |
||
|---|---|---|
| .. | ||
| agent | ||
| claude-plan | ||
| docker | ||
| file-agent | ||
| plugins | ||
| chat-eval.md | ||
| cjk-keyword-search.md | ||
| cuda-backend.md | ||
| embedding-model-change.md | ||
| embedding-model-choice.md | ||
| local-audio-models.md | ||
| local-image-and-video-models.md | ||
| local-speech-to-text.md | ||
| model-catalog.md | ||
| parser-gpu.md | ||
| retrieval.md | ||
| source-preview.md | ||