Datadog-ը Codex-ը օգտագործում է համակարգային կոդը վերանայելու
Codex-ի միջոցով Datadog-ը յուրաքանչյուր կոդի վերանայման մեջ ներառում է համակարգային համատեքստ՝ միջադեպերը կանխելու և հաճախորդների վստահությունը պաշտպանելու համար։
Datadog(բացվում է նոր պատուհանում)-ը գործարկում է աշխարհում ամենալայնորեն օգտագործվող դիտարկելիության հարթակներից մեկը՝ օգնելով ընկերություններին վերահսկել, խնդիրներ լուծել և ապահովել բարդ բաշխված համակարգերի անվտանգությունը։ Երբ ինչ-որ բան խափանվում է, հաճախորդները ապավինում են Datadog-ին՝ խնդիրները արագ հայտնաբերելու համար, ինչը նշանակում է, որ հուսալիությունը պետք է ներդրված լինի շատ ավելի վաղ՝ դեռ մինչև կոդը հասնի արտադրության։
Datadog-ի ինժեներական թիմերի համար կոդի ստուգումը դառնում է բարձր ռիսկային պահ։ Խոսքը միայն սխալները հայտնաբերելու մասին չէ, այլև այն մասին, թե ինչպես են փոփոխությունները տարածվում փոխկապակցված համակարգերի միջով՝ մի ոլորտ, որտեղ ավանդական ստատիկ վերլուծությունը և կանոնների վրա հիմնված գործիքները հաճախ թերի են մնում։
Այս մարտահրավերը լուծելու համար Datadog-ի արհեստական բանականության զարգացման փորձի (AI DevX) թիմը դիմեց Codex-ին՝ OpenAI-ի կոդավորող ագենտին, որը կոդի վերանայման մեջ ներառում է համակարգային մակարդակի դատողություններ և բացահայտում է այնպիսի ռիսկեր, որոնք մարդիկ հեշտությամբ չեն կարող տեսնել մասշտաբով։
«Ժամանակի խնայողությունը իրական է և կարևոր», - ասում է Բրեդ Քարթերը, ով ղեկավարում է Datadog-ի AI DevX թիմը։ «Բայց մեր մասշտաբով միջադեպերի կանխարգելումը շատ ավելի համոզիչ է»։
Datadog-ում կոդի արդյունավետ վերանայումը ավանդաբար մեծապես հիմնված է եղել ավագ ինժեներների վրա՝ այն մարդկանց, ովքեր բավականաչափ լավ են հասկանում կոդային բազան, դրա պատմությունը և ճարտարապետական փոխզիջումները՝ համակարգային ռիսկը նկատելու համար։
Բայց այդպիսի խոր համատեքստը դժվար է մասշտաբավորել, և վաղ շրջանի ԱԲ կոդի վերանայման գործիքները չլուծեցին այս խնդիրը. շատերը գործում էին ինչպես առաջադեմ լինտերներ՝ նշելով մակերեսային խնդիրներ՝ միաժամանակ բաց թողնելով համակարգի ավելի լայն նրբերանգները։ Datadog-ի ինժեներները հաճախ գտնում էին, որ առաջարկությունները չափազանց մակերեսային կամ աղմկոտ են և անտեսում էին դրանք։
Datadog-ը սկսեց փորձարկել Codex-ը՝ OpenAI-ի ագենտը, այն ինտեգրելով կենդանի մշակման աշխատանքային հոսքերի մեջ։ Ընկերության ամենամեծ և ամենաշատ օգտագործվող պահոցներից մեկում յուրաքանչյուր կոդի փոփոխությունների վերահայման հարցում ավտոմատ կերպով վերանայվում էր Codex-ի կողմից։ Ինժեներները Codex-ի մեկնաբանություններին արձագանքեցին բութ մատով վեր կամ վար և թիմերի միջև կիսվեցին ոչ պաշտոնական կարծիքներով։ Շատերը նշեցին, որ Codex-ի հետադարձ կապն արժե կարդալ, ի տարբերություն նախորդ գործիքների, որոնք ստեղծում էին աղմկոտ կամ մակերեսային առաջարկներ։
Որպեսզի փորձարկեն՝ արդյոք ԱԲ-ի աջակցությամբ վերանայումը կարող է ավելին անել, քան պարզապես մատնանշել ոճական խնդիրները, Datadog-ը ստեղծեց միջադեպերի կրկնության հարթակ։
Հիպոթետիկ սցենարներ օգտագործելու փոխարեն թիմը վերադարձավ պատմական դեպքերին։ Նրանք վերակառուցեցին կոդի փոփոխությունների վերահայման հարցումները, որոնք նպաստել էին միջադեպերին, Codex-ը գործարկեցին դրանցից յուրաքանչյուրի վրա՝ կարծես այն լիներ սկզբնական վերանայման մաս, ապա հարցրին այն ինժեներներին, որոնք պատասխանատու էին այդ միջադեպերի համար, թե արդյոք Codex-ի արձագանքը տարբերություն կստեղծեր։
Արդյունքը. Codex-ը հայտնաբերեց ավելի քան 10 դեպք, կամ մոտավորապես 22% միջադեպերի , որոնք Datadog-ը ուսումնասիրել էր, որտեղ ինժեներները հաստատել էին, որ Codex-ի տրամադրած հետադարձ կապը տարբերություն կստեղծեր՝ ավելի շատ, քան գնահատված ցանկացած այլ գործիք։
Քանի որ այս կոդի փոփոխությունների վերանայման հարցումները արդեն անցել էին կոդի ստուգումը, կրկնակի թեստը ցույց տվեց, որ Codex-ը ի հայտ բերեց ռիսկեր, որոնք վերանայողները այդ ժամանակ չէին նկատել, ինչը լրացնում էր մարդկային դատողությունը, այլ ոչ թե փոխարինում այն։
Datadog-ի վերլուծությունը ցույց տվեց, որ Codex-ը հետևողականորեն նշում է խնդիրներ,որոնք վերանայողները այդ ժամանակ չէին նկատել, ինչը լրացնում էր մարդկային դատողությունը, այլ ոչ թե փոխարինում այն։
Ինժեներները Codex-ի մեկնաբանությունները նկարագրեցին որպես ավելին, քան «բոտի աղմուկ»։
- Codex-ը նշեց տարբերություններում չանդրադարձված մոդուլների հետ փոխազդեցությունները։
- Այն հայտնաբերեց թեստային ծածկույթի բացակայություն ծառայությունների փոխկապակցման ոլորտներում
- Այն ընդգծեց API պայմանագրի փոփոխությունները, որոնք ներքևի գործընթացներում ռիսկ էին պարունակում
«Ինձ համար Codex-ի մեկնաբանությունը նման է ամենախելացի ինժեներին, ում հետ աշխատել եմ, և ով անսահման ժամանակ ունի սխալներ գտնելու համար։ Այն տեսնում է կապեր, որոնք իմ ուղեղը միանգամից չի կարող ընկալել։
Վերանայման արձագանքը իրական հուսալիության արդյունքների հետ կապելու հենց այդ կարողությունն էր, որը Codex-ը առանձնացրեց Datadog-ի գնահատման մեջ։ Ի տարբերություն ստատիկ վերլուծության գործիքների, Codex-ը համեմատում է կոդի փոփոխությունների վերանայման հարցի մտադրությունը ներկայացված կոդի փոփոխությունների հետ՝ հիմնավորում ամբողջ կոդային բազան և կախվածությունները՝ վարքագիծը ստուգելու համար կոդ և թեստեր կատարելով։
«Դա առաջինն էր, որը կարծես թե հաշվի էր առնում տարբերությունը ծրագրի ավելի լայն համատեքստում», - ասում է Քարթերը։ «Դա նորարարական էր և ուսանելի»։
Շատ ինժեներների համար այդ փոփոխությունը ամբողջությամբ փոխեց, թե ինչպես էին նրանք ներգրավվում ԱԲ-ի վերանայման գործընթացում։ «Ես սկսեցի Codex-ի մեկնաբանություններին վերաբերվել ինչպես իրական կոդի վերանայման հետադարձ կապին», - ասում է Datadog-ի ավագ ծրագրային ապահովման ինժեներ Թեդ Վեքսլերը: «Չէ որ ես կթաքցնեի կամ կանտեսեի, բայց մի բան, որին արժե ուշադրություն դարձնել»։
Գնահատումից հետո Datadog-ը ավելի լայնորեն տեղակայեց Codex-ը իր ինժեներական անձնակազմի շրջանում։ Այսօր ավելի քան 1000 ինժեներներ այն կանոնավոր օգտագործում են։
Հետադարձ կապը հիմնականում ի հայտ է գալիս բնական ճանապարհով, այլ ոչ թե գործիքի ներսում ձևական չափանիշների միջոցով։ Ինժեներները Slack-ում կիսվում են օգտակար դիտարկումներով, կառուցողական մեկնաբանություններով և այն պահերով, երբ Codex-ը նրանց օգնեց խնդրի մասին այլ կերպ մտածել։
Թեև ժամանակի խնայողությունները նշանակալի են, թիմերը հետևողականորեն մատնանշում են ավելի իմաստալից փոփոխություն՝ աշխատանքի կատարման ձևի մեջ։
«Codex-ը փոխեց իմ կարծիքը այն մասին, թե ինչպիսին պետք է լինի կոդի վերանայումը։ Խոսքը մեր լավագույն մարդկային վերանայողներին կրկնօրինակելու մասին չէ։ Խոսքը այն մասին է, որ գտնվեն կարևոր թերություններ և ծայրահեղ դեպքեր, որոնք մարդիկ դժվարանում են տեսնել՝ փոփոխությունները մեկուսացված վերանայելիս.”
Datadog-ի համար ավելի լայն ազդեցությունը կոդի վերանայման սահմանման փոփոխությունն էր։ Վերանայումը սխալները հայտնաբերելու կամ ցիկլի ժամանակը օպտիմալացնելու ստուգիչ կետ համարելու փոխարեն, թիմն այժմ Codex-ը դիտարկում է որպես հիմնական հուսալիության համակարգ, որը գործում է որպես գործընկեր։
- Ռիսկերի բացահայտում, որոնք գերազանցում են այն, ինչ առանձին վերանայողները կարող են գնահատել համատեքստում
- Մոդուլների և ծառայությունների միջև փոխազդեցությունների ընդգծում
- Առաքման նկատմամբ վստահության բարձրացում մեծ մասշտաբով
- Մարդկային վերանայողներին հնարավորություն տալ կենտրոնանալ ճարտարապետության և դիզայնի վրա
Այս փոփոխությունը համապատասխանում է Datadog-ի ղեկավարների կողմից ինժեներական առաջնահերթությունների սահմանմանը, որտեղ հուսալիությունն ու վստահությունը նույնքան կարևոր են, որքան, եթե ոչ ավելի, քան արագությունը։
«Մենք այն հարթակն ենք, որին ընկերությունները վստահում են, երբ մնացած ամեն ինչ խափանվում է», - ասում է Քարթերը։ «Միջադեպերի կանխարգելումը ամրապնդում է մեր հաճախորդների վստահությունը մեր նկատմամբ»։


