perf(llm): reduce vendor-extract excerpt 50k → 20k chars
VW-Loop-Iteration 1: LLM cascade lieferte 14 vendors (Lucky-Hit via Direct-Fallback). VW-Loop-Iteration 2: 0 vendors — qwen2.5:14b ReadTimeout auch im 420s-Direct-Fallback (50k input + 16k output output dauert > 7min auf M4 Pro). Fix: max_text_chars 50000 → 20000. Erfasst die ersten ~3000 Worte der Cookie-Tabelle (Tabellen-Kopf komplett). Vollstaendige Tabelle wird ohnehin deterministisch von parse_flat_cookie_text geparsed. LLM ist nur fuer Vendor-Namen die NICHT in der Tabelle stehen (z.B. aus Prosa) und Inferenz-faehiger. Erwartung: 60-120s LLM-call statt Timeout, reproduzierbar 10-15 LLM- Vendors → Vendor-Normalizer-Total bleibt stabil bei 20+ statt 17. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -49,14 +49,17 @@ _SYSTEM_PROMPT = (
|
||||
|
||||
async def extract_vendors_via_llm(
|
||||
cookie_text: str,
|
||||
max_text_chars: int = 50000,
|
||||
max_text_chars: int = 20000,
|
||||
) -> list[dict]:
|
||||
"""Run the Qwen → OVH cascade. Returns vendor records (possibly empty).
|
||||
|
||||
max_text_chars: VW-Cookie-Richtlinie hat ~60k chars mit ~100 Cookies in
|
||||
der Tabelle. Bei 12k waren wir auf die ersten ~5 Cookies begrenzt und
|
||||
haben nur 1 Vendor extrahiert. 50k deckt VW/BMW/Mercedes komplett ab
|
||||
und passt in Qwen3-30b-a3b (128k Context) sowie OVH 120B.
|
||||
max_text_chars: P-fix 2026-05-22 — auf 20000 reduziert. Vorher 50000
|
||||
hat qwen2.5:14b ReadTimeout (auch bei 420s — Output 16000 tokens fuer
|
||||
50k input dauert > 7min). 20000 chars erfassen die ersten ~3000 Worte
|
||||
der Cookie-Tabelle (bei VW deckt das den Tabellen-Kopf komplett ab).
|
||||
Vollstaendige Tabelle wird vom deterministischen parse_flat erfasst,
|
||||
LLM ist nur fuer Vendor-Namen die NICHT in der Tabelle stehen (z.B.
|
||||
aus Prosa-Text). Schneller + zuverlaessiger.
|
||||
"""
|
||||
if not cookie_text or len(cookie_text) < 500:
|
||||
logger.info(
|
||||
|
||||
Reference in New Issue
Block a user