JetBrains Open-Sources KotlinLLM: Smart Macros That Generate Kotlin Source Code at Runtime and Hot-Reload It Through JDI
重點摘要
JetBrains Research 開源 KotlinLLM,這款 IntelliJ IDEA 外掛為 Kotlin/JVM 專案加入 Smart macros 語言功能,可在執行階段產生 Kotlin 原始碼並透過 JDI 熱重載。根據測試,在改寫的 Spring Petclinic 專案中 24 個情境全部成功,熱重載成功率 100%,編譯與重定義僅增加約 1% 執行開銷。此專案屬研究原型,採用 Apache License 2.0,需搭配 IntelliJ IDEA 2025.2.x、JDK 21 與 OpenAI API 金鑰。
JetBrains Research 近日正式開源了一款名為 KotlinLLM 的 IntelliJ IDEA 外掛程式,將大型語言模型帶入 Kotlin/JVM 專案的開發流程中。這款外掛新增了一種名為「Smart macros」的語言功能,開發者可以在 Kotlin 原始碼中直接呼叫 LLM 產生邏輯,而產生的結果不是暫時性的提示文字,而是實際可編譯、可審查、可提交的 Kotlin 原始碼。JetBrains 將此專案定位為研究原型,而非生產環境的正式工具,但其設計方向引發了開發工具圈的高度關注。 Smart macros 的核心概念是讓 LLM 生成的程式碼成為程式本身的一部分。具體來說,Smart macro 就是一個普通的 Kotlin 函式呼叫,但這個函式的主體是由 LLM 動態產生的 Kotlin 程式碼,而不是由開發者事先手寫完成。KotlinLLM 刻意維持極小的公開 API,主要包含兩個關鍵功能:asLlm 與 mockLlm。asLlm 能將某個型別 F 的輸入轉換成型別 T 的輸出,T 可以是 data class、enum、list 或基本型別;mockLlm 則能為指定的介面 T 產生有狀態的實作,其行為會根據呼叫的方法而有所差異,適合用來建立具備真實互動邏輯的測試替身。 開發者實際使用時,不需要撰寫複雜的 LLM 提示詞,只需要在 Kotlin 程式碼中寫下類似這樣的片段:以 asLlm 將 GitHub API 的回應轉換成 List<Issue> 型別,並在 hint 參數中描述想要的結果,例如「回傳該 repository 所有適合初學者的 issue」。KotlinLLM 背後的機制會自動處理 LLM 呼叫、結果解析與程式碼生成。這種寫法讓程式碼看起來就像一般的 Kotlin 函式呼叫,但實際上具備了動態生成與即時演化的能力。 KotlinLLM 的執行流程圍繞著一個特殊的 runtime loop 運作。當專案透過 KotlinLLM 的 run configuration 啟動時,外掛會先掃描專案中所有的 asLlm 與 mockLlm 呼叫,並更新相對應的 bootstrap、provider、parser、mock 等生成檔案。接著,外掛會透過 JDI(Java Debug Interface)啟動應用程式,並在生成的重新生成鉤子上註冊斷點。當程式執行到某個 LLM 生成的邏輯不符合當下情境時,執行流程會停在中斷點上,外掛會從暫停的執行框架中收集當前的 runtime 數值與型別資訊,交由 LLM agent 提交程式碼更新,最後外掛會編譯這段新程式碼,並在執行緒恢復前重新定義已載入的類別,讓原本的函式呼叫可以用更新後的邏輯重新執行。 之所以鎖定 Kotlin/JVM 平台,正是因為這個 runtime evolution loop 高度依賴 JVM 的類別重新定義能力,而 JDI 提供了穩定且成熟的機制來達成這項功能。JetBrains Research 也提供了一個互動式圖解,逐步展示 Smart macro 的九步 runtime loop,並說明為什麼已經涵蓋的測試情境不會再消耗額外的 LLM 推論呼叫;一旦某個執行路徑被成功生成並驗證過,之後再次走到相同情境時,就直接使用已生成的 Kotlin 程式碼,不再需要 LLM 介入。 在實際評估結果方面,JetBrains 研究團隊在改寫過的 Spring Petclinic Kotlin 專案上進行了測試。該專案包含 18 個 asLlm 呼叫點,在 Smart macro 演化完成後,24 個應用程式情境全部成功執行,熱重載成功率達到 100%,而編譯與類別重新定義所增加的執行時間開銷約僅佔總執行時間的 1%。另外,研究團隊也建置了一個名為「GitHub Beginner Issue Radar」的合成專案,用來解析跨 20 個 repository、超過 3 萬筆 issue 的真實資料,在找出適合初學者的標籤任務上,達到了約 0.89 的 recall。 安裝 KotlinLLM 有明確的環境要求,外掛需要 IntelliJ IDEA 2025.2.x 與 JDK 21,並需在目標專案的 .kotlinllm 檔案中透過 Tools 選單中的 KotlinLLM Settings 設定 OpenAI API key。該專案以 Apache License 2.0 授權釋出,repository 內包含可執行的範例、完整的論文撰寫說明,以及 KotlinConf 2026 演講的錄影。 不過,JetBrains 明確強調 KotlinLLM 目前並不適合直接作為生產環境的 runtime 使用。外掛本身是實驗性質的研究原型,但從外掛產生的輸出結果則是可以部署的。一旦某段行為已經被生成完畢,目標專案就可以在完全不啟動 KotlinLLM、也不再發出任何 LLM 請求的情況下,獨立編譯並執行這段行為。開發者交付的是純粹的 Kotlin 程式碼,而不是一個帶有模型依賴的 runtime,因此其產出可以像一般程式碼一樣進行程式碼審查與版本控管。 以公司層級來看,KotlinLLM 最適合的採用者是目前的中大型 Kotlin/JVM 企業中的 R&D 部門或平台團隊,以及可接受原型工具的初創公司。對於受監管產業中的企業,則應將 LLM 生成的原始碼視為可審查的一般程式碼來管理,而這恰好也是 KotlinLLM 儲存結果的方式。在應用場景上,KotlinLLM 對於維運繁重 JVM/Kotlin 系統的金融科技與銀行業特別具有吸引力,同時也適用於開發者工具、電子商務、物流,以及任何需要解析混亂第三方 API 回應的團隊。典型的使用情境包括將半結構化的 API 回應正規化為型別安全的值、建立隨需求演化的測試替身、適應上游 schema 變動,以及對充滿雜訊的文字欄位進行分類處理。整體而言,KotlinLLM 代表的是一種將 LLM 從程式碼產生工具轉變為程式碼執行基礎設施的實驗性嘗試,其成效與限制仍有待社群的進一步驗證。
Related
相關文章
微信公眾號推出 AI"一鍵排版":自動分段、生成小標題、匹配配圖三步到位
微信公眾號平台正式推出 AI「一鍵排版」功能,創作者在手機 App 或網頁版編輯文章時,系統會自動識別內容並彈出排版圖標,一鍵完成整套排版。功能涵蓋自動分段與調整間距、自動生成小標題樣式,以及智慧調整圖片大小與對齊,並支援多圖轉輪播。目前提供「標準」與「細體」兩種風格,讓創作者能快速完成從碼字到發布前的排版工作。
DeepSeek V4 正式版疑定檔 8 月 3 日:硅基流動漲價露馬腳,API 已能答對新題
AI資訊AI新閒資訊正文DeepSeek V4 正式版疑定檔 8 月 3 日:硅基流動漲價露馬腳,API 已能答對新題發布於AI新閒資訊時間 :Jul 31, 2026閱讀 :1分鐘DeepSeek V4 正式版自 7 月中旬開啟灰度測試後一度跳票,官方至今未公佈確切發佈時間。但多個新證據指向 8 月 3 日可能成為重要節點——硅基流動率先露出馬腳。
AI日報:MiniMax發佈全模態模型H3;Seedance 2.5發佈,30秒一鏡到底;DeepSeek-V4-Flash正式版上線
AI資訊最新AI日報正文AI日報:MiniMax發佈全模態模型H3;Seedance 2.5發佈,30秒一鏡到底;DeepSeek-V4-Flash正式版上線發布於最新AI日報時間 :Jul 31, 2026閱讀 :2分鐘歡迎來到【AI日報】欄目!這裡是你每天探索人工智能世界的指南,每天我們為你呈現AI領域的熱點內容,聚焦開發者,助你洞悉技術趨勢、瞭解創新AI產品應用。
韓國最大 AI 模型問世:LG 發佈 7500 億參數 K-EXAONE 2.0,Apache 開源直面中國模型
LG AI研究院發布韓國最大AI基礎模型K-EXAONE 2.0,總參數達7500億,採用混合注意力MoE架構,並以Apache 2.0許可證完全開源。該模型在多項基準測試中表現優於初代,同時在長上下文理解與智能體工具使用等能力上直接對標智譜GLM-5.1、Qwen3.5等中國開源模型,顯示東亞開源AI競爭加劇。
顛覆影視創作!字節跳動王牌模型Seedance 2. 5 正式發佈, 30 秒一鏡成片時代來了
字節跳動Seed團隊正式推出新一代音視頻聯合生成模型Seedance2.5,主打「一鏡成片」,單次生成時長由15秒提升至30秒,並支援多輪無縫延長。模型強化長敘事、多模態參考與後期編輯能力,並優化材質、光影與膚質,呈現更接近實拍的影視級質感。目前Seedance2.5正陸續登陸即夢AI、豆包專業版,API則將於近期上線火山方舟。
特斯拉中國車機正式接入豆包大模型
特斯拉中國自7月31日起分批次推送2026.14.13版車機軟體更新,涵蓋Model 3、Model Y、Model S與Model X等車型,核心升級是正式導入豆包大模型。該模型可提供即時資訊查詢與自然流暢的語音對話,提升車內智慧互動體驗,但需開通高級車載娛樂服務才能使用。