Эксперименты с использованием AI для улучшения кода BIND 9 и переработки Next.js

Ondřej Surý, drejtori i inxhinierisë DNS në organizatën ISC, i cili në të kaluarën kishte krijuar projektin CZ.NIC Labs, që zhvillon serverin DNS Knot, përmendi përfundimet e eksperimenteve të përdorimit të modeleve të mëdha të gjuhës për analizimin, rregullimin dhe modernizimin e kodit të bazës së serverit DNS BIND 9, krijimin e prototipave të projekteve të reja dhe përgatitjen e materialeve për trajnimin e studentëve. Ndjenjat nga përdorimi i AI përfunduan me përfundimin se modelet e mëdha të gjuhës janë të përshtatshme për krijimin e shpejtë të prototipave, për kuptimin e kodit të panjohur dhe për automatizimin e detyrave të thjeshta rutinë, por për zgjidhjen e problemeve më të mëdha është dyshimtë se ato kursejnë kohë, pasi shumë kohë shpenzohet për përcaktimin e problemeve, studimin dhe verifikimin e rezultateve, si dhe për përmirësimin e mëtejshëm.

Në eksperimentin e parë, AI-asistenti Claude Code kishte për detyrë të zbulojë probleme në kodin e bazës së serverit DNS BIND 9, duke u fokusuar në problemet e sigurisë dhe modernizimin e kodit. Asnjë nga propozimet e përmirësimit nuk u pranua në bazën e kodit, pasi Claude gjeneroi kod teknikisht korrekt, por praktikisht të pakuptimtë. Për shembull, si probleme u përmendën identifikuesit e rezervuar dhe mbushjet e mundshme të numrave të plotë, që parandalohen nga kompajleri dhe që nuk kërkojnë rregullim. Eksperimenti u konsiderua një humbje e pashpresë e kohës.

Në eksperimentin e dytë, Ondřej i kërkoi Claude të shkruante një sistem telemetrie që të integrohej me paketat e ndryshme dhe të minimizonte rrjedhjet e metadatas. Claude Code përgatiti prototipat e klientit dhe serverë, por pa një kuptim të duhur të mjedisit dhe problemeve që lindin gjatë testimit. Për më tepër, për verifikimin u angazhuan Google Gemini dhe ChatGPT, dhe çdo model AI gjetje gabime në rezultatet e punës së modeleve të tjera.

Për krijimin e shpejtë të një prototipi, metoda u tregua e dobishme, por Ondřej vuri në dukje se gjatë punës ndihej si sekretari i një roboti sundues. Në fillim, marrja e shpejtë e prototipit jepte optimizëm, por në fund u ndie se i gjithë procesi i zhvillimit me ndihmën e AI zuri më shumë kohë sesa shkruajti kodin nga fillimi me dorë. Shumë kohë u humb në analizimin e zgjidhjes së propozuar nga AI, kontrollimin e ndryshimeve pa kuptim dhe rikrijimin — prototipi duhej rishikuar, pasi cilësia e kodit pas AI ishte mesatare dhe kodo përmbante shumë struktura të përsëritura.

Eksperiment i tretë ishte gjenerimi i një balancuesi të ngarkesës në gjuhën Rust duke përdorur paketat crate Domain dhe Tokio. Claude Code arriti të gjenerojë prototipin e kërkuar të punës, por Ondřej nuk e njeh aq mirë Rust-in dhe bibliotekat e angazhuara për të vlerësuar cilësinë e punës së kryer.

Eksperiment i katërt kishte të bënte me përgatitjen në Google Gemini të materialeve ndihmëse, testeve dhe pyetjeve për kursin e ligjëratave që Ondřej jep në universitet. Ky eksperiment u konsiderua më i suksesshmi, megjithatë nuk e kaloi pa probleme — AI shpiku një fjalë që nuk ekziston në gjuhën çeke për një termin në kriptografi. U vërejt gjithashtu se kishte shumë punime studentore që i dërgoheshin, të gjeneruara nga modele të mëdha gjuhësore, që duhej t'i ktheheshin për rivendosje për shkak të mos përputhjes së punës me nivelin universitar dhe referencave në burime të gabuara.

Përveç kësaj, mund të përmendet një eksperiment tjetër, të realizuar nga drejtori i inxhinierisë në kompaninë Cloudflare. Me ndihmën e modelit Claude Code, duke kaluar rreth një javë dhe 1100 dollarë për tokena, u arrit të përgatitet një implementim alternativ të API të framëvorkut Next.js, i formuar si një plugin për mjetin Vite. Projekti u quajt vinext dhe u publikua në GitHub. Implementimi i ri është katër herë më i shpejtë se ndërtimi i Next.js me anë të Turbopack dhe formon blloqe për front-end që zënë 57% më pak hapësirë.

Projekti implementon 94% të gjashtëmbëdhjetë API-së bazë të Next.js dhe mund të përdoret si një zëvendësim transparent i Next.js për implementimin e projekteve në platformën Cloudflare Workers pa përdorimin e shtresave shtesë, si OpenNext, dhe pa u lidhur me Node.js. Qëllimi kryesor i vinext është të ofrojë mundësinë e përdorimit të API-ve të Next.js në platforma të tjera përveç Vercel, pa pasur nevojë për implementimin e një serveri të vet. Në formën aktuale mbështetet vetëm Cloudflare Workers dhe ka një prototip për Vercel, por në të ardhmen pritet mbështetje edhe për platforma të tjera të komputimit pa server, të cilat mund të punojnë me Vite, duke përfshirë Netlify dhe AWS Lambda.

Burimi: opennet.ru

Blini hosting të besueshëm për faqe interneti me mbrojtje nga DDoS, serverë VPS VDS 🔥 Blini hosting të besueshëm për faqe interneti me mbrojtje nga DDoS, serverë VPS VDS | ProHoster