README.md aktualisiert
This commit is contained in:
parent
6e1858318e
commit
f60ee76694
47
README.md
47
README.md
|
|
@ -2,11 +2,7 @@
|
||||||
|
|
||||||
## Description
|
## Description
|
||||||
|
|
||||||
Dieses Tool konvertiert Rechnungen im PDF-Format vollautomatisch in das offizielle XRechnung-XML-Format (UBL-Standard, Version 3.0). Das System verarbeitet sensible Finanzdaten vollständig lokal auf der eigenen Hardware und verzichtet auf externe Cloud-Schnittstellen.
|
Dieses Tool konvertiert Rechnungen im PDF-Format vollautomatisch in das offizielle XRechnung-XML-Format (UBL-Standard, Version 3.0). Das Tool verarbeitet sensible Finanzdaten vollständig lokal.
|
||||||
|
|
||||||
Die Anwendung nutzt eine Hybrid-Architektur:
|
|
||||||
* **Stammdaten (Kopfdaten):** Ein lokales Large Language Model (LLM) extrahiert unstrukturierte Metadaten wie Rechnungsnummern, Datumsangaben, Bestell-Referenzen und Kundenadressen. Die Steuerung erfolgt über eine strikte JSON-Schema-Grammatik.
|
|
||||||
* **Positionen (Tabelle):** Ein nativer Python-Algorithmus extrahiert Artikelbeschreibungen, Mengen, Einheiten und Einzelpreise über reguläre Ausdrücke (Regex). Die finale Summenberechnung erfolgt finanzmathematisch präzise über das `decimal`-Modul inklusive kaufmännischem Runden.
|
|
||||||
|
|
||||||
## Supported Model
|
## Supported Model
|
||||||
|
|
||||||
|
|
@ -16,58 +12,49 @@ Das System ist auf das folgende Modell optimiert, welches sich im Verzeichnis `m
|
||||||
* **Format:** GGUF
|
* **Format:** GGUF
|
||||||
* **Quantisierung:** Q8_0
|
* **Quantisierung:** Q8_0
|
||||||
|
|
||||||
Hinweis: Es muss zwingend die Instruct-Variante des Modells verwendet werden. Das Basis-Modell (Base) ist für diese Anwendung nicht kompatibel.
|
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### 1. Verzeichnisstruktur vorbereiten
|
### 1. Verzeichnisstruktur vorbereiten
|
||||||
Erstellen Sie im Projektverzeichnis den Ordner für das lokale KI-Modell:
|
Erstellen Sie im Projektverzeichnis den Ordner für das lokale KI-Modell:
|
||||||
```bash
|
```cmd
|
||||||
mkdir models
|
mkdir models
|
||||||
```
|
```
|
||||||
|
|
||||||
### 2. Virtuelle Umgebung (venv) erstellen und aktivieren
|
### 2. Virtuelle Umgebung (venv) erstellen und aktivieren
|
||||||
Erstellen Sie eine isolierte Python-Umgebung und aktivieren Sie diese vor der Installation der Pakete.
|
Erstellen Sie eine isolierte Python-Umgebung und aktivieren Sie diese über die Windows-Eingabeaufforderung (CMD):
|
||||||
|
```cmd
|
||||||
**Windows (PowerShell):**
|
|
||||||
```powershell
|
|
||||||
python -m venv venv
|
python -m venv venv
|
||||||
.\venv\Scripts\Activate.ps1
|
.\venv\Scripts\activate.bat
|
||||||
```
|
|
||||||
|
|
||||||
**Linux / macOS:**
|
|
||||||
```bash
|
|
||||||
python -m venv venv
|
|
||||||
source venv/bin/activate
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### 3. Modell platzieren
|
### 3. Modell platzieren
|
||||||
Laden Sie die Modelldatei `Qwen3.5-4B-Instruct-Q8_0.gguf` herunter und platzieren Sie diese im erstellten Ordner. Der Pfad muss exakt wie folgt lauten:
|
Laden Sie die Modelldatei `Qwen3.5-4B-Instruct-Q8_0.gguf` herunter und platzieren Sie diese im erstellten Ordner. Der Pfad muss exakt wie folgt lauten:
|
||||||
`models/Qwen3.5-4B-Instruct-Q8_0.gguf`
|
`models/Qwen3.5-4B-Instruct-Q8_0.gguf`
|
||||||
|
|
||||||
### 4. Abhängigkeiten installieren
|
|
||||||
Die Datei `requirements.txt` ist im Repository enthalten. Führen Sie in der aktivierten virtuellen Umgebung den passenden Befehl aus, um die Installation mit GPU-Beschleunigung (Nvidia CUDA) durchzuführen:
|
|
||||||
|
|
||||||
**Windows (PowerShell):**
|
### 4. Abhängigkeiten installieren
|
||||||
```powershell
|
|
||||||
$env:GGML_CUDA="1"; pip install -r requirements.txt --force-reinstall --no-cache-dir
|
**A: Mit GPU-Beschleunigung (Nvidia CUDA)**
|
||||||
|
```cmd
|
||||||
|
set GGML_CUDA=1
|
||||||
|
pip install -r requirements.txt --force-reinstall --no-cache-dir
|
||||||
```
|
```
|
||||||
|
|
||||||
**Linux / macOS:**
|
**B: Reiner CPU-Modus (Keine Nvidia-Grafikkarte vorhanden)**
|
||||||
```bash
|
```cmd
|
||||||
GGML_CUDA=1 pip install -r requirements.txt --force-reinstall --no-cache-dir
|
pip install -r requirements.txt --force-reinstall --no-cache-dir
|
||||||
```
|
```
|
||||||
|
|
||||||
## Use
|
## Use
|
||||||
|
|
||||||
Starten Sie die Applikation über das Terminal:
|
Starten Sie die Applikation über die aktivierte Eingabeaufforderung:
|
||||||
```bash
|
```cmd
|
||||||
streamlit run app.py
|
streamlit run app.py
|
||||||
```
|
```
|
||||||
|
|
||||||
Der Konversionsprozess gliedert sich in folgende Schritte:
|
Der Konversionsprozess gliedert sich in folgende Schritte:
|
||||||
1. **Dokumenten-Upload:** Laden Sie die Rechnungs-PDF über die Weboberfläche hoch.
|
1. **Dokumenten-Upload:** Laden Sie die Rechnungs-PDF über die Weboberfläche hoch.
|
||||||
2. **Extraktion:** Starten Sie die hybride Analyse über den dafür vorgesehenen Button.
|
2. **Extraktion:** Starten Sie die Analyse über den dafür vorgesehenen Button.
|
||||||
3. **Validierung:** Prüfen Sie die extrahierten Kopfdaten und die Positionstabelle in der Benutzeroberfläche. Da alle Felder editierbar sind, können Korrekturen direkt vorgenommen werden.
|
3. **Validierung:** Prüfen Sie die extrahierten Kopfdaten und die Positionstabelle in der Benutzeroberfläche. Da alle Felder editierbar sind, können Korrekturen direkt vorgenommen werden.
|
||||||
4. **Export:** Generieren Sie die finale XML-Datei über die Export-Funktion und starten Sie den Download.
|
4. **Export:** Generieren Sie die finale XML-Datei über die Export-Funktion und starten Sie den Download.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue