Explorer
/proc/30/root/tmp/patch_relevance_context.py
← Zurück ↓ Download
from pathlib import Path
p=Path('/opt/struktur/social-media-radar/mas_relevance.py'); s=p.read_text()
old='''ANCHORS = (
    "lüftung",'''
new='''ANCHORS = (
    "lüftung",'''
assert s.count(old)==1
# insert context exclusions before dataclass
needle='''@dataclass(frozen=True)
class MASRelevance:'''
insert='''FOOD_CONTEXT = ("schimmel-essen", "schimmelemmahlzeit", "gammelfleisch", "schinken", "fleisch", "lebensmittel", "comida", "carne", "jamon", "queso")
TV_CONTEXT = ("goodbye deutschland", "reality show", "fernsehbericht", "tv-bericht", "reportage vox")
SPORT_CONTEXT = ("fußball", "fussball", "american football", "basketball", "tennis", "sport", "liga", "champions league")

@dataclass(frozen=True)
class MASRelevance:'''
assert s.count(needle)==1; s=s.replace(needle,insert)
old='''    safety = find_safety_block(fields or {"topic": text}) if find_safety_block else None
    if safety:'''
new='''    safety = find_safety_block(fields or {"topic": text}) if find_safety_block else None
    if any(term in folded for term in FOOD_CONTEXT + TV_CONTEXT + SPORT_CONTEXT) and not any(term in folded for term in ("wand", "wohnung", "haus", "immobil", "raum", "gebäude", "gebaeude", "lüft", "lueft", "feuchte", "kondens")):
        return MASRelevance(False, [], False, "", "Kein fachlicher MAS-Anker")
    if safety:'''
assert s.count(old)==1; s=s.replace(old,new)
p.write_text(s); print('context exclusions added')