Uru:
- Ikike iji nyochaa mmepụta AI na ọkwa atọ: izi ezi, nchekwa na isi iyi / ikike
- Ikike ikpuchi ihe egwu dị ka ịgba ntụtụ, ngwungwu ihe nlegharị anya na ihe nzuzo e liri site na iji ebu na ngwaọrụ nchekwa
- Ikike iweta koodu nchekwa-dị oke mkpa na nkwado nke injinia tozuru etozu wee ghọta enweghị mbufe ọrụ.
Ịmepụta koodu AI dị mfe; Ịtụkwasị ya obi dị oke ọnụ. Naanị ebumnuche nke otu a bụ ịgbanwe ụkpụrụ “nyochaa”, nke anyị kwugharịrị na nkeji niile gara aga, ka ọ bụrụ ọzụzụ injinia n'usoro. N'ihi na koodu nke AI mepụtara, ọ bụrụgodị na ọ dị ka ihe ziri ezi na nlele mbụ, na-ebu ihe ize ndụ atọ dị iche iche: ịbụ ndị na-adịghị arụ ọrụ / na-ezighị ezi (nhụta anya), enweghị nchebe (adịghị ike) na iburu ihe ize ndụ iwu / ikike. Ịmara atọ ndị a na ịmepụta ọnụ ụzọ maka onye ọ bụla n'ime ha na-eme ka ị bụrụ ọkachamara.
N'ebe a, anyị na-atụle "ntinye" na ọkwa atọ: izi ezi (koodu ọ na-arụ ọrụ ahụ n'ezie?), Nchekwa (ọ na-eguzogide ntinye obi ọjọọ?), na provenance / ikikere (m nwere ikike iji koodu a?). Igwe oyibo ọ bụla nwere ụzọ njikwa nke ya, ọ nweghịkwa onye n'ime ha nwere ike iji "nke ahụ bụ ihe AI kwuru."
Atọ n'ígwé nke ihe ize ndụ
1. Ihe ize ndụ nke izi ezi (hallucination). Ihe nlereanya ahụ nwere ike ịkpọ ọrụ adịghị adị, jiri API mee ihe n'ụzọ na-ezighị ezi, jiri nwayọọ gafere ikpe ihu. Koodu a yiri "ezi uche" mana ọ na-ezighi ezi. Mgbochi: nchịkọta, nnwale, nyocha static na nlele anya.
2. Nchekwa ize ndụ. AI nwere ike ikwugharị ụkpụrụ na-enweghị nchebe na data ọzụzụ: ajụjụ adịghị ike na ntụtụ SQL, ntinye onye ọrụ na-akwadoghị, nzuzo adịghị ike, nhụsianya na-enweghị nchebe, ntugharị mepere emepe. Koodu a na-arụ ọrụ mana enweghị ike ịwakpo. Mgbochi: nyocha lekwasịrị anya nchekwa, nyocha akpaaka (SAST), na itinye ụkpụrụ echedoro ama ama.
3. Isi iyi / ihe egwu ikike. AI nwere ike iwepụta mmepụta nke yiri koodu nwebiisinka ma ọ bụ amachibidoro ikike, ma ọ bụ ọ nwere ike na-atụ aro ndabere ikike na-ekwesịghị ekwesị. Mgbochi: ndabere na ịlele ikike, nlele mbụ, amụma ụlọ ọrụ.
Ịdọ aka ná ntị: Ihe kachasị njọ n'ime ihe ize ndụ atọ a bụ nchekwa; n'ihi na koodu ahụ nwere ike ịgafe ule, na-agba ọsọ nke ọma na mmepụta, na adịghị ike na-ekpughe naanị mgbe onye na-awakpo chọtara ya. "Ịrụ ọrụ" abụghị otu "nchekwa".
Nzọụkwụ site nzọụkwụ: Ọnụ ụzọ nyocha nke oyi akwa
- Jiri nghọta gụọ ya. Ghọta koodu ahụ n'ezie tupu ịnakwere ya; Ejikọla koodu ị ghọtaghị. Ọ bụrụ na ịnweghị ike ịkọwa "ihe kpatara o ji arụ ọrụ", akwadobebeghị ya.
- Chọpụta na ọ dị. Kwenye na ọrụ ọ bụla, API na ngwugwu ejiri mee ihe dị adị ma ejiri ya mee ihe nke ọma (ọnụ ụzọ nhụsianya).
- Gbaa ngwa ọrụ akpaaka. Ngwakọta, linter (nyocha ụdị/njehie), ụdị checker, unit tests, na ọ bụrụ na ọ ga-ekwe omume SAST (Nleba Nchebe Ngwa Static - ngwa na-enyocha koodu isi mmalite maka adịghị ike).
- Lee ya site na nche nche. A kwadoro ntinye aka? Ajuju ajuju o bu? E liri ihe nzuzo ahụ? Enwere njikwa ikike?
- Lelee isi iyi na ikike. Enwere ikike dabere ọhụrụ? Ihe mmepụta a ọ na-adị ka nke koodu codebase mara?
- Ọ bụrụ na ọ dị mkpa maka nchekwa, rịọ maka nkwado ọkachamara. Nleba anya nke onwe site n'aka onye injinia tozuru oke na mpaghara dị ka nyocha, ịkwụ ụgwọ, cryptography, njikwa ohere bụ iwu.
Obere obere atọ
Ikpe 1 - SQL injection na-ejide n'ọnụ ụzọ nyocha. Koodu AI mepụtara nke na-ejikọta ntinye onye ọrụ ozugbo na ajụjụ SQL maka njedebe ọchụchọ ("... WHERE aha = '" + q + "'"). Koodu ahụ na-arụ ọrụ wee gafee ule ahụ. Nleba anya nchekwa na nyocha SAST jidere nke a; Agbanwere ya ka ọ bụrụ ajụjụ akwadoro (okwu akwadoro). Ọ bụrụ na ejideghị ya, ọ gaara abụ adịghị ike ihichapụ data.
Ikpe 2 - ngwugwu ngwungwu. AI tụrụ aro ngwugwu npm adịghị adị (ngwa ngwa-nchekwa-parse) maka ọrụ. Mgbe onye nrụpụta gbalịrị ịwụnye ya, ahụghị ngwugwu ahụ. Nke ka njọ: n'ọnọdụ ụfọdụ, ndị na-awakpo nwere ike mejupụta aha ngwugwu "ghost" dị otú ahụ na ezigbo ngwugwu ọjọọ (mgbagwoju anya dabere). Ihe nkuzi: nyochaa ngwungwu ọ bụla akwadoro megide ndekọ ndekọ aha gọọmentị yana akụkọ nbudata/mmezi.
Ikpe nke 3 - enweghị nkwekọrịta ikike. Ọbá akwụkwọ ibe mara mma nke AI tụrụ aro nwere ikike nwebiisinka siri ike nke na-adabaghị na ikike ngwaahịa ụlọ ọrụ ahụ. Nyocha akwụkwọ ikike ịdabere na-akọ nke a; Ndị otu ahụ jiri ụzọ ọzọ dabara adaba dochie ikike ahụ. Enweghị nkwenye, ibu iwu ga-ebili na nkesa ngwaahịa.
Ndebiri anọ enwere ike iṅomi
Nyocha onwe onye tupu nnabata:
Tupu ịnakwere koodu AI emepụtara, lelee:1) Ọrụ ọ bụla/API/ngwugwu ọ na-eji dị adị n'ezie? Ọkọlọtọ ndị a na-enyo enyo.2) Enwere ndenye na-akwadoghị, SQL/command concatenation, nzuzo lie, adịghị ike crypto?3) Gịnị bụ chinchi/ọnụ ikpe na-edochaghị anya? Kpọọ onye ọ bụla nchoputa dị ka "ụfọdụ / puru omume" na atụ aro ndozi.{{code}}
Nlebanya lekwasịrị anya maka nchekwa:
Jiri anya nche nyochaa koodu a. Chọọ maka adịghị ike ụdị OWASP a na-ahụkarị: ịgba ntụtụ, nkwenye/ikike gbajiri agbaji, mkpughe data nwere mmetụta, enweghị ntụkwasị obi enweghị ntụkwasị obi, ntụgharị enweghị nkwenye. Maka nchoputa ọ bụla: ihe ize ndụ, ọnọdụ nrigbu, nhazigharị. Nke a bụ nyocha mbụ; rụtụ aka na nchọpụta dị oke mkpa na nyocha nchekwa mmadụ.{{code}}
Nleba anya dabere na ikike:
Depụta ihe ndabere nke koodu a gbakwunyere/atụ aro. Maka nke ọ bụla: ngwugwu a ọ dị adị, a na-edobe ya, kedu ihe akwụkwọ ikike ya ga-abụ (GA KWESỊRỊ KWESỊRỊ), ọ dịkwa mkpa maka ọrụ ahụ n'ezie ka ọ bụ enwere ike iji ngwa dị adị mee ya?
Mmanye ụdị ọrụ nchekwa (na mmepụta):
Dee koodu maka {{task}}. Iwu nchekwa iwu: - Kwado/sachapụ ndenye niile dị na mpụga.- Jiri naanị ajụjụ parameterized na ịnweta nchekwa data.- Etinyela ihe nzuzo na koodu; chee na mgbanwe gburugburu/onye njikwa nzuzo - E ilola njehie; Tụlee ya nke ọma. Kọwaa ka koodu ahụ si agbaso iwu ndị a n'ime ihe atọ.
Ngwa ngwa adịghị ike / Ike siri ike
Adịghị ike: "Dee ajụjụ na-achọ site na aha njirimara." (Otu koodu enweghị ike ịgba ntụtụ nwere ike ime.)
siri ike: "Dee ọrụ na-achọ site na aha njirimara. Ya adịla mgbe esonyere onye ọrụ ntinye n'ime ajụjụ dị ka eriri; jiri ajụjụ parameterized (nkwupụta akwadoro) Kwado ntinye maka ogologo na agwa. Kọwaa n'ahịrị abụọ nke ihe kpatara eji mechie koodu ahụ ka ọ bụrụ ntụtụ."
Ụdị siri ike na-amanye ụkpụrụ echekwara site na mmalite; Ya mere, ọ na-achọpụta na adịghị ike ahụ adịghị eme ma ọlị, kama ijide ya ma emechaa. Agbanyeghị, ọ dị mkpa ịnyefe koodu emepụtara site na ọnụ ụzọ nkwenye.
oyi akwa nyocha
Ngwá ọrụ/usoro
"AI kwuru" ezuola?
izi ezi
Mkpokọta, nnwale, nlele anya
mba
API/ngwugwu eziokwu
Njikwa akwụkwọ/nchịkwa ndekọ aha
mba
Nchekwa
SAST, nyocha nchekwa
mba
Ikikere/isi iyi
Ndabere & ịlele ikike
mba
Nchekwa-dị oke mkpa mgbagha
Nkwenye onye injinia ọkachamara
Ọ bụghị kpamkpam
Enweghị ike ịnyefe ọrụ
Ọrụ maka njehie, adịghị ike ma ọ bụ mmebi iwu sitere na koodu nke ngwá ọrụ AI mepụtara bụ nke otu ndị na-achịkọta ma kesaa koodu ahụ, ọ bụghị nke onye na-eweta ngwá ọrụ. Nke a bụ eziokwu ọkachamara yana nke iwu: ị binye aka. Yabụ "AI mepụtara ya" abụghị ihe ngọpụ, kama ọ bụ ihe ziri ezi maka ịkpachara anya. Karịsịa na usoro nchekwa dị oke egwu, mmepụta AI abụghị ihe ngbanwe maka nyocha na nkwenye site n'aka onye injinia ruru eru n'ọnọdụ ọ bụla; Ọtụtụ, AI na-enye ụkpụrụ nke na-eme ka injinia ahụ dị ngwa.
NDỤMỌDỤ: Mepụta ndepụta nlele dị mkpirikpi na otu gị nke ị na-akpọ "ọnụ ụzọ nkwado maka koodu AI mepụtara" (wuo + ule + nyocha nchekwa + nlele anya). Ozugbo ọnụ ụzọ ámá a ghọrọ àgwà, ọnwụ nke ọsọ dị ntakịrị na mbelata ihe ize ndụ kacha.
Mmejọ ndị nkịtị
- Na-agbagwoju anya "na-arụ ọrụ" na "nchekwa". Koodu na-agafe ule nwere ike ghara ịwakpo.
- Iji ngwugwu/API na-egosighi ya. Ngwungwu hallucinatory ma rụrụ arụ ma na-etinye ihe egwu nchekwa.
- Na-agafe ngwaọrụ akpaaka. Linter, ụdị checker na SAST na-ejide ọnụ ala ihe mmadụ na-atụ uche.
- Na-eleghara akwụkwọ ikike ahụ anya. Ndabere akwụkwọ ikike na-ezighi ezi na-ebute ibu iwu na nkesa.
- Itinye ọrụ na ụgbọ ala. Ndị otu ahụ na-ahụ maka koodu na mmepụta; "AI mere ya" abụghị ihe ngọpụ.
Na nchịkọta
Ịnabata mmepụta AI chọrọ nkwenye atọ: nhazi (nchịkọta, ule, nlele anya), nchekwa (SAST na nyocha lekwasịrị anya na nchekwa), na isi iyi / ikike (nleba anya ndabere). Kwenye na ngwungwu ọ bụla na API ejiri mee ihe dị adị, manye ụkpụrụ echedoro site na mbido, ma nyefee koodu nchekwa dị mkpa maka nkwado site n'aka onye injinia tozuru etozu. "Ọrụ" apụtaghị nchekwa, yana "AI emepụtara" anaghị ewepụ ụgwọ. Ọnụ ụzọ nkwenye bụ ọnụ ahịa ọkachamara, ọ bụghị ọsọ.
Ọrụ ngwa
Jiri ụma nye AI ọrụ nwere mmetụta nchekwa (dịka "ọrụ na-eji ntinye onye ọrụ na-achọ nchekwa data"), oge a na-etinyeghị ụkpụrụ nchekwa. Nyefee koodu mbata site na “nyocha onwe onye tupu nnabata” yana ndebiri “nyocha lekwasịrị anya nchekwa”: enwere ntụtụ ọ bụla, ihe nzuzo e liri, ngwugwu furu efu, ma ọ bụ ntinye na-akwadoghị? Wee jụọ otu ọrụ ahụ ọzọ site na iji ndebiri “ntụkwasị obi echekwara” wee tulee nsonaazụ abụọ ahụ. Ọ bụrụ na ọ ga-ekwe omume, mee ngwa ngwa linter/SAST wee jiri nchoputa ahụ tụnyere nhazi onwe AI nke AI.
ndetu
- [] Ana m enyocha mmepụta AI na ọkwa atọ: izi ezi, nchekwa na ikike.
- [ ] Ana m akwado na ọrụ ọ bụla, API na ngwugwu ejiri mee ihe dị adị.
- [] Ana m agbakọta, nwalee, linter na, ọ bụrụ na ọ ga-ekwe omume, ngwaọrụ SAST.
- [] Ana m etinye ụkpụrụ echedoro (njụjụ parameterized, nkwado ntinye, njikwa nzuzo) site na mmalite.
- [ ] Ana m elele ikike na ihe ndị dabere ọhụrụ.
- [] Ana m etinye koodu nchekwa dị mkpa maka nkwado nke injinia tozuru etozu na aghọtara m na ọ bụ m.