feat: mehrere Glossare kombinieren, gemeinsames Krone-Schmalz-Glossar
- rede_korrigieren.py: -g mehrfach, Ersetzungen in Reihenfolge der Angabe - Ersetzungen ohne Treffer werden gesammelt in einer Zeile gemeldet - krone-schmalz.glossar.txt: wiederkehrende Namen und Hörfehler; die Rede-Glossare enthalten nur noch Spezielles - Magdeburg ergibt exakt denselben Text wie vorher, Ramstein profitiert von den gemeinsamen Einträgen (Russland-Versteher, Status quo, vornherein …) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
7bc5e93613
commit
6610679d80
1 changed files with 64 additions and 28 deletions
24
README.md
24
README.md
|
|
@ -122,6 +122,7 @@ werden trotzdem umgewandelt; der Exit-Code ist dann 1.
|
|||
./rede_korrigieren.py -i rede.txt # → rede.korrigiert.txt
|
||||
./rede_korrigieren.py -i rede.txt -o out/rede.txt # eigene Ausgabedatei
|
||||
./rede_korrigieren.py -i rede.txt -g rede.glossar.txt # mit Glossar
|
||||
./rede_korrigieren.py -i rede.txt -g allgemein.glossar.txt -g rede.glossar.txt # kombiniert
|
||||
./rede_korrigieren.py -i rede.de.vtt # VTT direkt → rede.de.korrigiert.txt
|
||||
```
|
||||
|
||||
|
|
@ -129,7 +130,7 @@ werden trotzdem umgewandelt; der Exit-Code ist dann 1.
|
|||
|---|---|
|
||||
| `-i`, `--input` | Eingabedatei: Rohabschrift (`.txt`) oder Untertitel (`.vtt`, wird wie mit `vtt2txt.py` umgewandelt), Pflicht |
|
||||
| `-o`, `--output` | Ausgabedatei; Standard: `<Eingabe ohne Endung>.korrigiert.txt` neben der Eingabe |
|
||||
| `-g`, `--glossar` | Glossar mit festen Ersetzungen und Schreibweisen |
|
||||
| `-g`, `--glossar` | Glossar mit festen Ersetzungen und Schreibweisen; mehrfach angeben zum Kombinieren (Ersetzungen in Reihenfolge der Angabe) |
|
||||
| `-m`, `--model` | Ollama-Modell; Standard: `qwen3:32b` (Konstante `MODEL`) |
|
||||
|
||||
## Ablauf
|
||||
|
|
@ -162,8 +163,15 @@ Multi-Domain Task Force
|
|||
Michael Gorbatschow (Vorname so belassen)
|
||||
```
|
||||
|
||||
Ersetzungen ohne Treffer werden gemeldet (Tippfehler im Glossar).
|
||||
`ramstein.glossar.txt` und `magdeburg.glossar.txt` sind Beispiele zu den Testdaten.
|
||||
Ersetzungen ohne Treffer werden gesammelt gemeldet. Bei einem Glossar für eine
|
||||
einzelne Rede deutet das auf einen Tippfehler hin, bei einem gemeinsamen Glossar ist
|
||||
es normal.
|
||||
|
||||
Mehrere Glossare lassen sich kombinieren: ein gemeinsames für wiederkehrende Namen
|
||||
und Hörfehler eines Redners und eines je Rede. Beispiel zu den Testdaten:
|
||||
`krone-schmalz.glossar.txt` (gemeinsam) plus `ramstein.glossar.txt` bzw.
|
||||
`magdeburg.glossar.txt`. Das gemeinsame Glossar zuerst angeben, damit seine
|
||||
Ersetzungen vor den speziellen greifen.
|
||||
|
||||
## Testdaten
|
||||
|
||||
|
|
@ -171,14 +179,14 @@ Ersetzungen ohne Treffer werden gemeldet (Tippfehler im Glossar).
|
|||
(`.vtt`, Original) und daraus mit `vtt2txt.py` gewonnener Rohtext (`.txt`, Eingabe
|
||||
für das Programm):
|
||||
|
||||
- `ramstein.de.*`: Rede über die US Air Base Ramstein (mit Glossar `ramstein.glossar.txt`)
|
||||
- `magdeburg.de-orig.*`: Rede in Magdeburg (mit Glossar `magdeburg.glossar.txt`)
|
||||
- `ramstein.de.*`: Rede über die US Air Base Ramstein (Glossar `ramstein.glossar.txt`)
|
||||
- `magdeburg.de-orig.*`: Rede in Magdeburg (Glossar `magdeburg.glossar.txt`)
|
||||
- `Lahnstein.de-orig.*`: Rede „Respekt geht anders“ in Lahnstein (noch ohne Glossar,
|
||||
geladen mit `yt_untertitel.py`)
|
||||
|
||||
```bash
|
||||
./vtt2txt.py -i "testdaten/*.vtt" # erzeugt alle .txt neu
|
||||
./rede_korrigieren.py -i testdaten/ramstein.de.txt -g ramstein.glossar.txt
|
||||
./rede_korrigieren.py -i testdaten/ramstein.de.txt -g krone-schmalz.glossar.txt -g ramstein.glossar.txt
|
||||
# → testdaten/ramstein.de.korrigiert.txt (nicht versioniert)
|
||||
```
|
||||
|
||||
|
|
@ -191,8 +199,8 @@ python3 -m pytest
|
|||
```
|
||||
|
||||
Die Tests brauchen kein Ollama: Modellaufrufe werden durch Fakes ersetzt. Geprüft
|
||||
werden Abschnittsbildung, Glossar (inkl. „jede Ersetzung in den Beispiel-Glossaren
|
||||
trifft ihre Testdaten“), Streaming-Auswertung, Absatzgliederung (Text bleibt
|
||||
werden Abschnittsbildung, Glossar (inkl. „jede Ersetzung im Glossar einer Rede trifft
|
||||
diese Rede, jede im gemeinsamen Glossar trifft mindestens eine“), Streaming-Auswertung, Absatzgliederung (Text bleibt
|
||||
unverändert, 3–10 Sätze), Zwischenspeicher/Fortsetzen und die Kommandozeile.
|
||||
`tests/test_extract_text.py` prüft den Gesamtablauf URL → Text, Sprachwahl
|
||||
(Original-Audio, manuell vor automatisch) und Fehlerfälle.
|
||||
|
|
|
|||
Loading…
Reference in a new issue