ÉlőUtoljára: 2 perceMa: 22
Eszközökfrissítve: 16:15

Futásidőben generál Kotlin kódot az LLM-alapú makróval a JetBrains Research prototípusa

A prototípus Apache 2.0 licenccel érhető el, és az IntelliJ IDEA-ban használható okos makrók formájában; a rendszer csekély, mintegy 1%-os futásidejű többletterheléssel működik.

Futásidőben generál Kotlin kódot az LLM-alapú makróval a JetBrains Research prototípusa
Fotó: Tony Pepe / Unsplash
forrás: MarkTechPost·AI Forradalom szerk.·
Megosztás

A JetBrains Research bemutatta a KotlinLLM-et, egy IntelliJ IDEA plugint Kotlin/JVM projektekhez. A fejlesztők okos makrókat, „Smart macros”-t használhatnak, amelyek futásidőben generálnak Kotlin kódot. A prototípus Apache 2.0 licenccel érhető el. (MarkTechPost)

A Smart macro egy hagyományos Kotlin függvényhívás, amelynek törzse generált Kotlin kódot tartalmaz. Az API-ból két fő funkció érhető el: a asLlm<F, T>(from, hint), amely egy F típusú bemenetet alakít át egy T típusú értékre (például adatosztály, felsorolás, lista vagy primitív típus), és a mockLlm<T>(), amely egy interfész T típusú állapotfüggő megvalósítását generálja.

Futásidejű kódgenerálás és -frissítés

Amikor egy projekt elindul a KotlinLLM futtatási konfigurációján keresztül, a plugin keresi a asLlm és mockLlm hívásokat. Ezt követően frissíti a generált bootstrap, provider, parser és mock fájlokat, elindítja a futtatási konfigurációt a JDI (Java Debug Interface) segítségével, és breakpointokat regisztrál a generált „regenerate hooks”-okra. Ha a generált logika nem felel meg egy futásidejű forgatókönyvnek, a végrehajtás eléri a hook-ot. A plugin ekkor rögzíti a futásidejű értékeket és típusinformációkat a felfüggesztett keretből, az LLM-ügynök kódmódosítást küld, a plugin pedig lefordítja és újradefiniálja a betöltött osztályt, mielőtt megismételné az eredeti hívást.

A KotlinLLM kifejezetten a Kotlin/JVM platformot célozza, mivel a futásidejű evolúciós ciklus a JVM osztályok JDI-n keresztüli újradefiniálására támaszkodik. Ez a megközelítés lehetővé teszi, hogy a viselkedés generálása után a célprojekt a további LLM-kérés nélkül fordítsa le és futtassa a kódot ugyanarra a forgatókönyvre.

Eredmények és követelmények

Egy adaptált Spring Petclinic Kotlin projekten, 18 asLlm hívási hellyel, mind a 24 alkalmazási forgatókönyv sikeresen befejeződött a Smart macro evolúció után. A hot-reload sikerrátája 100% volt, a fordítás és újradefiniálás pedig a teljes futásidejű többletterhelés nagyjából 1%-át tette ki. Egy szintetikus „GitHub Beginner Issue Radar” teszt, amely 20 repozitórium és több mint 30 000 issue valós adatát dolgozta fel, körülbelül 0,89-es recall-t ért el az alapvető „beginner” címkéken.

A plugin telepítéséhez IntelliJ IDEA 2025.2.x, JDK 21 és egy OpenAI API kulcs szükséges, amelyet a célprojekt .kotlinllm fájljában kell tárolni a Tools > KotlinLLM Settings menüpontban. A JetBrains a KotlinLLM-et kutatási prototípusnak nevezi, és nem ajánlja éles környezetben való használatra.

Forrás

Feldolgozott sajtóforrás·MarkTechPost

Eredeti cikk megnyitása →

Ez a cikk a fenti sajtóforrás alapján készült AI-összefoglalóval.

tetszett a cikk? oszd meg →
Megosztás

Tetszik az oldal? Támogasd a fejlesztést

Az AI Forradalom egy automatizált pipeline: napi adatgyűjtés, LLM-feldolgozás és infrastruktúra fenntartása valódi költségekkel jár. Ha értékesnek találod a tömör, naprakész AI-összefoglalókat, egy kávé sokat segít.

Támogatom