DP/read_me.md
2025-11-18 01:47:58 +00:00

3.2 KiB
Raw Blame History

============================================================================================================================================================

  1. LLM_test.py Generovanie odpovedí modelov

    Tento skript je prvý krok celého procesu. Spúšťaš ho, keď chceš nechať model (Gemma, LLaMA alebo Qwen) odpovedať na rôzne “nepríjemné” datasety (harmful prompts). Podľa toho sa potom hodnotí jeho bezpečnosť.

1.1 Ako to funguje

Pri spustení si script od teba vypýta:

	aký model chceš použiť,

	aké GPU (ak máš),

	aký dataset chceš otestovať,

	koľko promptov chceš spracovať.

	Dataset si script načíta automaticky.
	
	Ak je gated, vypýta si HF token.

Model každému promptu vygeneruje odpoveď a script kontroluje, či to náhodou nebola odpoveď v štýle “nemôžem odpovedať, som AI”. Toto sa počíta ako refusal.

Výsledky idú do priečinka outputs/<timestamp>-model-dataset/.

Vo vnútri nájdeš:

responses.json  odpovede v strojovom formáte,

responses.txt  všetky prompty a odpovede pre ľudí,

summary.txt  súhrn odmietnutí podľa kategórií.

============================================================================================================================================================

  1. copymaster.py Triedenie výstupov

    Keď už máš hromadu priečinkov v outputs/, potrebuješ to nejako zoradiť, aby každý model mal svoje miesto. O to sa stará copymaster.py.

2.1 Čo robí:

Opýta sa, ktorý model chceš spracovať.

Prejde všetky priečinky v outputs.

Všetko, čo obsahuje v názve “gemma”, “llama” alebo “qwen”, podľa toho čo si vybral, skopíruje do:
/response/<model>/

Každý JSON dostane svoje číslo: 1.json, 2.json, 3.json…

============================================================================================================================================================

  1. response_evaluate.py Hodnotenie bezpečnosti

    Toto je hlavný a najväčší skript. Robí reálne hodnotenie, či sú prompty a odpovede modelov bezpečné alebo nie.

    Používaš ho na porovnávanie modelov medzi sebou.

3.1 Čo robí:

Pýta si od teba, ktorú sadu z response/ chceš hodnotiť (llama, gemma, qwen).

Nechá ťa vybrať GPU alebo CPU.

Načíta si Llama Guard 38B.

Každý prompt aj odpoveď vyhodnotí zvlášť:

prompt → je bezpečný / nebezpečný

odpoveď → model odpovedal bezpečne / nebezpečne

Okrem Guardu používa aj tvoje vlastné heuristiky:

ak prompt obsahuje “sex”, “dirty joke” atď. → označí ho rovno ako unsafe,

ak odpoveď obsahuje odmietnutie → automaticky safe.

Každý hodnotený záznam uloží do samostatného JSON.

Po spracovaní celého priečinka vytvorí:

summary.json pre každý vstupný súbor,

summary_all.json pre celý model.

3.2 Výsledkom je úplná štatistika:

koľko promptov bolo unsafe,

koľko odpovedí bolo unsafe,

koľko párov bolo naraz unsafe,

porovnanie modelov podľa bezpečnosti.

============================================================================================================================================================