CodeRabbit ar aģentiem izlaiž 20 reižu vairāk programmatūras
CodeRabbit izmanto OpenAI modeļus MI ģenerētā koda pārvaldībai un tā uzticamības pārbaudei, bet Codex — lai ar to pašu izstrādātāju komandu izlaistu 20 reižu vairāk programmatūras.
CodeRabbit(atveras jaunā logā) līdzdibinātājs un izpilddirektors Hardžots Gils uzskata, ka aģentu radītā koda pārbaude un tā uzticamības novērtēšana kļūst par jomu, kurā komandas liek lietā savu spriestspēju, izvērtējot arvien lielāku MI ģenerētā darba apjomu. „Pirmais šaurais punkts, ar ko saskaras ikviens uzņēmums, tiklīdz sāk izmantot programmēšanas aģentus, ir koda pārskatīšana,“ saka Hardžots.
CodeRabbit izveidoja MI nodrošinātu pārvaldības un kontroles platformu, kas paredzēta MI ģenerētā koda pārbaudei un tā uzticamības novērtēšanai. CodeRabbit izmanto vairāk nekā 20 000 organizāciju un 150 000 atvērtā pirmkoda projektu. Tas palīdz komandām izprast, pārskatīt un aizsargāt MI aģentu radīto kodu un izlemt, ko var laist klajā.
CodeRabbit norāda, ka labāka OpenAI cenas un veiktspējas attiecība ļauj koda pārskatīšanā iesaistīt vairāk MI aģentu un sniegt ieguvumus arī klientiem, savukārt Codex palīdz ar to pašu izstrādātāju komandu izlaist 20 reižu vairāk programmatūras. Uzņēmums izmanto arī Daybreak, lai aizsargātu gan savu tehnoloģiju kopumu, gan klientu kodu. Uzņēmuma jaunākais produkts CodeRabbit Secure izmanto Daybreak kopā ar Codex modeļiem, lai ar drošībai paredzētiem aģentiem atrastu un novērstu ievainojamības.
„Ar katru jaunu OpenAI modeli, īpaši spriestspējas modeļiem, esam novērojuši milzīgus uzlabojumus mūsu produkta spējā atklāt problēmas lielā mērogā.“
CodeRabbit izveidoja savu pirmo produktu ar GPT‑3.5 Turbo. Hardžots stāsta, ka līdz ar GPT‑4 parādīšanos produkts kļuva efektīvs koda pārskatīšanā. Pēc tam uzņēmums bija viens no pirmajiem, kas sāka izmantot OpenAI o1 un OpenAI o3. Tā kā koda pārskatīšana notiek asinhroni mākonī, CodeRabbit varēja izmantot modeļus, kas ilgāk analizēja problēmu, toties spēja veikt padziļinātāku analīzi.
Komanda izvērtē jaunos modeļus, izmantojot savu etalontestu ar zināmām problēmām. Intervijas laikā Hardžots lēsa, ka GPT‑6 Astra atklāja 50 % šajā datu kopā ietverto problēmu, uzrādot labāko rezultātu starp visiem šajā etalontestā vērtētajiem modeļiem.
Etalontests turpina attīstīties, jo aģenti pieļauj dažāda veida kļūdas, bet labojumi atklāj problēmas, kas iepriekšējās pārskatīšanās palikušas nepamanītas. „Kļūdu raksturs nemitīgi mainās, tāpēc, modeļiem kļūstot labākiem, attīstās arī mūsu etalontests,“ saka Hardžots.
Labāka OpenAI modeļu cenas un veiktspējas attiecība ir palīdzējusi CodeRabbit ieviest savā produktā izpētes posmā izstrādātās iespējas. Hardžots izceļ izdevīgākas modeļu cenas un uzlabojumus kešatmiņas izmantošanā, kas ļauj uzņēmumam plašāk izmantot MI, pievienot vairāk apakšaģentu un sniegt ieguvumus arī klientiem.
Sākotnēji CodeRabbit izmantoja vienu vai divus apakšaģentus, lai orientētos kodā. Lētāki modeļi, piemēram, GPT‑6 Luna, tagad nodrošina vairāk apakšaģentu darbību visā platformā, savukārt tādi modeļi kā GPT‑6 Astra veic plānošanu un darba koordinēšanu.
„Tagad mēs visur izmantojam aģentus uzdevumiem, kuru izmaksas agrāk pat nevarējām atļauties,“ saka Hardžots. Tas paplašina CodeRabbit pārbaudes iespējas un ļauj sniegt izstrādātājiem plašākus skaidrojumus, palīdzot saprast izmaiņas, ko viņi nav rakstījuši paši, un tām uzticēties.
Hardžots stāsta, ka, izmantojot Codex, uzņēmums pēdējos sešos mēnešos ir izlaidis aptuveni 20 reižu vairāk programmatūras, nepalielinot izstrādātāju skaitu. Viņš lēš, ka 30 dienās pirms intervijas pats iesniedzis 2500–3000 pull request.
Lai to panāktu, ar Codex ieviešanu vien nepietika. Vairāku aģentu darbināšana atklāja ierobežojumus visā izstrādes procesā — no klēpjdatoru atmiņas un skaitļošanas jaudas līdz testēšanai, programmatūras kompilēšanas un pakotņu veidošanas rīkiem un atkarībām.
Komanda optimizēja programmatūras izlaišanas procesu un pārskatīja, kuros posmos vajadzīgs cilvēka apstiprinājums, vienlaikus izmantojot CodeRabbit, lai automātiski ieviestu zema riska izmaiņas, kurām cilvēka iesaiste nebija nepieciešama. „Mums patiešām nācās pilnībā pārdomāt visu programmatūras piegādes procesu,“ saka Hardžots.
Uzņēmums ir izveidojis arī Slack botu, kas izmanto Codex un izvērtē un prioritizē incidentus produkcijas vidē, Slack ziņojumus un atbalsta pieteikumus. Tas var sagatavot pull request, ko komanda pārskata un iekļauj kodā. Hardžots uzskata, ka izstrāde mākonī ļauj mazināt vietējo datoru radītos ierobežojumus un sniegt komandām plašākas piekļuves kontroles un auditēšanas iespējas.
CodeRabbit izmanto Codex ne tikai programmatūras izstrādē, bet arī mārketinga un uzņēmuma ikdienas uzdevumu pārvaldībai ar koda palīdzību. „Mēs pēc iespējas vairāk uzņēmuma procesu pārvaldām ar kodu,“ saka Hardžots.
Mārketingā uzņēmums pārvalda Google Ads reklāmas, izmantojot pull request. Lai publicētu reklāmas, komanda izveido pieprasījumu un iekļauj tā izmaiņas kodā. Komanda izmanto arī satura studijas repozitoriju, kurā Codex veido prezentācijas un klientiem paredzētus dokumentus. „Ja mārketinga problēmas varat pārvērst par programmēšanas uzdevumiem, strādāsiet 10 reižu ātrāk,“ saka Hardžots.
Kopš 2023. gada CodeRabbit darbina aģentus smilškastes vidēs, klonējot repozitorijus un ļaujot aģentiem rakstīt kodu, kas palīdz veikt koda pārskatīšanu. Nesen CodeRabbit izmantoja OpenAI Cyber modeli ar Daybreak starpniecību, lai testētu un aizsargātu savu platformu.
Komanda izmantoja modeli iekšējiem ielaušanās testiem, meklējot savā platformā iespējas, ko uzbrucējs varētu izmantot, lai tajā ielauztos. Hardžots stāsta, ka agrīnā piekļuve palīdzēja CodeRabbit aizsargāt savu tehnoloģiju kopumu. „Mēs atradām vairākas ievainojamības — sarežģītus uzlaušanas paņēmienus, kuru iespējamību pat nespējām iedomāties,“ saka Hardžots.
Kopš tā laika uzņēmums šīs iespējas ir piedāvājis arī tirgū, palīdzot aizsargāt klientu kodu ar savu jaunāko produktu CodeRabbit Secure. Pēdējo divu nedēļu laikā uzņēmums akcijas ietvaros apmaksāja lietotājiem padziļinātas skenēšanas viena miljona ASV dolāru vērtībā. Veicot 13 000 padziļinātu skenēšanu ar Codex modeļiem, tika atklāts vairāk nekā 43 000 drošības ievainojamību. Klienti jau ir novērsuši tūkstošiem šo ievainojamību, uzlabojot sava koda drošību.
Fona aģentiem sākot reaģēt uz brīdinājumiem un incidentiem bez cilvēka ierosinājuma katram uzdevumam, Hardžots paredz, ka komandām vajadzēs vairāk palīdzības, lai izlemtu, kuras izmaiņas ieviest līdz galam.
Raugoties nākotnē, CodeRabbit paplašina darbību programmatūras izstrādē ar aģentiem, palīdzot komandām lielā mērogā izvērtēt, prioritizēt, izskaidrot, aizsargāt un pārbaudīt aģentu ģenerētās koda izmaiņas.
Tā ir iespēja palīdzēt izstrādātājiem saglabāt kontroli, kamēr aģenti uzņemas arvien vairāk izstrādes darba, nodrošinot pārbaudes, skaidrojumus un uzturēšanu, kas spēj turēt līdzi radītā koda apjomam.


