docs: Formeln im Fließtext (pdf2md --formulas), Tempo, Qwen mit 8 Plätzen
- README: Ablauf für PDF-Bücher mit --formulas, Quelle pdf2md --formulas, Satzzeichen nach eingebetteten Formeln, Stand Corral (10 %: 79 % automatisch, ~2 h ganzes Buch), Pilot 70 → ~24 min, Einstellung pdftext, crops/ und bericht/ im Arbeitsordner, 8B-Modell gemessen und verworfen - BEDIENUNGSANLEITUNG: llama-server --parallel 8 -c 32768, pix2text auf freiester GPU, pdf2md --formulas, Statuszeile mit Zeiten je Stufe, Dauer, EPUB mit --from-md Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
6373db73a4
commit
be6ba0b926
1 changed files with 76 additions and 19 deletions
|
|
@ -32,7 +32,7 @@ Zwei Vision-Sprachmodelle lesen jede Formel, je eines pro Grafikkarte (je ~18–
|
|||
M=~/endeavour_home/lm_studio/models/lmstudio-community/Qwen3-VL-30B-A3B-Instruct-GGUF
|
||||
CUDA_VISIBLE_DEVICES=1 ~/.local/bin/llama-server \
|
||||
-m $M/Qwen3-VL-30B-A3B-Instruct-Q4_K_M.gguf --mmproj $M/mmproj-Qwen3-VL-30B-A3B-Instruct-F16.gguf \
|
||||
--host 127.0.0.1 --port 8011 -ngl 99 -c 16384 --parallel 4
|
||||
--host 127.0.0.1 --port 8011 -ngl 99 -c 32768 --parallel 8
|
||||
|
||||
# Modell B: Gemma 4 auf GPU 2, Port 8012
|
||||
M=~/nvme2n1p7_home/huggingface/models/gemma4
|
||||
|
|
@ -41,7 +41,8 @@ CUDA_VISIBLE_DEVICES=2 ~/.local/bin/llama-server \
|
|||
--host 127.0.0.1 --port 8012 -ngl 99 -c 16384 --parallel 4
|
||||
```
|
||||
|
||||
Gemma braucht auf GPU 2 rund 17,5 GB. Laufen dort Chatterbox-TTS und der STT-Server, reicht der Speicher
|
||||
Qwen läuft mit 8 Plätzen zu je 4096 Tokens (zusammen 32768) und belegt rund 22,6 GB; `run` stellt bis zu
|
||||
8 Anfragen gleichzeitig. Gemma braucht auf GPU 2 rund 17,5 GB. Laufen dort Chatterbox-TTS und der STT-Server, reicht der Speicher
|
||||
nicht (Gemma bricht beim ersten Bild mit „out of memory“ ab); dann vorher stoppen und danach wieder starten:
|
||||
|
||||
```bash
|
||||
|
|
@ -63,7 +64,8 @@ pip install --no-deps pix2tex munch # nur für post_p
|
|||
pip uninstall -y onnxruntime && pip install onnxruntime-gpu # für die GPU
|
||||
```
|
||||
|
||||
Das Modell (~300 MB) wird beim ersten Lauf nach `~/.pix2text` geladen. Gerät wählen mit
|
||||
Das Modell (~300 MB) wird beim ersten Lauf nach `~/.pix2text` geladen. Ohne Angabe nimmt pix2text die
|
||||
Grafikkarte mit dem meisten freien Speicher und liest die Formeln gebündelt. Gerät festlegen mit
|
||||
`FORMULA_P2T_DEVICE=cpu` oder `cuda:N` (`N` zählt innerhalb von `CUDA_VISIBLE_DEVICES`).
|
||||
|
||||
Gemma (Port 8012) wird nur für Formeln gefragt, bei denen pix2text und Qwen uneinig sind. Läuft Gemma
|
||||
|
|
@ -86,7 +88,16 @@ cd ~/Python_Programs/epub2md
|
|||
python3 epub2md.py buch.epub output/buch
|
||||
```
|
||||
|
||||
Bei PDFs mit pdf2md immer `--images` (oder `--epub`) angeben, sonst gibt es keine Formelbilder.
|
||||
Bei PDFs mit pdf2md immer `--images` (oder `--epub`) angeben, sonst gibt es keine Formelbilder. Für
|
||||
Mathebücher **`--formulas`** verwenden: Dann findet pdf2md jede Formel auf der Seite, auch im Fließtext und
|
||||
in Merkkästen, und schneidet sie als Bild aus (braucht pix2text, siehe oben):
|
||||
|
||||
```bash
|
||||
cd ~/Python_Programs/pdf2md
|
||||
python3 pdf2md.py --formulas --epub buch.pdf Output/buch/buch.md
|
||||
```
|
||||
|
||||
Das dauert bei 350 Seiten gut 10 Minuten (Corral: 9239 Formeln).
|
||||
|
||||
### Schritt 2: Formeln erkennen und prüfen
|
||||
|
||||
|
|
@ -101,10 +112,11 @@ Bei pdf2md zusätzlich die Original-PDF angeben. Dann schneidet das Programm jed
|
|||
python3 formula_img2latex.py run Output/buch.md --pdf buch.pdf
|
||||
```
|
||||
|
||||
Das Programm arbeitet in Paketen zu 50 Formeln und meldet nach jedem Paket den Stand:
|
||||
Das Programm arbeitet in Paketen zu 50 Formeln und meldet nach jedem Paket den Stand und die Zeiten je
|
||||
Stufe (die Stufen laufen teils gleichzeitig, daher ist die Summe größer als die Paketzeit):
|
||||
|
||||
```text
|
||||
100/1505 verarbeitet: automatisch ersetzt 68 (68%), Review 28, bleibt Bild/keine Formel 4
|
||||
100/940 verarbeitet: automatisch ersetzt 78 (78%), Review 20, bleibt Bild/keine Formel 2 [Paket 35 s; pix2text 3 s, Qwen 30 s, Prüfung 14 s, Gemma 21 s]
|
||||
```
|
||||
|
||||
Am Ende steht eine Übersicht je Status, beim Gehrke-Brückenkurs zum Beispiel:
|
||||
|
|
@ -116,10 +128,10 @@ Am Ende steht eine Übersicht je Status, beim Gehrke-Brückenkurs zum Beispiel:
|
|||
pending 539 ← Abbildungen/Symbole, nicht geprüft
|
||||
```
|
||||
|
||||
Dauer: Mit der früheren Regel (Version 0.2.0, mit GLM) etwa 5 Minuten je 50 Formeln, ein Buch mit 1500
|
||||
Formelbildern also rund 2,5 Stunden. Mit der jetzigen Regel liest pix2text eine Formel in ~0,15 s und Qwen
|
||||
in ~0,8 s, Gemma nur bei Uneinigkeit; an 2 × 50 Testformeln dauerte das Lesen im Mittel 1,5–2,3 s je
|
||||
Formel (ohne Bildprüfung). Ein ganzes Buch ist damit noch nicht gemessen.
|
||||
Dauer: etwa 0,8 s je Formel, also 35–50 Sekunden je Paket (Corral mit `--formulas`: 940 Formeln in
|
||||
13 Minuten, das ganze Buch mit 9239 Formeln rund 2 Stunden). Am längsten braucht die Bestätigung durch Qwen.
|
||||
Der Scan liest beim ersten Mal alle Bilder ein (Corral: 6 Minuten); beim Fortsetzen entfällt er, solange
|
||||
sich das Markdown nicht geändert hat.
|
||||
Abbrechen (Strg+C) und erneut starten ist kein Problem: Bereits gelesene Formeln werden nicht noch einmal
|
||||
gefragt, der Lauf setzt fort. `--chunk 100` ändert die Paketgröße, `--limit 200` verarbeitet nur die ersten
|
||||
200 Bilder.
|
||||
|
|
@ -163,7 +175,14 @@ python3 formula_img2latex.py apply ~/Python_Programs/epub2md/output/buch
|
|||
```
|
||||
|
||||
Aus `` wird `$L = \{-\sqrt{2};\sqrt{2}\}$` im Text bzw. `$$…$$` als eigener
|
||||
Absatz. Die Bilddateien bleiben liegen.
|
||||
Absatz. Die Bilddateien bleiben liegen. Hat die Formelerkennung bei einer Formel im Text ein Satzzeichen
|
||||
mit ausgeschnitten, steht es danach als normaler Text hinter der Formel (`$a^{x}$,`).
|
||||
|
||||
Bei pdf2md-Büchern baut `pdf2md.py --from-md` das EPUB neu, mit allen Formeln als MathML:
|
||||
|
||||
```bash
|
||||
cd ~/Python_Programs/pdf2md && python3 pdf2md.py --from-md Output/buch/buch.md
|
||||
```
|
||||
|
||||
**Danach die Gesamtdatei neu bauen**, sie enthält sonst noch die Bilder:
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue