這篇論文靜靜地揭示了為什麼大多數「工程用 AI 代理」在離開玩具演示的那一刻就失敗了。 每個人都認為困難的部分是語言、推理或更大的模型。這項工作顯示出真正的瓶頸是結構。 論文介紹了 SimuAgent,一個基於 LLM 的 Simulink 助手,Simulink 是數百萬工程師在安全關鍵行業中使用的圖形建模環境。汽車、飛機、電力網絡。那些幻覺不會有第二次機會的地方。 核心問題是醜陋的。Simulink 不是文本。它是具有嚴格拓撲規則、特定領域約束和數千種有效但脆弱的區塊組合的層次圖。將 XML 傳入 LLM 是行不通的。截圖也不行。長提示在上下文限制下崩潰。 因此,作者改變了表示方式。 SimuAgent 將 Simulink 模型轉換為緊湊的 Python 字典,而不是 XML 或圖像。只有基本要素得以保留:區塊、參數、連接。沒有佈局噪音。沒有視覺雜亂。在實際示例中,標記數量從約 43k 降至約 2.7k,簡化後甚至更低。 這不是表面上的改變。它根本改變了模型可以推理的內容。 此外,該代理使用精簡的計劃–執行循環。不是一個龐大的多代理馬戲團。需要時計劃。安全時執行。僅在驗證失敗後重新規劃。一個本地的 Python 測試工具在 MATLAB 運行之前捕捉接線錯誤、無效參數和類型不匹配。 但最有趣的貢獻不是架構上的,而是他們如何訓練模型。 長期工具使用有一個殘酷的獎勵問題。你只能在最後知道模型是否成功。一個標量獎勵。中途沒有指導。GRPO 有些幫助,但仍然稀疏。 他們的解決方案是 Reflection-GRPO。 當第一批回合失敗時,模型生成短的反思痕跡,解釋出錯的原因——錯誤使用工具、錯誤假設、缺失步驟。這些反思被輸入到第二個子組中,指導探索而不洩漏答案。早期,反思是頻繁的。隨著模型的改進,它自然會淡出。 學習加速。不穩定性下降。 他們將這與一個巧妙的自我監督技巧結合起來:抽象–重建。代理總結一個 Simulink 模型,然後僅使用該摘要嘗試重建它。這迫使它橋接高層意圖和低層實現,這正是實際工程師所做的。 基準是真實的,而不是合成的。SimuBench 包含 5,300 個任務,涵蓋控制、電氣、機械、熱、流體和電磁系統。創建、修改、質量保證。小模型和大模型。 ...