
Utangulizi wa mradi
Chinese Guba AI Detector ni zana ya uainishaji wa maandishi ya Kichina ya AI katika kategoria mbili. Mradi huu unatokana na hfl/chinese-roberta-wwm-ext na umeboreshwa kwa kutumia korpasi ya C-ReD, na hapo awali ulitumika kwa vipimo vya utafiti vya maandishi ya Guba. Hazina ya sasa inaweka wazi hati za mafunzo, uendeshaji wa modeli, majaribio na hati zinazohusiana.
Zana hii hupakia modeli ndani ya kompyuta na haitumii API za nje. Muhimu kuzingatia: hazina kwa sasa haitoi uzani wa modeli iliyofunzwa wala faili za tokeniza; mtumiaji lazima apate modeli kihalali na kuiweka kwenye saraka iliyobainishwa.
Vikwazo muhimu: Hii si modeli rasmi ya C-ReD. Uboreshaji huu haukutumia machapisho ya Guba wala kufanyiwa majaribio yenye lebo za kibinadamu katika kikoa cha majukwaa ya kifedha. Alama ya modeli haiwezi kuthibitisha utambulisho halisi wa mwandishi wa maandishi, na haipaswi kutumiwa kama msingi pekee wa kuthibitisha utambulisho wa mtu au kuadhibu maudhui.
Vipengele vikuu
- Kufanya uainishaji wa maandishi ya AI na ya binadamu kwa maandishi ya Kichina katika CSV ya UTF-8.
- Kutoa alama ya softmax ya kategoria ya AI na matokeo ya uainishaji yanayotegemea kizingiti.
- Kusoma
帖子内容文本kwa chaguo-msingi, huku kuruhusu pia safu maalum ya maandishi na safu ya msimbo wa hisa. - Kusanifisha
股吧代码kuwa maandishi yenye tarakimu sita na kuhifadhi sufuri za mwanzo. - Kuhifadhi safu nyingine za faili ya ingizo bila kubadilisha kwa makusudi maudhui yake ya maandishi.
- Kupunguza hatari ya kuharibika kwa faili la matokeo kupitia faili za muda na ubadilishaji wa atomiki.
- Kusaidia uthibitishaji wa uadilifu, ukokotoaji upya wa uondoaji na ulinzi wa uandishi wa mchakato mmoja.
- Kutoa hati za mafunzo, majaribio ya vitengo na ukaguzi wa maudhui ya umma.
Kusakinisha mazingira ya uendeshaji
1. Kuandaa Python na PyTorch
Mazingira ya majaribio ya mradi ni Python 3.10. Inapendekezwa kutumia mazingira huru ya mtandaoni na, kulingana na kifaa cha CPU au CUDA, kusakinisha kwanza PyTorch 2.5.1 inayofaa kifaa hicho kwa kufuata maelekezo rasmi ya PyTorch.
Katika Windows PowerShell, nenda kwenye saraka kuu ya hazina, kisha unda na uwashe mazingira ya mtandaoni:
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txtCPU inaweza kuendesha uendeshaji wa modeli, lakini GPU ya CUDA kwa kawaida huwa haraka zaidi. Ikiwa kumbukumbu ya video haitoshi, punguza kwanza --batch-size kutoka thamani yake ya chaguo-msingi au kubwa hadi 8 au 4.
2. Kuandaa modeli ya ndani
Weka modeli iliyofunzwa na kupatikana kihalali kwenye models/detector. Saraka hii inapaswa kuwa na faili zifuatazo:
model.safetensorsconfig.jsontokenizer.jsontokenizer_config.jsonspecial_tokens_map.jsonvocab.txt
Faili hizi za uzani na tokeniza hazijumuishwi kwenye hazina ya umma. Ikiwa saraka haijakamilika, hati ya uendeshaji wa modeli haitaweza kupakia modeli kwa usahihi.
Kuendesha ukaguzi wa kwanza
1. Kuandaa CSV ya ingizo
Faili ya ingizo lazima iwe CSV ya UTF-8. Jina la safu ya maandishi kwa chaguo-msingi ni 帖子内容文本, na jina la safu ya msimbo wa hisa ni 股吧代码. Mifano iliyotolewa na hazina ina maandishi ya kubuni pekee, bila watumiaji halisi, machapisho halisi au lebo za ukweli za kibinadamu na AI.
2. Kuendesha uendeshaji wa modeli kwa wingi
Baada ya kuandaa modeli, endesha amri ifuatayo kwenye saraka kuu ya hazina:
python scripts/predict.py --model-dir models/detector --input examples/synthetic_posts.csv --output outputs/demo.csv --batch-size 32Amri hii itapakia modeli ya ndani kutoka models/detector, kusoma CSV ya mfano, na kuandika matokeo ya ukaguzi kwenye outputs/demo.csv. Mchakato mzima wa ukaguzi hautumii API za nje.
3. Kuelewa sehemu za matokeo
Faili la matokeo litahifadhi safu za awali na kuongeza sehemu zifuatazo:
- 是否AI生成: Thamani ni
1wakati alama ya modeli ambayo haijazungushwa ni kubwa kuliko au sawa na kizingiti, vinginevyo ni0; maandishi tupu hubaki tupu. - AI生成概率: Alama ya softmax ya kategoria ya AI. Alama hii haijarekebishwa kuwa uwezekano, kwa hivyo haiwezi kuchukuliwa moja kwa moja kuwa uwezekano halisi.
- AI检测模型: Kitambulisho cha modeli ya umma; njia ya modeli kwenye kompyuta hii haitaandikwa.
- AI检测阈值: Thamani ya chaguo-msingi ni
0.7. Hii ni usanidi wa mradi, si kizingiti bora kilichothibitishwa na utafiti. - AI检测状态:
okhumaanisha ukaguzi umekamilika, naempty_texthumaanisha maandishi ya ingizo ni tupu.
Kutumia safu maalum za CSV
Ikiwa jina la safu ya maandishi ni text na jina la safu ya msimbo wa hisa ni id, unaweza kubainisha wazi:
python scripts/predict.py --model-dir models/detector --input input.csv --output outputs/result.csv --text-column text --stock-column idIkiwa faili la ingizo halina safu ya msimbo wa hisa, pitisha mfuatano tupu:
python scripts/predict.py --model-dir models/detector --input input.csv --output outputs/result.csv --text-column text --stock-column ""Safu ya msimbo wa hisa inapokuwepo, programu itaianisha kuwa maandishi yenye tarakimu sita na kuhifadhi sufuri za mwanzo. Safu nyingine za ingizo zitahifadhiwa kama zilivyo, kwa maandishi.
Kuandika juu, kuthibitisha na kuchakata kwa wakati mmoja
Kuzalisha tena matokeo kamili
Matokeo ya uendeshaji wa modeli huandikwa kwanza kwenye faili la muda, kisha faili lengwa hubadilishwa kwa atomiki baada ya kufanikiwa. Unapoendesha amri ileile tena, programu itaruka matokeo yaliyopo tu ikiwa thamani za uthibitishaji za ingizo, modeli, vigezo na matokeo kamili zinalingana.
Ikiwa unahitaji kupuuza matokeo yaliyopo na kuzalisha faili kamili upya, ongeza --overwrite:
python scripts/predict.py --model-dir models/detector --input examples/synthetic_posts.csv --output outputs/demo.csv --batch-size 32 --overwriteKukatizwa kwa uchakataji na kazi za wakati mmoja
Baada ya kukatizwa, programu itahesabu upya kuanzia mwanzo wa faili hilo badala ya kuendelea bila uchunguzi kwa kutegemea idadi ya safu zilizopo. Njia moja ya matokeo inaweza kuandikiwa na mchakato mmoja tu kwa wakati mmoja. Ili kuchakata kwa wakati mmoja, gawa faili tofauti za ingizo na matokeo kwa kila mchakato.
Vikomo vya urefu na ufasiri wa matokeo
Kwa chaguo-msingi, kila maandishi yanaweza kuwa na tokeni zisizozidi 256; sehemu inayozidi hukatwa. Idadi ya tokeni si sawa na idadi ya herufi za Kichina, kwa hivyo kizuizi hiki hakiwezi kufasiriwa kuwa herufi 256 za Kichina.
Baadhi ya maandishi ya awali ya Guba katika utafiti yalikuwa na vipande vilivyokusanywa vyenye takribani herufi 203 pekee, hivyo kitu kinachokaguliwa huenda kikawa sehemu tu ya maandishi ya awali. Unapofasiri matokeo, zingatia pia ukataji wa maandishi, tofauti za kikoa na ukosefu wa muktadha.
AI生成概率 ni alama ya softmax ambayo haijarekebishwa kuwa uwezekano, na kizingiti cha chaguo-msingi 0.7 ni mpangilio wa mradi pekee. Kubadilisha kizingiti kutabadilisha matokeo ya uainishaji wa aina mbili, lakini README haitangazi kizingiti chochote kuwa thamani bora iliyothibitishwa na utafiti.
Kufunza modeli kwa kutumia data ya C-ReD
Sharti la leseni
Kabla ya mafunzo, lazima uthibitishe mwenyewe na upate kibali halali cha kutumia data ya C-ReD. Hazina ya chanzo haionekani kuwa na leseni iliyo wazi; kutaja karatasi ya utafiti si sawa na kupata idhini ya kutumia au kusambaza tena data. Mradi huu hautanakili data ya C-ReD, na leseni ya MIT ya hazina haijumuishi data ya C-ReD wala uzani unaotokana nayo.
Kusakinisha vitegemezi vya mafunzo
python -m pip install -r requirements-train.txtKuanza mafunzo
Kwa kudhani data iliyopatikana kihalali imewekwa kwenye data/C-ReD, unaweza kuendesha:
python scripts/train.py --data-root data/C-ReD --output-dir models/detector --epochs 3 --batch-size 8 --eval-batch-size 16 --no-fp16Programu ya mafunzo husoma CSV zenye CReD_ katika majina ya faili na kutumia safu za text na label. Lebo za data chanzo zinafafanua 0=AI, 1=binadamu; wakati wa mafunzo hubadilishwa kuwa 0=binadamu, 1=AI.
Itifaki ya mafunzo na vipimo vya kihistoria vimehifadhiwa kwenye MODEL_CARD.md. Wakati wa kufunza upya, uanzishaji utatumia mbegu kamili ya nasibu, lakini mafunzo ya kihistoria hayakuweka wazi mbegu ya jumla kabla ya kuanzisha modeli, hivyo haiwezi kuhakikishwa kuwa uzani wa zamani utazalishwa tena tarakimu kwa tarakimu.
Majaribio na ukaguzi wa uchapishaji
Endesha majaribio yote ya vitengo:
python -m unittest discover -s tests -vMajaribio ya vitengo hutumia data ya kubuni na utabiri ulioigwa, kwa hivyo hayahitaji kupakua modeli. Jaribio la haraka la modeli halisi linaweza kuonyesha tu kuwa modeli inaweza kupakiwa na kuendesha uendeshaji, si kwamba matokeo ya utabiri ni sahihi.
Endesha ukaguzi wa maudhui ya umma:
python scripts/audit_release.pyHazina ya umma hukaguliwa kwa orodha ya faili zinazoruhusiwa na mifumo ya taarifa nyeti. CSV za awali za Guba, vitambulisho vya wachapishaji, majina ya utani, IP, URL za machapisho, paneli za karatasi za utafiti, hifadhidata za kibiashara, akiba, kumbukumbu, matokeo ya Notebook, vituo vya ukaguzi vya kati vya mafunzo na historia ya Git havipaswi kuingia kwenye hazina. Tazama PRIVACY.md kwa upeo mahususi wa kuondoa taarifa nyeti, na docs/PUBLISHING.md kwa mchakato wa uchapishaji.
Mapendekezo ya matumizi ya juu
- Thibitisha mchakato kwanza kwa data ya kubuni: Hakikisha mazingira, majina ya safu, saraka ya modeli na njia ya matokeo ni sahihi kabla ya kuchakata data yako halali.
- Punguza kundi ikiwa kumbukumbu ya video haitoshi: Jaribu kwanza
--batch-size 8au--batch-size 4. - Epuka kushiriki njia ya matokeo: Kazi za wakati mmoja lazima zitumie faili tofauti za matokeo ili zisichochee kizuizi cha uandishi wa mchakato mmoja.
- Hifadhi vigezo vya uendeshaji: Modeli, ingizo, vigezo na thamani za uthibitishaji wa matokeo huathiri matumizi ya matokeo yaliyopo; baada ya kubadilisha kipengele chochote, kagua tena matokeo.
- Fasiri maandishi marefu kwa tahadhari: Maudhui yanayozidi tokeni 256 yatakatwa, hivyo modeli huenda isione sehemu ya mwisho.
- Usichukulie alama kama uthibitisho wa utambulisho: Alama ya softmax haijarekebishwa kuwa uwezekano, na mradi hauna uthibitishaji wenye lebo za kibinadamu katika kikoa cha majukwaa ya kifedha.
- Thibitisha leseni kabla ya kuchapisha uzani: Msimbo na hati zinatumia leseni ya MIT, modeli ya msingi inatumia Apache-2.0, lakini data ya C-ReD na uzani unaotokana nayo vinahitaji idhini tofauti.
Hitimisho
Chinese Guba AI Detector hutoa mchakato wa uainishaji wa maandishi ya AI ya Kichina unaoweza kuendeshwa ndani ya kompyuta, ukiwa na uendeshaji wa CSV, mafunzo ya modeli, majaribio ya vitengo na ukaguzi wa uchapishaji. Katika matumizi halisi, pata kwanza modeli au data ya mafunzo kihalali, na chukulia matokeo kama alama za modeli kwa madhumuni ya utafiti, si ushahidi wa uhakika wa utambulisho wa mwandishi wa maandishi.
