Vahid 3 / 12

Kodun oxunması, izahı və yeni kod bazası ilə uyğunluq

Qazanclar:

  • Xarici kodun baza qatını AI ilə qat-qat xəritələmək və xüsusiyyəti başdan-ayağa izləmək imkanı
  • Mürəkkəb funksiyaları addım-addım izah etmək və məlumat axınına nəzarət etmək bacarığı
  • Süni intellekt təsvirinə fərziyyə kimi baxmaq və kodda kritik iddiaları yoxlamaq imkanı

Tərtibatçılar kod yazmaq əvəzinə kodu oxuyurlar. Yeni işə başlayanda, başqasının buraxdığı xidməti götürəndə və ya açıq mənbəli kitabxanaya töhfə verəndə ilk işiniz "burda nələr olur?" sualına cavab tapmaqdır. Süni intellekt bu kəşf tapşırığını həftələrlə deyil, saatlarla azalda bilər – ancaq düzgün suallar və yoxlama refleksi ilə istifadə edildikdə.

Bu bölmədə biz süni intellektdən “kod bələdçisi” kimi istifadə etməyi öyrənirik: xarici kod bazasının xəritəsini çəkmək, mürəkkəb funksiyanı sadə dilə tərcümə etmək, məlumat axınını izləmək və kitabxanadan necə istifadə etməyi öyrənmək. Buradakı qızıl qayda ondan ibarətdir ki, AI-nin izahı bir fərziyyədir; kodun özü ilə yoxlayırsınız.

Niyə Kod Annotasiyası Güclü Amma Risklidir?

LLM kod parçasını oxumaqda və onu insan dilinə tərcümə etməkdə çox yaxşıdır, məsələn, "bu funksiya istifadəçinin sessiya nişanını təzələyir"; çünki milyonlarla oxşar nümunələrdən nümunələr öyrənmişdir. Bu, xüsusilə uzun və iç-içə funksiyalarla böyük vaxta qənaətdir.

Risk buradadır: model bəzən kodun əslində nə etdiyini deyil, nə kimi göründüyünü deyir. Dəyişən adı isAdmin olsa, lakin daxilindəki məntiq tərsinədirsə, model ada baxa və səhv xülasə çıxara bilər. Buna görə də, bəyanatı tənqidi qərarlarınız üçün əsas etməzdən əvvəl, müvafiq sətirlərdə iddia edilən davranışı vizual olaraq yoxlamalısınız. Təsvir sizi doğru yerə aparır; Kodun son sözü var.

Diqqət: Süni intellektin “bu kod X edir” xülasəsini təhlükəsizlik və ya pul axını ilə bağlı qərarda tək sübut kimi saymayın. Xülasə hara baxmaq lazım olduğunu göstərən xəritədir; Siz kodda təsdiqi verirsiniz.

Xarici Kod Bazasının Xəritəçəkmə Addımları

  1. Ən yüksək səviyyədə başlayın. Əvvəlcə qovluq strukturu və giriş nöqtələri (əsas, proqram işə salınması, ev yönləndiricisi) ilə tanış olun. AI-dən "bu kataloq strukturuna əsaslanan tətbiqin təbəqələri hansılardır?" soruş.
  2. Xüsusiyyəti başdan sona izləyin. "İstifadəçi daxil olduqda hansı fayllar aktivləşdirilir və hansı ardıcıllıqla?" — tək bir axını izləmək bütün arxitekturanı oxumaqdan daha ibrətamizdir.
  3. Şərtləri lokallaşdırın. Süni intellektdən layihəyə xas konsepsiyalar (“icarəçi”, “mühasibat kitabçası”, “iş koşucusu”) soruşun və kodda onların ekvivalentlərini tapın.
  4. Siz mürəkkəb funksiyanı sadələşdirdiniz. Uzun bir funksiyanı addım-addım izah edin, sonra kodda həmin addımları qeyd edin.
  5. Doğrulayın. Kiçik bir dəyişiklik edin və anlayışınızı yoxlamaq üçün testlər keçirin; Test başa düşməyinizin səhv olub olmadığını dərhal sizə bildirir.

Üç mini qutu

1-ci hal — İrsi xidmət 2 gündən 3 saata endirildi. Tərtibatçı ayrılan həmkarından 4000 sətirlik ödənişin uzlaşdırılması xidmətini götürdü. Süni intellekt modulları ümumiləşdirməli və ödəniş axınını uçdan-uca izləməli idi; O, koddakı iki kritik funksiyanı şəxsən yoxladı. Klassik "kor oxuma" ilə 2 gün çəkəcəyi təxmin edilən kəşf, təsdiqlənmiş AI üsulu ilə təxminən 3 saatda tamamlandı.

2-ci hal - Yanıltıcı ad tələsi. Bir funksiya validateAndSave adlanırdı, lakin AI xülasəsi "əvvəlcə doğrulayır, sonra saxlayır" deyirdi. Tərtibatçı koda daxil olduqda, qənaətin yoxlamadan əvvəl edildiyini gördü və yoxlama yalnız jurnala yazdı. Bu, istehsalda səhv biletinin əsl səbəbi idi. Əgər kodda doğrulama olmasaydı, yanlış xülasə səhvi gizlədərdi.

Case 3 - Yeni kitabxana öyrənmə sürətləndirildi. Komanda onlara tanış olmayan mesaj növbəsi kitabxanasını inteqrasiya etmək niyyətində idi. Mən AI-dən "bu kitabxanada istehlakçı necə qurulmalı, səhv olarsa yenidən necə cəhd etməli?" Onlar soruşdular və nümunə götürdülər; Sonra nümunəni rəsmi sənədlə müqayisə etdilər və fərqi düzəltdilər (köhnə versiya API). Öyrənmə vaxtı yarıya endirildi.

Dörd Kopyalana bilən Şablon

Kod bazasının xəritələşdirilməsi:

Aşağıda layihənin kataloq/fayl siyahısı verilmişdir. 1) Tətbiqin təbəqələrini çıxarın (giriş, biznes məntiqi, məlumat əldə etmək və s.). 2) "{{example property}}" sorğusunun mümkün fayl səyahətini sadalayın. 3) Əmin olmadığınız yerləri "yoxlanılmalıdır" kimi qeyd edin. {{kataloq_siyahısı}}

Funksiya təsviri (addım-addım):

Bu funksiyanı sıra qruplarına bölün və hər qrupun nə etdiyini düz türkcə izah edin. Nəhayət: giriş, çıxış, yan təsirləri (verilənlər bazası/fayl/şəbəkə) və mümkün kənar halları sadalayın. Əmin olmadığınız davranışları AYRI "təsdiq edilməlidir" başlığı altında toplayın.{{funksiya}}

Məlumat axınının izlənməsi:

"{{variable/data}}" dəyəri haradan gəlir, hansı transformasiyalardan keçir, harada yazılır? Koddakı funksiya adlarından istifadə edərək axın zənciri yaradın. Əlaqədar kod: {{code_segments}}

Kitabxanadan istifadə qaydalarını öyrənmək:

Mən {{kitabxana}} ilə {{məqsəd}} etmək istəyirəm. Minimal, işlək bir nümunə verin. İstifadə etdiyiniz hər bir funksiyanın həqiqətən bu kitabxanaya aid olduğundan əmin olun; əmin deyilsinizsə, "rəsmi sənədlərdən yoxlayın" işarəsini qoyun. Versiya: {{versiya}}.

Zəif məlumat / Güclü göstəriş

Zəif: "Bu kodu izah edin." (Nə ilə maraqlanırsınız? Hansı səviyyədə? Nə edəcəksiniz?)
Güclü: "Mən bu funksiyanı üzərimə götürürəm və onun içindəki təkrar cəhd məntiqini dəyişəcəyəm. Xüsusilə xəta baş verdikdə, funksiyanı addım-addım izah edin, neçə dəfə və hansı intervalda təkrar cəhd etdiyinizi açıq şəkildə bildirin; əmin olmadığınız hissələri "təsdiq edilməlidir" kimi qeyd edin. [kod]"

Güclü versiya sizin niyyətinizi verir (yenidən cəhd məntiqini dəyişdirəcəyəm) və diqqəti cəmləşdirir; belə ki, izahat ümumi xülasə deyil, faydalı bələdçi olsun.

Quest

AI yaxşı işləyir

Doğruladığınızdan əmin olun

Ümumi memarlıq xülasəsi

Qatları çıxarın

Faktiki zəng ardıcıllığı

mürəkkəb funksiya

Addım-addım izahat

Əks məntiq, yan təsirlər

məlumat axını

Zəncirin tərtib edilməsi

Şərti budaqlar, atlanan yollar

Kitabxanadan istifadə

Nümunə nəsli

API-nin həqiqiliyi və versiyası

İnsan Anlayışı üçün Əvəz Yoxdur

AI təsviri öyrənməni əvəz etmir; sürətləndirir. Kod bazasına həqiqətən “sahib olmaq” onun zehni modelini qurmaq deməkdir və bu model yalnız kodu oxuduqca, kiçik dəyişikliklər etdikdə və nəticəni gördükdə uyğun gəlir. Bir mentorun sizə “buraya baxın, bu vacibdir” deyəcəyi kimi süni intellektdən istifadə edin – ancaq onu öz gözlərinizlə harada gördüyünüzü oxuyun.

İpucu: Bir funksiyanı başa düşdüyünüzü düşündüyünüz zaman, AI-dən "onu bir cümlə ilə ümumiləşdirməsini" xahiş edin; Sonra öz cümlənizlə müqayisə edin. Əgər iki cümlə bir-biri ilə ziddiyyət təşkil edirsə, ya siz, ya da model nəyisə qaçırdınız - və siz bunu kodda işlədirsiniz.

Ümumi səhvlər

  • Xülasəni sübut kimi qəbul edin. Təsviri yoxlamadan kodla bağlı qərar qəbul etmək, aldadıcı adların tələsinə düşmək deməkdir.
  • Çox böyük parçaların yapışdırılması. 2000 sətri birdən ümumiləşdirmək səthi və səhvə meyilli nəticələr verir; parçalara ayırın.
  • Məqsədi bildirilmir. "Nə edəcəksən" deməsəniz, təsvir ümumi olaraq qalır və işinizə diqqət yetirmir.
  • Kitabxana nümunəsi təsdiqlənmir. Model köhnəlmiş və ya mövcud olmayan API adlandıra bilər; Rəsmi sənədlə müqayisə edin.
  • Bütün öyrənmələri əldən vermək. Kod bazasını oxumadan yalnız abstraktlarla işləmək sizi ilk real səhvdə aciz qoyur.

Xülasə

Süni intellekt xarici kod bazasının tədqiqində güclü bələdçidir: arxitektura xəritələrini tərtib edir, mürəkkəb funksiyaları sadələşdirir, məlumat axınını izləyir, kitabxanadan istifadəni öyrədir. Ancaq hər bir izahat bir fərziyyədir. Fikrinizi aydınlaşdırın, onu parçalayın və kodda yoxlayın və modelin dediyi (və etmədiyi) hər bir kritik təsdiqi sınaqdan keçirin "yoxlanılmalıdır". Bələdçi AI-dir; Xəritəni oxuyan və məsuliyyət daşıyan sizsiniz.

Tətbiq tapşırığı

Tanış olmadığınız və ya indicə miras aldığınız modulu seçin. Birincisi, "kod bazası xəritəsi" şablonu ilə bir xüsusiyyətin təbəqələrini və fayl səyahətini çıxarın. Sonra bu funksiyanın ən kritik funksiyasını "funksiya izahı" şablonu ilə addım-addım izah edin. Nəhayət, kodda modelin “təsdiq edilməlidir” kimi qeyd etdiyi ən azı iki ifadəni şəxsən yoxlayın və onların doğru və ya yalan olduğunu qeyd edin.

yoxlama siyahısı

  • [ ] Mən AI ifadəsini fərziyyə kimi qəbul edirəm və onu kodda yoxlayıram.
  • [ ] Kodu izah edərkən, mən öz məqsədimi və diqqətimi sorğuya əlavə edirəm.
  • [ ] Böyük kod bazasını hissələrə bölməklə ümumiləşdirirəm.
  • [ ] Mən kritik iddiaları səhv salan ad/əks məntiq tələləri üçün yoxlayıram.
  • [ ] Kitabxana nümunələrini rəsmi sənəd və versiya ilə müqayisə edirəm.
  • [ ] Mən süni intellektdən öyrənmənin əvəzi kimi deyil, öyrənməyi sürətləndirmək üçün bələdçi kimi istifadə edirəm.