Eining 1 / 12

Gervigreind fyrir hugbúnaðarteymi: Vinnulíkan og takmörk

Hagnaður:

  • Geta til að útskýra hvernig kóðunaraðstoðarmaður virkar sem tungumálalíkan og hugtökin tákn, samhengisgluggi, ofskynjanir
  • Geta til að greina hugbúnaðarverkefni þar sem gervigreind er sterk og veik með hugrænu korti
  • Hæfni til að beita grunnvinnuferlinu leggja til-framleiða-staðfesta á eigin verkefni

Dagur hugbúnaðarframleiðanda er sjaldan eytt í að "skrifa kóða frá grunni." Rauntími; Að lesa kóðann sem skrifaður er af einhverjum öðrum, reyna að endurskapa villu, skanna skrána (dagskrárlínur framleiddar af forritinu á meðan það er í gangi), skrifa próf, skrifa PR (dragabeiðni - samrunabeiðni þar sem kóðabreyting er send til skoðunar teymi) útskýringar og uppfærsla á skjölunum. Gervigreind (AI) er hraðamargfaldari sem getur snert næstum öll þessi óséðu störf. En fyrsta skilyrðið fyrir því að nota það á öruggan hátt er að skilja rétt hvað það er og hvað það er ekki.

Í þessari einingu útskýrum við fyrst undirliggjandi tækni kóðunaraðstoðar á einföldu máli; síðan búum við til hugarkort yfir styrkleika og veikleika líkansins; Að lokum komum við á fót grunnvinnugreininni sem við munum nota í gegnum alla áfangann: leggja til, framleiða, sannreyna. Þessi þrjú skref eru burðarás næstu ellefu eininga.

Athugið: Þessi eining er almenn þjálfun. Í öryggis mikilvægum hugbúnaði (greiðsluvinnsla, heilsugæsla, auðkenning, mikilvæg innviði) kemur gervigreind framleiðsla ekki í staðinn fyrir yfirferð og samþykki hæfs verkfræðings. AI er aðstoðarmaður; Undirritaður er verkfræðingur.

Hvað gerir kóðunaraðstoðarmaður í raun og veru?

Flestir kóðunaraðstoðarmenn eru byggðir á stóru tungumálalíkani (LLM — gervigreind sem er þjálfuð í gríðarlegu magni af texta og kóða sem spáir fyrir um næsta líklegasta „klump“). Líkanið "skilur" ekki kóðann eins og maður; Það myndar líklegast framhald af samhenginu sem þú gefur því, byggt á mynstrum sem það lærir af gríðarstórum safni dæma. Þessi að því er virðist einfalda aðferð skilar ótrúlega vandvirkum árangri í reynd - vegna þess að flestir hugbúnaður samanstendur af endurteknum mynstrum: HTTP beiðni, lykkju, núllathugun, prófmynstur.

Þrjú hugtök eru mikilvæg hér. Tákn er minnsta einingin sem líkanið vinnur með því að deila textanum; Það er í grófum dráttum nokkrir stafir eða hluti af orði. Samhengisglugginn er magn tákna sem líkanið getur "séð" í einu; Kóðinn þinn, villuboð og leiðbeiningar verða að passa inn í þennan glugga. Hvetja er allar leiðbeiningar og samhengi sem þú gefur líkaninu. Gæði framleiðslunnar sem þú færð fer beint eftir þessu tvennu: því betra samhengi og skýrari leiðbeiningar sem þú gefur líkaninu, því betri útkoma færðu. Slæmt inntak framleiðir slæmt framleiðsla, jafnvel þótt það sé snjall líkan - klassíska „sorp inn, sorp út“ reglan um hugbúnað á einnig við um gervigreind.

Kort yfir styrkleika og veikleika

Til að beina gervigreind í réttu störfin er nauðsynlegt að vita hvar það skín og hvar það hrasar. Að leggja þetta kort á minnið fær þig til að velta fyrir þér með hverju næsta verkefni: "Ætti ég að útvista þessu starfi til gervigreindar eða gera það sjálfur?" Það gerir þér kleift að svara spurningunni á nokkrum sekúndum.

Styrkleikar þess eru: Að búa til boilerplate-kóða, þýða úr einu tungumáli yfir á annað, skrifa reglubundna tjáningu (regex), lýsa falli, búa til prófunarbeinagrind, túlka villuboð, semja skjöl, leggja til breytu-/fallaheiti og minniháttar endurstillingar (bæta uppbyggingu kóðans án þess að breyta hegðun hans).

Veikleikar: Þekkja fyrirtækissértækar viðskiptareglur þínar, muna allan kóðagrunninn þinn, keyra og sannreyna kóðann, þekkja nýjustu útgáfur bókasafnsins með vissu, uppgötva öryggisveikleika með hundrað prósent ábyrgð. Það hættulegasta eru ofskynjanir: líkanið finnur upp aðgerð, bókasafn eða API (viðmót sem gerir gagnaskipti milli forrita kleift) sem ekki er til á mjög sannfærandi tungumáli. Þessari áhættu er í raun hægt að snúa þér í hag, þar sem kóðann, ólíkt venjulegum texta, er hægt að prófa til að sjá hvort hann „virkar“ - bara ekki sleppa staðfestingarskrefinu.

Tegund verkefnis

Hlutverk gervigreindar

hlutverk mannsins

Framleiða boilerplate/beinagrind

framleiðir drög

Aðlagast, umsagnir

Kóðalýsing

Gefur stutta samantekt

Staðfestir mikilvæga hluta kóðans

skrifa próf

Case gefur til kynna

Staðfestir umfang og nákvæmni

Öryggisgagnrýnin rökfræði

gagnleg hugmynd

Ákvörðun og ábyrgð hvílir alfarið á mönnum.

API/bókasafnsnotkun

Myndar sýnishorn

Staðfestir tilvist og útgáfu

byggingarfræðileg ákvörðun

Margs konar valkostir

Velur og ver að þekkja samhengið

Skref fyrir skref: Grunnvinnuferill

  1. Skýrðu verkefnið. Ef þú getur ekki skrifað það sem þú vilt í einni setningu, getur líkanið ekki heldur. Því fyrr sem óvissan seytlar inn í inntakið, því meiri vex hún í framleiðslunni.
  2. Gefðu samhengi. Bættu viðeigandi kóða, fullum villuboðum, tungumáli/rammaútgáfu og takmörkunum við hvetjandinn. Ekki segja "lagaðu þetta", segðu "Python 3.11, FastAPI 0.110; þessi aðgerð gefur 500 villu, hún springur þegar meginmál beiðninnar er tóm".
  3. Álagningarhlutverk og snið. Rammi eins og „Þú ert eldri Go verktaki; gefðu bara kóðann og tveggja setninga rökstuðning“ einbeitir sér að úttakinu.
  4. Biðjið um lítið. Skiptu því niður í skref frekar en eina risastóra beiðni; Staðfestu hvert skref fyrir sig. Meiriháttar breytingar eru áhættusamar vegna þess að þær eru erfiðar að sannreyna og hætta á að fela villur.
  5. Staðfestu. Keyrðu það, prófaðu það, lestu það sjónrænt. Óstaðfest gervigreindarkóði er „skissa“, ekki „lausn“. Þetta er óumsemjanlegasta skref hringrásarinnar.

Þrjú Mini Cass

Tilfelli 1 - Tímasparnaðurinn er raunverulegur en hóflegur. Þegar teymi setti nýja CRUD (Create-Read-Update-Delete) endapunkta með gervigreind, lækkaði fyrstu drögin úr um það bil 40 mínútum í 8 mínútur. Hins vegar, með yfirferð og prófun, var heildartíminn 25 mínútur; þannig að raunverulegur hagnaður er frá 40 til 25, um 38%. Þetta hlutfall, mælt í stað væntinga um „við höfum hraðað 10 sinnum“, er sjálfbær hagnaður.

Tilfelli 2 - Ofskynjanir eru dýrar. Verktaki notaði AI-suggested requests.get_json() símtalið án staðfestingar; Það var engin slík aðferð (nákvæmlega response.json()). 20 mínútur töpuðust þegar kóðinn var ekki settur saman. Einföld "er þessi aðferð virkilega til?" sannprófun myndi endurstilla tapið.

Tilfelli 3 — Gott samhengi tvöfaldar framleiðsla. Fyrir sömu villuna skrifaði einn verktaki einfaldlega „Ég fæ villu“ og hinn bætti við fullri stafla rekstri, útgáfu og inntakssýni. Sá síðarnefndi fékk réttu lausnina í fyrstu tilraun; Sá fyrsti fór í þrjár beygjur. Munurinn var ekki í líkaninu, heldur í inntakinu.

Fjögur afritanleg sniðmát

Almennt, öflug ræsingarkvaðning:

Hlutverk: Þú ert reyndur {{language}} þróunaraðili. Verkefni: {{what_want}}Samhengi:- Rammi/útgáfa: {{framework_and_version}}- Takmarkanir: {{frammistöðu, stíll, ósjálfstæðisreglur}}Reglur:- Ekki nota bókasafn/aðgerð sem ekki er til; Ef þú ert ekki viss skaltu merkja það sem "staðfesta". - Fyrst skaltu gefa stutta áætlun, síðan kóðann, síðan 2 rökstuðningssetningar. - Framleiða prófunarhæfan, vinnukóða.

Til að sía óvissu aftur inn í líkanið:

Áður en þú leysir verkefnið hér að neðan skaltu skrá AÐ minnsta kosti 3 atriði sem þér finnst vanta eða óljóst sem spurningar. EKKI skrifa kóða áður en ég svara. Verkefni: {{verkefni}}

Til að láta athuga úttakið sjálft:

Þú hefur framleitt eftirfarandi kóða. Breyttu nú hlutverki þínu og gagnrýndu þennan kóða:- Listaðu upp 3 tilvik (kantmál) sem gætu ekki virkað.- Eru einhver API/aðgerðir sem þú gætir hafa búið til? Merkja.- Gefðu leiðrétta útgáfu.Kóði:{{kóði}}

Til að skipta niður ákvörðun í valkosti:

Leggðu til 2-3 lausnaraðferðir fyrir {{vandamál}}. Fyrir hvern: stutt lýsing, plús/mínus, hvenær á að velja. Gefið í töfluformi. EKKI velja fyrir mig; skýrðu bara valkostinn.

Veik kvaðning / Sterk kvaðning

Veikt: "Leiðrétta villuna í þessum kóða." (Hvaða villa? Hvaða tungumál? Hver er væntanleg hegðun?)
Sterkt: "Python 3.11 / FastAPI 0.110. Eftirfarandi endapunktur skilar 500 með KeyError þegar meginmál beiðninnar kemur tómt; ég vil að það skili 400 og þýðingarmiklum skilaboðum á tómum meginhluta. Útskýrðu fyrst ástæðuna, gefðu síðan upp leiðrétta aðgerðina, skrifaðu síðan próf fyrir þessa atburðarás. [kóði]"

Öflug útgáfa; Það gefur upp tungumál, útgáfu, raunverulega villu, væntanlega hegðun og úttakssnið. Líkanið þarf ekki lengur að spá fyrir um.

Algeng mistök

  • Að treysta án staðfestingar. Algengustu og dýrustu mistökin. Ekki segja "leyst" fyrr en kóðinn er tekinn saman og prófaður.
  • Að spyrja spurninga án samhengis. Svarið án útgáfu, villutexta og takmarkana er almennt og oft rangt.
  • Ein stór beiðni. Að geta ekki beðið um og endurskoðað 300 línu framleiðslu í einu gerir mistök ósýnileg.
  • Að misskilja sjálfstraust fyrirsætunnar sem sönnun. AI getur örugglega sagt eitthvað rangt; Tónn er ekki vísbending um nákvæmni.
  • Að líma leyndarmál fyrirtækisins af handahófi. Ekki ætti að slá inn einkalykla, gögn viðskiptavina eða einkakóða í ósamþykkt verkfæri (við munum kafa ofan í þetta efni í einingu 10).
Ábending: Meðhöndlaðu hverja gervigreind úttak sem „þetta eru drög“. Þessi eina andlega ávani dregur úr flestum áhættunni sem þú munt sjá í gegnum eininguna.

Í stuttu máli

Kóðunaraðstoðarmaður er tungumálalíkan sem spáir fyrir um næsta líklegasta brotið; Það skilur ekki kóðann, það framleiðir mynstur. Þess vegna er hann sterkur í endurteknum, formúlulegum störfum; Það ætti að nota það með varúð fyrir vinnu sem krefst staðfestingar sem er sérstakt fyrir samhengi þitt. Stærsta áhættan er ofskynjanir og eina móteiturið er sannprófun. Agin sem við munum fylgja í gegnum alla áfangann er skýr: skýra verkefnið, gefa samhengi, biðja um lítið, sannreyna hverja skilagrein.

Umsóknarverkefni

Skrifaðu niður þrjú hugbúnaðarverkefni sem þú gerðir í síðustu viku (t.d. villuleiðréttingu, próf, README uppfærslu). Horfðu á „styrkleika- og veikleikakortið“ fyrir hvern og einn og lýstu í einni setningu hvert hlutverk þitt og gervigreindar væri ef þú fengir gervigreindina til að gera þetta. Gefðu síðan eitt af þessum verkefnum til gervigreindar með „start prompt“ sniðmátinu hér að ofan og keyrðu og staðfestu úttakið; Athugaðu hversu margar mínútur þú sparaðir og hversu mörg mistök þú þurftir að laga.

gátlisti

  • [ ] Ég áttaði mig á því að LLM framleiðir mynstur, ekki "skilur" kóða.
  • [ ] Ég get útskýrt hugtökin tákn, samhengisgluggi og hvetja í einni setningu.
  • [ ] Ég get greint á milli tegunda verkefna þar sem gervigreind er sterk og veik.
  • [ ] Ég veit hvað ofskynjanir eru og eina mótefnið er sannprófun.
  • [ ] Ég aðlagaði hringrásina „leggja til, framleiða, sannreyna“ að mínu eigin verkefni.
  • [ ] Ég get sýnt muninn á sterkri hvatningu og veikri hvatningu í áþreifanlegu dæmi.