README: Ollama-Anbieter, deepseek-Default, Modell-Sichtbarkeit, Persistenz
LLM-Konfig-Sektion um Anbieter-Umschalter (OpenRouter/Ollama) erweitert, ehrlicher Ollama-Modell-Hinweis, gemerkte Auswahl + sichtbares Modell. Test-Zahl auf 57 (inkl. E2E-Persistenz) aktualisiert. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
2ffb89a6d2
commit
62f5af533e
1 changed files with 18 additions and 6 deletions
24
README.md
24
README.md
|
|
@ -65,8 +65,18 @@ Reihenfolge:
|
||||||
1. **Stufe 1 -- Rohdaten holen & speichern** (deterministisch, kein LLM, kein
|
1. **Stufe 1 -- Rohdaten holen & speichern** (deterministisch, kein LLM, kein
|
||||||
Key): Abruf für eine PLZ, Persistenz pro PLZ/Woche unter `data/roh/`. Die
|
Key): Abruf für eine PLZ, Persistenz pro PLZ/Woche unter `data/roh/`. Die
|
||||||
belegte Rohliste ist für sich ansehbar.
|
belegte Rohliste ist für sich ansehbar.
|
||||||
2. **OpenRouter-Konfiguration** -- separates Panel (Key + Modellauswahl mit
|
2. **LLM-Konfiguration** -- separates Panel mit **Anbieter-Umschalter**:
|
||||||
Liste/Suche/Aktualisieren), gilt für Stufe 2.
|
- **OpenRouter** (Cloud): Key + Modellauswahl (Liste/Suche/Aktualisieren).
|
||||||
|
Default `deepseek/deepseek-v4-flash` -- günstig (~1-2 Cent/Lauf), verlässlich.
|
||||||
|
- **Ollama** (lokal): zeigt die lokal installierten Modelle (kein Key, kein
|
||||||
|
Netz). Ehrlicher Hinweis: kleine lokale Modelle (3-9 B) liefern für diese
|
||||||
|
Batch-Aufgabe oft kein zuverlässiges Tool-Calling -- dann markiert das
|
||||||
|
System alles als „Sonstiges/unsicher" statt zu raten. Brauchbare lokale
|
||||||
|
Kategorisierung braucht ein starkes tool-fähiges Modell.
|
||||||
|
|
||||||
|
Anbieter + Modell werden gemerkt (`localStorage`) und überleben einen Reload.
|
||||||
|
Das gewählte Modell ist dauerhaft sichtbar (Chip im Kopf + im Ergebnis:
|
||||||
|
„kategorisiert mit … (anbieter)").
|
||||||
3. **Stufe 2 -- Kategorisieren** (LLM): läuft **nur auf den gespeicherten
|
3. **Stufe 2 -- Kategorisieren** (LLM): läuft **nur auf den gespeicherten
|
||||||
Rohdaten** und ist gesperrt, solange keine vorliegen. Ergebnis ist die nach
|
Rohdaten** und ist gesperrt, solange keine vorliegen. Ergebnis ist die nach
|
||||||
Produktgruppen gruppierte Übersicht mit Filtern, Unsicherheits-Markierung
|
Produktgruppen gruppierte Übersicht mit Filtern, Unsicherheits-Markierung
|
||||||
|
|
@ -96,11 +106,13 @@ ist als **Single-User-Werkzeug für localhost** gedacht -- nicht mit
|
||||||
- `requirements.txt` -- **vorhanden**.
|
- `requirements.txt` -- **vorhanden**.
|
||||||
- `src/angebote/` -- **vorhanden**: Datenmodell, Adapter-Schnittstelle,
|
- `src/angebote/` -- **vorhanden**: Datenmodell, Adapter-Schnittstelle,
|
||||||
Fetch-Orchestrator, Kategorisier-Schritt, Übersicht-Renderer, CLI.
|
Fetch-Orchestrator, Kategorisier-Schritt, Übersicht-Renderer, CLI.
|
||||||
- `tests/` -- **47 Tests**: Architektur-Regeln (kein Auffüllen, Abbruch bei
|
- `tests/` -- **57 Tests**: Architektur-Regeln (kein Auffüllen, Abbruch bei
|
||||||
leerem/unauflösbarem Ort, Daten-Integrität nach Kategorisierung,
|
leerem/unauflösbarem Ort, Daten-Integrität nach Kategorisierung,
|
||||||
geschlossene Kategorienliste, Unsicherheits-Flag, Schnitt-Test "kein LLM im
|
geschlossene Kategorienliste, Unsicherheits-Flag, Schnitt-Test "kein LLM im
|
||||||
Fetch-Teil"), Modell-Discovery/-Auswahl, Anbieter-/Retry-Logik, Rohdaten-
|
Fetch-Teil"), Modell-Discovery/-Auswahl (OpenRouter + Ollama), Anbieter-/
|
||||||
Persistenz und die Web-Endpoints. Laufen offline, ohne Netz und ohne LLM.
|
Retry-Logik, content-JSON-Fallback, Rohdaten-Persistenz und die Web-Endpoints.
|
||||||
|
Laufen offline; ein E2E-Test (Playwright) prüft die Konfig-Persistenz im
|
||||||
|
Browser.
|
||||||
- **Web-UI + zweistufiger Flow** -- vorhanden und live verifiziert: Stufe 1
|
- **Web-UI + zweistufiger Flow** -- vorhanden und live verifiziert: Stufe 1
|
||||||
(Fetch + Speichern) und Stufe 2 (LLM-Kategorisierung auf den gespeicherten
|
(Fetch + Speichern) und Stufe 2 (LLM-Kategorisierung auf den gespeicherten
|
||||||
Rohdaten, gesperrt bis Daten da sind) end-to-end gegen PLZ 60487 getestet.
|
Rohdaten, gesperrt bis Daten da sind) end-to-end gegen PLZ 60487 getestet.
|
||||||
|
|
@ -148,6 +160,6 @@ src/angebote/ Implementierung
|
||||||
web.py FastAPI-Web-UI (Stufe-1-/Stufe-2-Endpoints)
|
web.py FastAPI-Web-UI (Stufe-1-/Stufe-2-Endpoints)
|
||||||
web_static/ Frontend (index.html)
|
web_static/ Frontend (index.html)
|
||||||
cli.py / __main__.py CLI-Einstieg
|
cli.py / __main__.py CLI-Einstieg
|
||||||
tests/ 47 Architektur-/Web-Tests
|
tests/ 57 Architektur-/Web-/E2E-Tests
|
||||||
data/roh/ generierte Rohdaten (ge-ignored)
|
data/roh/ generierte Rohdaten (ge-ignored)
|
||||||
```
|
```
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue