Filtrování NSFW obsahu pomocí LLM: Srovnání modelů
Analýza textových dotazů pomocí jazykových modelů (LLM) umožňuje zabránit generování nežádoucího NSFW obsahu již ve fázi promptu. Tím se šetří zdroje ve srovnání s post-filtrací obrázků. Testování na souboru 1000 dotazů (400 NSFW) prokázalo účinnost přístupu s modely Phi-3-mini-4k-instruct-q4, Qwen2.5-1.5b-instruct-q4_k_s a Gemma-2-2b-it-Q4_K_S.
Kritéria hodnocení: přesnost (procento zablokovaných NSFW dotazů), chyba (procento falešných poplachů na SFW) a doba analýzy v milisekundách. Testy probíhaly bez tensorových jader.
Základní přístupy k filtrování
Černá listina slov funguje rychle (méně než 200 ms), ale lze ji snadno obejít a vyžaduje podporu jazyků. Post-analýza obrázků (např. NsfwSpy) dosahuje 95% přesnosti, ale plýtvá zdroji na generování.
LLM analýza promptů je optimální: kontrola textu je levnější, modely jsou dostupné bez dodatečného tréninku. Systémový prompt definuje úlohu klasifikace jako NSFW/SFW.
Srovnání modelů bez Grammar
Testování probíhalo s běžným promptem a s příklady few-shot.
| Model | Prompt | Přesnost (%) | Chyba (%) | Čas (ms) |
|--------|--------|--------------|------------|------------|
| Phi-3 | Běžný | 55 | 1.3 | 359 |
| Phi-3 | S příklady | 93.5 | 42.5 | 523 |
| Qwen2.5 | Běžný | 53.2 | 1 | 85 |
| Qwen2.5 | S příklady | 80 | 4 | 280 |
| Gemma-2 | Běžný | 66.7 | <1 | 130 |
| Gemma-2 | S příklady | <0.1 | <0.1 | 238 |
Phi-3 vykazuje nárůst přesnosti s příklady, ale vysokou chybu. Qwen2.5 je rychlá, vyvažuje metriky s few-shot. Gemma-2 vede v běžném režimu, ale few-shot selhává kvůli parsování odpovědí.
Implementace Grammar pro stabilizaci
Grammar omezuje výstup modelu na varianty "ano" (NSFW) / "ne" (SFW). Tím řeší problémy parsování a poskytuje předvídatelné odpovědi.
Aktualizované výsledky:
| Model | Prompt | Přesnost (%) | Chyba (%) | Čas (ms) |
|--------|--------|--------------|------------|------------|
| Phi-3 | Běžný | 51 | 1 | 270 |
| Phi-3 | S příklady | 93.7 | 43.1 | 553 |
| Qwen2.5 | Běžný | 55 | <1 | 156 |
| Qwen2.5 | S příklady | 80.5 | 3.8 | 378 |
| Gemma-2 | Běžný | 66 | <1 | 231 |
| Gemma-2 | S příklady | 40.2 | <0.1 | 321 |
Čas se zvýšil o ~100 ms. Gemma-2 s příklady dosáhla 0% chyby na 1000 testech, ale přesnost klesla. Běžný prompt Gemma-2 zachovává rovnováhu: 66% přesnost, minimální chyba.
- Velikosti modelů: Qwen2.5 (0.9 GB), Gemma-2 (1.5 GB), Phi-3 (2+ GB).
- Doporučení: Gemma-2 + Grammar bez few-shot pro přísné systémy; Qwen2.5 pro rychlost.
Škálování filtru
Jeden model zvládá několik témat (NSFW + další zákazy). Testujte na reprezentativním datasetu, optimalizujte prompt iterativně. V produkci používejte tensorová jádra pro snížení latence 10krát.
Co je důležité:
- Předběžná analýza promptů snižuje zátěž o 95%+ ve srovnání s post-filtrací.
- Gemma-2 je optimální z hlediska přesnosti/chyby bez few-shot (66% / <1%).
- Grammar zaručuje parsování, obětuje rychlost.
- Testovací sada: 1000 promptů (40% NSFW) pro spolehlivé hodnocení.
- Few-shot zlepšuje Phi-3/Qwen, ale riskuje chyby.
— Editorial Team
Zatím žádné komentáře.