kódkiegészítés
angolul: code completion
A kódkiegészítés olyan segédfunkció, amely programírás közben felajánlja a kód valószínű folytatását, így a fejlesztőnek nem kell mindent betűről betűre begépelnie.
Érthetően
Ha írtál már üzenetet a telefonodon, ismered az érzést: a billentyűzet felajánlja a következő szót, te pedig egy koppintással elfogadod. A kódkiegészítés ugyanez, csak programozóknak: a szerkesztőprogram gépelés közben halványan megjeleníti, szerinte mi következik, és egy billentyűnyomással beillesztheted.
Régebben ez csak neveket és parancsokat egészített ki, mint egy okos szótár. A mai, mesterséges intelligenciára épülő változat már egész sorokat, sőt teljes programrészleteket is javasol, mert a nyelvi modell rengeteg korábban megírt kódból tanulta meg, mi szokott egymás után következni.
A lényeg, hogy itt te vezetsz: te írod a programot, a gép csak súg. Ebben más, mint a kódoló agent, amely egy megadott feladatot önállóan, több lépésben végez el, és te csak a végeredményt ellenőrzöd.
Hogyan működik
- A szerkesztőprogram folyamatosan figyeli, hol áll a kurzor, és mit írtál előtte és utána.
- Ezt a környezetet (a nyitott fájl egy részét, gyakran a projekt más fájljainak részleteit is) elküldi egy kódra tanított nyelvi modellnek.
- A modell kiszámolja, mi a legvalószínűbb folytatás, és jellemzően a másodperc töredéke alatt visszaküld egy vagy több javaslatot.
- A javaslat halvány, szürke szövegként jelenik meg a kurzornál: elfogadhatod (jellemzően a Tab billentyűvel), átírhatod, vagy egyszerűen gépelsz tovább, és eltűnik.
- Sok eszköz azt is méri, mely javaslatokat fogadják el a felhasználók, és a készítői – beállítástól függően – ezek alapján finomítják a következő változatot.
Példa a mindennapokból
Egy webáruház fejlesztője elkezdi írni azt a programrészt, amely kiszámolja a kosár végösszegét áfával. Alig írja le a függvény nevét, a szerkesztő már felajánlja a teljes számítást; ő átolvassa, kijavítja benne az áfakulcsot, és elfogadja.
Kit érint
Gyakori félreértés
Korlátok és kockázatok
- A javaslat magabiztosnak látszik akkor is, ha hibás: hivatkozhat nem létező függvényre, vagy logikai hibát rejthet.
- Tanulhatott rossz mintákból is, ezért előfordul, hogy biztonsági rést tartalmazó megoldást ajánl.
- A legtöbb eszköz a kódod egy részét elküldi a szolgáltató szerverére, ezért bizalmas vagy céges kódnál nézd meg a beállításokat és a szerződési feltételeket.
- Csak azt látja, amit a szerkesztő elküld neki: a teljes rendszer felépítését és az üzleti szándékot nem ismeri.
Hasonló, de nem ugyanaz
- kódoló agent – A kódoló agent önállóan tervez, fájlokat módosít és teszteket futtat egy feladat elvégzéséhez, a kódkiegészítés viszont csak ott súg, ahol éppen gépelsz.
- kódgenerálás – Kódgenerálásnál szöveges kérésre készül el egy teljes programrész, a kódkiegészítés pedig a már megkezdett kódot folytatja kérés nélkül.
- automatikus szövegkiegészítés – Az a hétköznapi szövegek (üzenet, e-mail, keresés) folytatását ajánlja fel, a kódkiegészítés ugyanezt programkódra teszi, kódon tanított modellel vagy a programnyelv szabályai alapján.
Kapcsolódó fogalmak
AI-alapú programozási asszisztens, generatív mesterséges intelligencia, szoftverfejlesztés
sorkiegészítés, többsoros kódjavaslat, következő szerkesztés előrejelzése
kódoló agent, kódgenerálás, nagy nyelvi modell, vibe coding, integrált fejlesztőkörnyezet
Röviden a története
Egyszerű kódkiegészítés már az 1980-as évek fejlesztőeszközeiben is létezett. A hagyományos, a programnyelv szabályaira épülő változat az 1990-es évek második felében vált széles körben ismertté, amikor a Microsoft 1996-tól IntelliSense néven beépítette a fejlesztőeszközeibe. Az AI-alapú, egész sorokat és programrészeket javasoló változat a 2021-ben előzetes változatban bemutatott, 2022-től bárki számára elérhető GitHub Copilottal terjedt el tömegesen.
Hol tart most
2026 végére az AI-alapú kódkiegészítés a legtöbb fejlesztői szerkesztő alapfunkciója lett. A figyelem közben áttevődött a kódoló agentekre, amelyek már egész feladatokat végeznek el, a kiegészítés pedig megszokott háttéreszközzé vált.
Más nevei
kódkiegészítés · code completion · automatikus kódkiegészítés · autocomplete · intelligens kódkiegészítés · AI code completion · kódjavaslat · tab completion
Források
- Chen et al. (2021): Evaluating Large Language Models Trained on Code (arXiv)
- Wikipedia: GitHub Copilot
A szócikk gépi szerkesztéssel készült és gépi szakmai lektoráláson ment át; a „hírekben” rész az Agent Age sztorijaiból automatikusan frissül.