Κέρδη:
- Δυνατότητα αντιστοίχισης ολοκλήρωσης του επεξεργαστή, βοηθού συνομιλίας, πράκτορα CLI και κατηγοριών αυτοματισμού CI σε εργασίες
- Δυνατότητα προσαρμογής του επιπέδου αυτονομίας ανάλογα με τον κίνδυνο και εφαρμογής πειθαρχίας «πρώτα το σχέδιο» στους πράκτορες CLI
- Δυνατότητα μετατροπής της χρήσης της τεχνητής νοημοσύνης σε ομαδικό σύστημα που βασίζεται σε επικυρωμένο εργαλείο, πύλη επαλήθευσης, διαφάνεια και υπευθυνότητα
Μέχρι στιγμής έχουμε μάθει να χρησιμοποιούμε την τεχνητή νοημοσύνη σε μεμονωμένες εργασίες (κωδικοποίηση, αναθεώρηση, δοκιμές, εντοπισμός σφαλμάτων). Σε αυτήν την τελική ενότητα, συνδυάσαμε τα κομμάτια: γνωριμία με διαφορετικά εργαλεία κωδικοποίησης τεχνητής νοημοσύνης, αντιστοίχιση του κατάλληλου εργαλείου στη σωστή δουλειά και ενσωμάτωσή τους με ασφάλεια στην καθημερινή ροή ανάπτυξής σας — από τον επεξεργαστή έως τον έλεγχο έκδοσης, από τη διοχέτευση CI/CD έως τη διακυβέρνηση ομάδας. Ο στόχος είναι να μετατραπεί η ακατάστατη συνήθεια «ρωτήστε την AI κάθε τόσο» σε ένα συνεπές και ελεγχόμενο σύστημα εργασίας.
Καλύπτουμε τύπους οχημάτων με ουδέτερες κατηγορίες (τα ονόματα των συγκεκριμένων προϊόντων αλλάζουν γρήγορα, σημασία έχει η κατηγορία). Κάθε κατηγορία έχει ένα "sweet spot" και ένα προφίλ κινδύνου. Μαεστρία είναι να ξέρεις πόση αυτονομία να δώσεις σε ποια εργασία.
Κατηγορίες Εργαλείων Κωδικοποίησης AI
1. Ολοκλήρωση στο πρόγραμμα επεξεργασίας. Προσθήκες που προτείνουν γραμμές/μπλοκ καθώς πληκτρολογείτε στο IDE σας (το περιβάλλον ανάπτυξης όπου γράφετε κώδικα). Sweet spot: in-stream speed, κωδικός boilerplate. Κίνδυνος: στενό πλαίσιο, αποδοχή της πρότασης χωρίς σκέψη.
2. Βοηθός συνομιλίας/πλευρικού πίνακα. Διασύνδεση συνομιλίας ενσωματωμένη στο IDE με ορατότητα σε μέρος της βάσης κωδικών σας. Sweet spot: περιγραφή, refactor, δοκιμή, ανάλυση σφαλμάτων. Κίνδυνος: περιορίζεται στο πλαίσιο που δίνετε, απαιτεί επαλήθευση.
3. CLI agents (agent tools). Τα εργαλεία που εκτελούνται από τη γραμμή εντολών, μπορούν να διαβάσουν και να τροποποιήσουν πολλά αρχεία, να εκτελέσουν εντολές και να εκτελέσουν εργασίες πολλαπλών βημάτων μόνα τους. Γλυκό σημείο: αλλαγές πολλών αρχείων, επαναλαμβανόμενες εργασίες, εργασίες τύπου "προσθήκη αυτής της ιδιότητας". Κίνδυνος: υψηλή αυτονομία = υψηλός αντίκτυπος. Εάν αφεθεί μη επιλεγμένο, παράγει ευρείες και δύσκολα επαληθεύσιμες αλλαγές.
4. Ενσωμάτωση γραμμής/αυτοματισμού. Bots CI (Continuous Integration) που αφήνουν σχόλια αυτόματου ελέγχου σε PR, προτείνουν δοκιμές ή παράγουν αρχεία καταγραφής αλλαγών. Γλυκό σημείο: πρώτο σουρωτήρι χωρίς κούραση, συνοχή. Κίνδυνος: θόρυβος, ψευδής εμπιστοσύνη.
Υπόδειξη: Καθώς αυξάνεται η αυτονομία, ο έλεγχος θα πρέπει επίσης να αυξάνεται. Επειδή η ολοκλήρωση του συντάκτη είναι μικρή και στιγμιαία, εποπτεύεται ελαφρά. Η τροποποίηση πολλαπλών αρχείων ενός πράκτορα CLI θα πρέπει να εξεταστεί το ίδιο, αν όχι πιο προσεκτικά, από ένα ανθρώπινο PR.
Βήμα προς βήμα: Ενσωμάτωση AI στη ροή εργασίας
- Αντιστοιχίστε την εργασία στο εργαλείο. Μικρή προσθήκη σε ροή → ολοκλήρωση. κατανοώ/αναπαράγω/δοκιμάζω → συνομιλία; πολλαπλών αρχείων, επαναλαμβανόμενη εργασία → CLI agent. συνεχές πρώτο φίλτρο → ενσωμάτωση CI.
- Επιλέξτε το επίπεδο αυτονομίας. Πόση ελευθερία έχει ο πράκτορας; Πρόταση μόνο για ανάγνωση ή τροποποίηση αρχείου + εκτέλεση εντολής; Προσαρμογή για τον κίνδυνο.
- Καλλιεργήστε το πλαίσιο. Εισαγάγετε μόνιμα κανόνες έργου (στυλ, αρχιτεκτονική, "δεν πρέπει") στο εργαλείο. Χρησιμοποιήστε ένα αρχείο οδηγιών έργου αντί να το εξηγείτε ξανά και ξανά.
- Διατηρήστε τις πύλες επαλήθευσης. Η αλλαγή της τεχνητής νοημοσύνης είναι σαν την ανθρώπινη αλλαγή: περνάει από συλλογή, δοκιμή, επανεξέταση και (αν είναι κρίσιμη) έγκριση από ειδικούς. Το άνοιγμα PR δεν παρακάμπτει την έγκριση.
- Μετρήστε και προσαρμόστε. Προσέξτε τι επιταχύνει πραγματικά, όπου αυξάνεται το φορτίο διόρθωσης. Κλαδέψτε τις χρήσεις που δεν λειτουργούν.
Τρεις Μίνι Θήκες
Περίπτωση 1 — Ο παράγοντας CLI χειρίστηκε τη μετονομασία πολλών αρχείων. Μια ομάδα θα μετονομάσει μια ιδέα που απλώνεται σε 60 αρχεία. Έδωσαν την εργασία σε έναν πράκτορα της CLI, πρώτα ζήτησαν ένα σχέδιο, ενέκριναν το σχέδιο, στη συνέχεια έκαναν την αλλαγή και έτρεξαν ολόκληρη τη δοκιμαστική σουίτα. Ο Πράκτορας 3 έχασε μια ακμή στο αρχείο. Οι δοκιμές το έπιασαν, το διόρθωσαν. Η εργασία, η οποία διήρκεσε περίπου 3 ώρες χειροκίνητα, ολοκληρώθηκε σε 50 λεπτά με επίβλεψη.
Περίπτωση 2 — Η μη ελεγμένη αυτονομία απέτυχε. Ένας άλλος προγραμματιστής είπε σε έναν πράκτορα να "βελτιώσει αυτήν την ενότητα" και την κυκλοφόρησε. Ο πράκτορας τροποποίησε 18 αρχεία και πρόσθεσε δύο εξαρτήσεις. Η αλλαγή ήταν τόσο ευρεία που δεν μπορούσε να αναθεωρηθεί και έπρεπε να αποσυρθεί. Μάθημα: δώστε στους πράκτορες στενό πεδίο εφαρμογής, σαφή κριτήρια αποδοχής και πειθαρχία στο πρώτο σχέδιο-αργότερα.
Περίπτωση 3 — Το ρομπότ αναθεώρησης CI έγινε το πρώτο φίλτρο. Μια ομάδα κατασκεύασε ένα ρομπότ που αφήνει αυτοματοποιημένα σχόλια ελέγχου τεχνητής νοημοσύνης στα PR. Μόλις το ρομπότ αντιλήφθηκε παραλείψεις μηδενικών επιταγών και ζητήματα στυλ, οι ανθρώπινοι αναθεωρητές μπόρεσαν να αφιερώσουν το χρόνο τους στην επιχειρηματική λογική. Ωστόσο, η ομάδα κατέστησε σαφές ότι το bot δεν παρείχε «έγκριση»: τουλάχιστον μία ανθρώπινη έγκριση εξακολουθούσε να απαιτείται. Για να μειώσουν το θόρυβο, ρύθμισαν το σκάφος ώστε να αφήνει μόνο θόρυβο υψηλής/μέσης έντασης.
Τέσσερα αντιγράψιμα πρότυπα
Πειθαρχία "Προγραμματίστε πρώτα" για τον πράκτορα CLI:
Εργασία: {{clear, narrow task}}Κριτήρια αποδοχής: {{μετρήσιμο αποτέλεσμα}}Περιορισμός: εργασία μόνο σε {{τον ακόλουθο κατάλογο/αρχεία}}; Προσθήκη νέας εξάρτησης. Πρώτα παρουσιάστε ένα σχέδιο ΧΩΡΙΣ ΑΛΛΑΓΗ: ποια αρχεία, τι θα αλλάξει, ποιες δοκιμές να εκτελεστούν. Περιμένετε να ΕΓΚΡΙΝΩ το σχέδιο. Στη συνέχεια, εφαρμόστε το βήμα προς βήμα, εκτελώντας δοκιμές σε κάθε βήμα.
Αρχείο οδηγιών έργου (μόνιμο περιβάλλον στα εργαλεία):
Μόνιμοι κανόνες για τα εργαλεία AI σε αυτό το έργο: - Γλώσσα/έκδοση: {{...}}. Στυλ: {{...}}.- Αρχιτεκτονικός περιορισμός: {{π.χ. κατεύθυνση μεταξύ των επιπέδων}}.- ΠΟΤΕ: ενσωμάτωση μυστικών, με χρήση δεδομένων παραγωγής, {{απαγορευμένες βιβλιοθήκες}}.- Κάθε αλλαγή πρέπει να είναι ελεγχόμενη. Αλλαγή της δημόσιας υπογραφής API ΧΩΡΙΣ ερώτηση. - Σε περίπτωση αμφιβολίας, σταματήστε και ρωτήστε.
Απόφαση χαρτογράφησης εργαλείου εργασίας:
Ορίζω την ακόλουθη εργασία: {{εργασία}}. Ποια κατηγορία εργαλείων πρέπει να το κάνω αυτό με: (α) την ολοκλήρωση του συντάκτη, (β) τον βοηθό συνομιλίας, (γ) τον πράκτορα CLI, (δ) τον αυτοματισμό CI; Γράψτε το σκεπτικό, τον κίνδυνο και το προτεινόμενο επίπεδο αυτονομίας (απλή πρόταση / αλλαγή αρχείου / εντολή εκτέλεσης).
Κώδικας δεοντολογίας bot αναθεώρησης CI:
Αφήστε μόνο ευρήματα ΥΨΗΛΗΣ και ΜΕΣΑΙΑΣ σοβαρότητας ως σχόλια στην ανασκόπηση δημοσίων σχέσεων. Κάθε εύρημα: κατηγορία, σοβαρότητα, προτεινόμενη διόρθωση. Συλλέξτε σημειώσεις σε επίπεδο προτίμησης στυλ σε ένα ξεχωριστό, ενιαίο σχόλιο περίληψης. ΔΕΝ ΣΥΝΑΙΝΕΤΕ. απαιτείται ανθρώπινη έγκριση.
Αδύναμη προτροπή / Ισχυρή προτροπή
Αδύναμο: (προς τον πράκτορα CLI) "Κάντε τη μονάδα πληρωμής καλύτερη."
Ισχυρό: (Στον πράκτορα CLI) "Εκτέλεση μόνο υπό src/πληρωμές/. Εργασία: Εξαγάγετε τη λογική αναδρομικής επικύρωσης από τη συνάρτηση refund() σε ένα μόνο βοηθό. Η συμπεριφορά και οι υπογραφές δεν αλλάζουν. Πρώτα παρουσιάστε το σχέδιο και περιμένετε την έγκρισή μου. Στη συνέχεια εκτελέστε και εκτελέστε τις δοκιμές/πληρωμές/ πακέτο. Προσθέστε νέα εξάρτηση."
Η ισχυρή εκδοχή περιορίζει το πεδίο εφαρμογής, θέτει κριτήρια αποδοχής και περιορισμούς και επιβάλλει την πειθαρχία «πρώτα το σχέδιο». Οι αόριστες απαιτήσεις «κάντε καλύτερα» είναι η βασική αιτία τεράστιων και ανεξέλεγκτων αλλαγών.
κατηγορία οχημάτων
Σε τι είναι καλύτερος
αυτονομία
βάρος επιθεώρησης
Ολοκλήρωση του συντάκτη
Μικρή προσθήκη σε ροή
χαμηλά
Φως (άμεση ανάγνωση)
βοηθός συνομιλίας
Κατανόηση, δοκιμή, αναπαράσταση
μεσαίο
Μέσο (επαλήθευση εξόδου)
Πράκτορας CLI
Πολυαρχείο, αναδρομικό
ψηλά
Βαρύ (σχέδιο + πλήρης κριτική)
Αυτοματισμός CI
Συνεχές πρώτο φίλτρο
μεσαίο
Μέσο (κανόνας + ανθρώπινη έγκριση)
Διακυβέρνηση ομάδας: Από την ατομική ικανότητα στο κοινό σύστημα
Η καλή χρήση της τεχνητής νοημοσύνης σε ατομική βάση είναι μια αρχή. Η πραγματική ωριμότητα είναι ένα συνεπές σύστημα σε επίπεδο ομάδας. Αυτό το σύστημα βασίζεται σε πολλούς πυλώνες: λίστα εγκεκριμένων εργαλείων (τα οποία εργαλεία μπορούν να χρησιμοποιηθούν με ποια δεδομένα — από τη μονάδα 10), πύλες επαλήθευσης (η αλλαγή τεχνητής νοημοσύνης περνά από τις ίδιες πύλες κατασκευής/δοκιμής/αναθεώρησης — από την ενότητα 11), διαφάνεια (δηλώνοντας ότι μια αλλαγή βασίζεται σε τεχνητή νοημοσύνη παρέχει ιχνηλασιμότητα όπου χρειάζεται) και σαφήνεια ευθύνης (είναι το άτομο που υπογράφει τον λογαριασμό). Αυτό το πλαίσιο περιορίζει τον κίνδυνο διατηρώντας παράλληλα την ταχύτητα και διασφαλίζει ότι τα νέα μέλη της ομάδας εργάζονται με την ίδια πειθαρχία.
Προσοχή: Όσο υψηλότερη είναι η αυτονομία ενός εργαλείου—ειδικά οι πράκτορες CLI που μπορούν να τροποποιούν αρχεία, να εκτελούν εντολές—τόσο πιο αυστηρά το περιορίζουν από την πρόσβαση στο περιβάλλον παραγωγής, στα εμπιστευτικά δεδομένα και σε λειτουργίες που είναι δύσκολο να επαναφερθούν. Συνδέστε τις καταστροφικές εντολές (μόνιμη διαγραφή, ανάπτυξη) με την ανθρώπινη έγκριση.
Συνήθη λάθη
- Task-σημαίνει ασυμβατότητα. Προσπαθώντας να κάνετε μια εργασία πολλών αρχείων με την ολοκλήρωση του επεξεργαστή ή ένα μικρό συνημμένο με έναν βαρύ παράγοντα.
- Αποδέσμευση του πράκτορα. Τα καθήκοντα του πράκτορα που δίνονται με περιορισμένο εύρος και χωρίς «πρώτα σχέδιο» παράγουν ανεξέταστες αλλαγές.
- Χαλάρωση των πυλών επαλήθευσης για AI. "Η AI τα κατάφερε, ας προχωρήσουμε γρήγορα" είναι η πιο επικίνδυνη εξαίρεση. Οι πόρτες είναι ίδιες για όλους.
- Δίνοντας το πλαίσιο χειροκίνητα κάθε φορά. Η μη εγγραφή κανόνων έργου σε ένα μόνιμο αρχείο εντολών προκαλεί ασυνέπεια και αντιγραφή.
- Παρεξήγηση της έγκρισης του bot CI ως ανθρώπινη έγκριση. Ένα bot είναι ένα φίλτρο. Η υπεύθυνη ανθρώπινη έγκριση είναι υποχρεωτική.
Συνοπτικά
Τα εργαλεία κωδικοποίησης AI εμπίπτουν σε τέσσερις κύριες κατηγορίες: ολοκλήρωση συντάκτη, βοηθός συνομιλίας, πράκτορες CLI και αυτοματοποίηση CI. Η μαεστρία είναι η αντιστοίχιση της εργασίας με το σωστό εργαλείο και το σωστό επίπεδο αυτονομίας. Καθώς αυξάνεται η αυτονομία, αυξάνεται και ο έλεγχος. Δώστε στα εργαλεία μόνιμο πλαίσιο έργου, επιβάλετε μια πειθαρχία «πρώτα το σχέδιο» σε πράκτορες πολλαπλών αρχείων και περάστε την αλλαγή τεχνητής νοημοσύνης από τις ίδιες πύλες επαλήθευσης με την ανθρώπινη αλλαγή. Ατομική ικανότητα; Μετατρέψτε το σε ένα ομαδικό σύστημα που βασίζεται σε μια εγκεκριμένη λίστα εργαλείων, πύλες επαλήθευσης, διαφάνεια και σαφήνεια ευθύνης. Το AI είναι ένας πολλαπλασιαστής ταχύτητας από άκρο σε άκρο. Αυτός που υπογράφει και δίνει τον λογαριασμό είναι πάντα ικανό άτομο.
Εργασία εφαρμογής
Καταγράψτε τρεις πραγματικές εργασίες που θα κάνετε την επόμενη εβδομάδα. Χρησιμοποιήστε το πρότυπο «απόφαση αντιστοίχισης εργασίας με όχημα» για καθεμία για να αιτιολογήσετε ποια κατηγορία οχημάτων και ποιο επίπεδο αυτονομίας θα επιλέξετε. Στη συνέχεια, εκτελέστε μια στενή εργασία για έναν πράκτορα CLI (ή βοηθό συνομιλίας) με μια πειθαρχία «πρώτο σχέδιο»: εγκρίνετε το σχέδιο, επιβάλλετέ το, εκτελέστε τις δοκιμές και ελέγξτε την αλλαγή σαν ένα ανθρώπινο PR. Τέλος, συντάξτε έναν «κανόνα χρήσης AI» 5 σημείων για την ομάδα σας (εγκεκριμένα εργαλεία, κανόνας δεδομένων, πύλη επαλήθευσης, όριο αυτονομίας, λογοδοσία).
λίστα ελέγχου
- [ ] Μπορώ να διακρίνω τις κατηγορίες εργαλείων κωδικοποίησης AI και το γλυκό σημείο καθεμιάς.
- [ ] Αντιστοιχίζω την εργασία στη σωστή κατηγορία οχήματος και στο κατάλληλο επίπεδο αυτονομίας.
- [ ] Δίνω μόνιμο πλαίσιο έργου (αρχείο οδηγιών) στα εργαλεία.
- [ ] Εφαρμόζω στενό πεδίο εφαρμογής και πειθαρχία «πρώτα σχεδιάζω» στους πράκτορες CLI.
- [ ] Περνάω τις αλλαγές AI μέσα από τις ίδιες πύλες επαλήθευσης με τις ανθρώπινες αλλαγές.
- [ ] Υποστηρίζω ένα επικυρωμένο εργαλείο, κανόνα δεδομένων, διαφάνεια και πλαίσιο λογοδοσίας σε επίπεδο ομάδας.
Εξέταση Ενοτήτων
1. Τι κάνει πραγματικά το υποκείμενο μοντέλο μεγάλης γλώσσας ενός βοηθού κωδικοποίησης όταν παράγει κώδικα;
- Α) Προβλέπει μοτίβα την πιο πιθανή συνέχεια με βάση το δεδομένο πλαίσιο ✔
- Β) Εγγυάται το σωστό αποτέλεσμα με την πραγματική μεταγλώττιση και εκτέλεση του κώδικα
- Γ) Σαρώνει τον κώδικα σε όλο το διαδίκτυο ζωντανά και αντιγράφει τον πιο ακριβή.
- Δ) Κατανοεί τη λογική του κώδικα σαν ανθρώπινος μηχανικός και κατανοεί την πρόθεση
Διευκρίνιση: Το LLM δεν «καταλαβαίνει» τον κώδικα όπως ο άνθρωπος. Δημιουργεί την πιο πιθανή συνέχεια στο δεδομένο πλαίσιο, με βάση μοτίβα που μαθαίνει από μια πολύ μεγάλη δεξαμενή κειμένου και κώδικα. Επομένως, η ποιότητα της εξόδου εξαρτάται άμεσα από την ποιότητα του περιβάλλοντος και των οδηγιών που δίνετε και κάθε έξοδος πρέπει να επικυρώνεται.
2. Πώς το ονομάζετε όταν η τεχνητή νοημοσύνη επινοεί πειστικά μια ανύπαρκτη λειτουργία ή βιβλιοθήκη και ποιο είναι το μόνο πραγματικό αντίδοτο;
- Α) Αυτό ονομάζεται σφάλμα μεταγλώττισης. Το αντίδοτο είναι ισχυρότερος εξοπλισμός
- Β) Αυτό ονομάζεται ψευδαίσθηση. Το αντίδοτο είναι η επαλήθευση του κώδικα και κάθε API που χρησιμοποιείται ✔
- Γ) Αυτό ονομάζεται παλινδρόμηση. Το αντίδοτο είναι η επανεκκίνηση του μοντέλου
- Δ) Αυτό ονομάζεται υπερχείλιση περιβάλλοντος. Το αντίδοτο είναι να συντομεύσετε την προτροπή
Περιγραφή: Αυτό ονομάζεται παραίσθηση και προκαλεί ένα από τα πιο ακριβά σφάλματα στο λογισμικό. Το μόνο πραγματικό αντίδοτο είναι η επαλήθευση: η επιβεβαίωση ότι κάθε συνάρτηση, API και πακέτο που χρησιμοποιείται υπάρχουν στην πραγματικότητα και ότι ο κώδικας λειτουργεί. Ο σίγουρος τόνος του μοντέλου δεν είναι απόδειξη ακρίβειας.
3. Ποια προσέγγιση βελτιώνει περισσότερο την ποιότητα και τη συνέπεια της παραγωγής κατά τη δημιουργία κώδικα με AI;
- Α) Απελευθέρωση του μοντέλου λέγοντας «γράψε μου αυτό» χωρίς να δώσεις κανένα πλαίσιο
- Β) Γράψιμο της μεγαλύτερης και φανταχτερής προτροπής
- Γ) Προσδιορίστε και δώστε παραδείγματα συμβολαίου εισόδου/εξόδου, περιβλημάτων άκρων, έκδοσης και στυλ ✔
- Δ) Συνδυασμός του παραγόμενου κώδικα απευθείας χωρίς να τον διαβάσετε
Επεξήγηση: Ο προσδιορισμός των τύπων εισόδου/εξόδου της συνάρτησης (συμβόλαιο), περιπτώσεων ακμών, περιορισμού γλώσσας/έκδοσης και στυλ και η παροχή παραδείγματος στο μοντέλο επιτρέπει τη μετάβαση από την πρόβλεψη στην ακρίβεια. Τα αιτήματα "γράψε μου αυτό" χωρίς συμφραζόμενα παράγουν κώδικα που είναι διαφορετικός κάθε φορά και συχνά παρακάμπτει περιπτώσεις ακμών.
4. Κατά την εξερεύνηση μιας ξένης βάσης κωδικών με AI, το όνομα μιας συνάρτησης μπορεί να είναι 'validateAndSave' αλλά η σύνοψη AI μπορεί να είναι εσφαλμένη. Ποια είναι η σωστή προσέγγιση;
- Α) Πλήρης εμπιστοσύνη στην περίληψη της τεχνητής νοημοσύνης καθώς το όνομα είναι αυτονόητο
- Β) Αλλαγή της συνάρτησης απευθείας χωρίς να την διαβάσετε
- Γ) Αποφασίζοντας απλώς κοιτάζοντας το όνομα της συνάρτησης
- Δ) Αντιμετωπίστε την περιγραφή AI ως υπόθεση και επαληθεύστε κρίσιμους ισχυρισμούς γραμμή προς γραμμή στον κώδικα ✔
Εξήγηση: Η τεχνητή νοημοσύνη μπορεί να κοιτάξει το όνομα στον κώδικα και να σας πει «πως φαίνεται να κάνει», αλλά στην πραγματικότητα η λογική μπορεί να είναι διαφορετική (ή ακόμα και αντίστροφη). Έτσι, η εξήγηση AI είναι μια υπόθεση. Οι κρίσιμοι ισχυρισμοί, ειδικά αυτοί που αφορούν ασφάλεια, εξουσία ή ροή χρημάτων, θα πρέπει να επαληθεύονται οπτικά στις σχετικές γραμμές.
5. Ποιος είναι ο μεγαλύτερος κίνδυνος όταν λέμε "Το AI φαινόταν, είναι ξεκάθαρο" στην αναθεώρηση κώδικα με τη βοήθεια AI;
- Α) Η τεχνητή νοημοσύνη μπορεί να παράγει ψευδώς αρνητικά. Τα πραγματικά χαμένα λάθη δημιουργούν ψεύτικη εμπιστοσύνη ✔
- Β) Η αναθεώρηση της τεχνητής νοημοσύνης είναι πολύ αργή, επομένως χάνεται χρόνος
- Γ) Η ομάδα δεν καταλαβαίνει γιατί το AI σχολιάζει μόνο στα αγγλικά
- Δ) Το PR δεν συγκλίνει γιατί το AI υπερερμηνεύει πάντα
Εξήγηση: Η τεχνητή νοημοσύνη παράγει τόσο ψευδώς θετικά (επισήμανση ενός προβλήματος όπου δεν υπάρχει) όσο και ψευδώς αρνητικά (χάνει το πραγματικό σφάλμα). Τα ψευδώς αρνητικά είναι σιωπηλά. Τα πιο επικίνδυνα λάθη είναι αυτά που δεν αναφέρονται καθόλου στην κριτική. Άρα το AI είναι ένα πρώτο φίλτρο, όχι έγκριση. Η απόφαση συγχώνευσης ανήκει σε υπόλογο πρόσωπο.
6. Ποια είναι η πιο ύπουλη παγίδα που εμφανίζεται όταν απλώς δίνετε στην τεχνητή νοημοσύνη τον κωδικό και τις δοκιμές εκτύπωσης;
- Α) Η τεχνητή νοημοσύνη γράφει πάντα πάρα πολλά τεστ και φουσκώνει τη βάση κώδικα
- Β) Το AI ελέγχει την τρέχουσα (ίσως λανθασμένη) συμπεριφορά του κώδικα ως «σωστή» και διορθώνει το σφάλμα ✔
- Γ) Το AI διαγράφει αυτόματα τον κώδικα κατά τη σύνταξη δοκιμών
- Δ) Η τεχνητή νοημοσύνη γράφει δοκιμές όχι μόνο για το happy path αλλά πάντα για το edge case
Εξήγηση: Η τεχνητή νοημοσύνη τείνει να εξετάζει τον κώδικα και να γράφει ισχυρισμούς που δοκιμάζουν την τρέχουσα συμπεριφορά. Εάν ο κώδικας είναι λάθος από την αρχή, το AI διορθώνει αυτή τη λανθασμένη συμπεριφορά ως «σωστή». Επομένως, οι προσδοκίες της δοκιμής θα πρέπει να γράφονται σύμφωνα με τον απαιτούμενο κανόνα (προδιαγραφή) και όχι σύμφωνα με την τρέχουσα έξοδο του κώδικα.
7. Τι καθορίζει περισσότερο την ακρίβεια των υποθέσεων κατά τον εντοπισμό σφαλμάτων ενός σφάλματος με AI;
- Α) Πόσο ευγενικά γράφεται η προτροπή.
- Β) Πόσες φορές τέθηκε ξανά η ερώτηση
- Γ) Ποιότητα αποδεικτικών στοιχείων που παρέχονται στο μοντέλο: πλήρες μήνυμα σφάλματος, ίχνος στοίβας, είσοδος και αναμενόμενη συμπεριφορά ✔
- Δ) Με τι χρωματικό θέμα είναι γραμμένος ο κώδικας;
Εξήγηση: Η τεχνητή νοημοσύνη δεν βλέπει το σφάλμα όπως εσείς. Ξέρει μόνο τα στοιχεία που του δίνεις. Λαμβάνοντας υπόψη το πλήρες μήνυμα σφάλματος, το ίχνος στοίβας, την είσοδο ενεργοποίησης και την αναμενόμενη συμπεριφορά, το μοντέλο απαριθμεί τις πραγματικές δυνατότητες. Εάν δεν υπάρχουν στοιχεία, κάνει μια εικασία (ψευδαίσθηση) και σας οδηγεί σε λάθος δρόμο.
8. Ποιο είναι το πιο κρίσιμο βήμα προτού δοθούν αρχεία καταγραφής παραγωγής στην τεχνητή νοημοσύνη για ανάλυση;
- Α) Επικόλληση του κορμού ως έχει, καλύπτοντας όλη την ημέρα
- Β) Μετατρέψτε πρώτα το αρχείο καταγραφής σε κεφαλαία
- Γ) Τακτοποίηση γραμμών κορμού με αλφαβητική σειρά
- Δ) Απόκρυψη προσωπικών δεδομένων και μυστικών και παροχή μόνο του σχετικού παραθύρου ✔
Περιγραφή: Τα ακατέργαστα αρχεία καταγραφής παραγωγής περιέχουν IP, email, αναγνωριστικό περιόδου σύνδεσης, διακριτικό και μερικές φορές ανοιχτό μυστικό. Η προσκόλλησή τους σε ένα εργαλείο τεχνητής νοημοσύνης χωρίς να τα αποκρύψετε αποτελεί σοβαρή παραβίαση απορρήτου. Επιπλέον, το αρχείο καταγραφής θα πρέπει να φιλτραριστεί σε ένα στενό χρονικό παράθυρο. Αλλά η πρώτη ανάγκη είναι να καθαρίσετε ευαίσθητα δεδομένα.
9. Τι πρέπει να γίνει εάν το AI λέει ότι δύο συμβάντα συνέβησαν «ταυτόχρονα» στην ανάλυση αρχείων καταγραφής και δηλώσει ένα ως τη βασική αιτία;
- Α) Παράβλεψη της συσχέτισης ως αιτιότητας και επαλήθευση της αξίωσης με μετρήσεις και κωδικό ✔
- Β) Αποδοχή της αιτίας ως οριστική επειδή η τεχνητή νοημοσύνη δημιουργεί μια χρονική σχέση
- Γ) Άμεση επανεκκίνηση του πρώτου κατηγορούμενου στοιχείου
- Δ) Διαγραφή των αρχείων καταγραφής και εκ νέου συλλογή τους
Εξήγηση: Η πιο κοινή παγίδα στην ανάλυση log είναι η σύγχυση της συσχέτισης με την αιτιότητα. Η χρονική σχέση που καθιερώθηκε από το AI είναι μια ένδειξη, όχι απόδειξη. Η αληθινή αιτιότητα απαιτεί συγχρονισμό, μηχανισμό και, αν είναι δυνατόν, επαναληψιμότητα. Η αξίωση πρέπει να επικυρωθεί με μετρήσεις και κωδικό.
10. Ποιος είναι ο αδιαπραγμάτευτος χρυσός κανόνας κατά την ανακατασκευή με AI και τι τον εξασφαλίζει;
- Α) Ο κωδικός πρέπει να είναι μικρότερος. Ο αριθμός των γραμμών το εγγυάται αυτό
- Β) Καμία αλλαγή στη συμπεριφορά. δοκιμές που καταγράφουν την τρέχουσα συμπεριφορά το διασφαλίζουν ✔
- Γ) Ο κώδικας περιέχει περισσότερα σχόλια. Το AI το εγγυάται
- Δ) Επανεγγραφή ολόκληρου του αρχείου ταυτόχρονα. ο πράκτορας το εγγυάται αυτό
Επεξήγηση: Το Refactoring βελτιώνει την εσωτερική δομή του κώδικα χωρίς να αλλάζει την εξωτερική του συμπεριφορά. Ο χρυσός κανόνας είναι ότι η συμπεριφορά παραμένει σταθερή. Αυτό που διασφαλίζει αυτό είναι η δοκιμή: ένα δοκιμαστικό δίκτυο που καταγράφει την τρέχουσα συμπεριφορά πριν την αλλάξει, ρυθμίζεται και εκτελείται μετά από κάθε βήμα. Η ανακατασκευή χωρίς δοκιμαστικό δίκτυο είναι ένα στοίχημα.
11. Ποιο είναι το επίπεδο στην παραγωγή τεκμηρίωσης που η τεχνητή νοημοσύνη δεν μπορεί να γνωρίζει και είναι επικίνδυνο να καλύψει;
- Α) Πώς να εκτελέσετε τα βήματα εγκατάστασης
- Β) Λίστα παραμέτρων μιας συνάρτησης
- Γ) Αιτιολόγηση του «γιατί» μια απόφαση σχεδιασμού ελήφθη με αυτόν τον τρόπο ✔
- Δ) Σε ποια γλώσσα είναι γραμμένος ο κώδικας;
Περιγραφή: Η τεχνητή νοημοσύνη μπορεί να εξαγάγει το επίπεδο «what/how» (τι κάνει η συνάρτηση, πώς ρυθμίζεται) από τον κώδικα. αλλά δεν μπορεί να γνωρίζει το επίπεδο «γιατί» (το σκεπτικό σχεδιασμού για μια απόφαση, ο λόγος για μια οριακή τιμή). Ένας επινοημένος «λόγος» είναι πιο επικίνδυνος από τη μη δικαιολογία. Ο κάτοχος του κώδικα πρέπει να προσθέσει αυτό το επίπεδο.
12. Τι πρέπει να κάνει ένας προγραμματιστής εάν θέλει να επικολλήσει ένα αρχείο διαμόρφωσης που περιέχει ένα ζωντανό κλειδί API σε ένα μη εγκεκριμένο εργαλείο τεχνητής νοημοσύνης ενώ επιλύει ένα επείγον σφάλμα;
- Α) Για ταχύτητα, επικολλήστε το αρχείο ως έχει και μετά διαγράψτε τη συνομιλία
- Β) Προσθέστε μια «εμπιστευτική» σημείωση στο τέλος του αρχείου και στείλτε την
- Γ) Αφήστε το κλειδί και αλλάξτε μόνο το όνομα του αρχείου
- Δ) Αφαιρέστε/καλύψτε τα μυστικά και δώστε μόνο το απαραίτητο μη ευαίσθητο πλαίσιο ✔
Αποκάλυψη: Τα μυστικά, τα προσωπικά δεδομένα και τα εμπιστευτικά περιουσιακά στοιχεία δεν πρέπει ποτέ να εισάγονται σε μη εγκεκριμένα μέσα. Το επείγον δεν αναστέλλει αυτήν την κόκκινη γραμμή. Η σωστή προσέγγιση είναι να εξαγάγετε/καλύπτετε πρώτα τα μυστικά και να δίνετε μόνο το απαραίτητο, μη ευαίσθητο πλαίσιο. Εάν ένα μυστικό εξακολουθεί να διαρρέει, το πρώτο πράγμα που πρέπει να κάνετε είναι να γυρίσετε αμέσως αυτό το κλειδί.
13. Ένας κώδικας που δημιουργείται από την τεχνητή νοημοσύνη περνά τις δοκιμές και εκτελείται στην παραγωγή. Αυτό αποδεικνύει ότι ο κωδικός είναι ασφαλής;
- Α) Όχι. «Λειτουργεί» δεν σημαίνει ασφαλής, η ασφάλεια απαιτεί ξεχωριστό επίπεδο ελέγχου ταυτότητας ✔
- Β) Ναι. Ο κωδικός που περνάει το τεστ είναι εξ ορισμού ασφαλής
- Γ) Ναι. Η λειτουργία του στην παραγωγή εξαλείφει όλα τα τρωτά σημεία
- Δ) Όχι. αλλά η ασφάλεια έχει σημασία μόνο αν ο κωδικός είναι αργός
Διευκρίνιση: Το «εργασία» δεν είναι το ίδιο με το «ασφαλές». Ακόμα κι αν ο κώδικας περιέχει μια ευπάθεια όπως η ένεση SQL, μπορεί να περάσει τη δοκιμή και να εκτελεστεί ομαλά. Η ευπάθεια αποκαλύπτεται μόνο όταν τη βρει ένας εισβολέας. Επομένως, εκτός από την ακρίβεια, η αναθεώρηση και οι σαρώσεις με γνώμονα την ασφάλεια, όπως το SAST, θα πρέπει να εκτελούνται ως ξεχωριστό επίπεδο.
14. Ποια είναι η πιο ασφαλής πειθαρχία όταν δίνετε μια εργασία πολλών αρχείων σε έναν πράκτορα CLI (αυτόνομο εργαλείο που μπορεί να τροποποιήσει αρχεία και να εκτελέσει εντολές);
- Α) Λέγοντας στον πράκτορα «βελτίωση αυτής της ενότητας» και δίνοντας πλήρη ελευθερία
- Β) Δίνοντας περιορισμένο πεδίο εφαρμογής και κριτήρια αποδοχής, ζητώντας πρώτα ένα σχέδιο, εγκρίνοντάς το, εφαρμόζοντάς το βήμα προς βήμα και εκτελώντας τις δοκιμές ✔
- Γ) Συγχωνεύστε απευθείας όλες τις αλλαγές του πράκτορα χωρίς να τις ελέγξετε
- Δ) Παροχή στον πράκτορα απεριόριστη πρόσβαση στο περιβάλλον παραγωγής και στα εμπιστευτικά δεδομένα
Εξήγηση: Καθώς αυξάνεται η αυτονομία, ο έλεγχος θα πρέπει επίσης να αυξάνεται. Δίνοντας στον πράκτορα ένα στενό πεδίο εφαρμογής και σαφή κριτήρια αποδοχής, ζητώντας πρώτα ένα σχέδιο χωρίς αλλαγές, εγκρίνοντας το σχέδιο, στη συνέχεια υλοποίησή του βήμα προς βήμα και εκτέλεση δοκιμών σε κάθε βήμα. Αποτρέπει αλλαγές που είναι ευρείες, μη αναθεωρήσιμες και πρέπει να επαναληφθούν.
15. Ποιος έχει ευθύνη που απορρέει από κώδικα που δημιουργείται από AI σε λογισμικό κρίσιμο για την ασφάλεια (π.χ. πληρωμή ή έλεγχος ταυτότητας);
- Α) Δεδομένου ότι ο κωδικός προέρχεται από AI, βρίσκεται στον πάροχο του οχήματος
- Β) Εάν η τεχνητή νοημοσύνη είναι επαρκώς ανεπτυγμένη, κανείς δεν έχει. δεν χρειάζεται επαλήθευση
- Γ) Η ομάδα/μηχανικός που εξετάζει, συναρμολογεί και διανέμει τον κώδικα. Το AI δεν αντικαθιστά τη συγκατάθεση ✔
- Δ) Μόνο το άτομο που συντάσσει την προτροπή, όχι εκείνους που την αναθεωρούν
Περιγραφή: Το AI είναι πολλαπλασιαστής ταχύτητας και γεννήτρια σχεδιαγράμματος. δεν μπορεί να αναλάβει την ευθύνη. Η ευθύνη για τυχόν σφάλματα, ευπάθειες ή παραβιάσεις που προκύπτουν από τον κώδικα στην παραγωγή ανήκει στην ομάδα που εξετάζει, συναρμολογεί και διανέμει αυτόν τον κώδικα. Σε κρίσιμους για την ασφάλεια τομείς, η έξοδος τεχνητής νοημοσύνης δεν υποκαθιστά σε καμία περίπτωση την επανεξέταση και την έγκριση από ειδικευμένο μηχανικό.