GitHub發布新的Copilot嵌入向量模型,主打在VS Code中更精準即時地找出與開發者意圖相符的程式碼片段,同時降低本機與伺服端的記憶體負擔。官方測試顯示,檢索品質提升37.6%,嵌入(Embedding)吞吐量提升約2倍,索引記憶體占用約為原本的八分之一,預期可讓Copilot聊天與代理回應更準確,結果回傳更快,並減少在大型專案上的資源消耗。
此次模型已用於Copilot的情境擷取,涵蓋聊天、代理、編輯與詢問模式。開發者在尋找函式、測試、跨多個檔案的工具函式,或追查錯誤字串的處理位置時,將更容易找到問題核心的程式碼,而非語義相近卻無法直接使用的片段。GitHub並指出,在VS Code中的建議程式碼接受率也明顯上升,C#開發者提升110.7%,Java開發者上升113.1%。
GitHub表示,新模型的設計重點是讓開發者在實際工作中能更快更準確地找到需要的程式碼,同時控制反應時間與記憶體使用量。團隊在訓練過程中採用一種比較不同程式碼片段的方法,讓模型學會分辨看起來相似但意義不同的內容,並能根據不同情境使用多種規模的運算方式,以兼顧速度與資源效率。
為了避免搜尋時出現看似正確其實錯誤的結果,新模型特別加入了許多具挑戰性的訓練資料,這些範例雖然與問題非常接近,但答案並不正確。這些資料來自公開的GitHub程式碼庫,以及微軟與GitHub的內部專案,再透過大型語言模型協助挑選出最容易混淆的案例。
語言分布方面,資料集前5名分別為Python約36.7%、Java約19.0%、C++約13.8%、JavaScript或TypeScript約8.9%、C#約4.6%,其餘語言合計約17.0%。在評測上,GitHub採多重基準而非單一測試,涵蓋從自然語言到程式碼、程式碼到自然語言、相似功能搜尋,與問題到程式碼(Problems to Code)的修正建議等不同面向,目標是在多樣化情境中維持穩定品質。
對使用者最直接的改變是VS Code端搜尋反應更敏捷,且在大型程式碼庫裡建立與保存索引的成本下降,對本機記憶體較敏感或需要同時開啟多個工作區的開發者尤其有感。伺服端因索引縮小也更容易擴張規模,對團隊與企業級場景能提供較穩定的回應時間,進一步改善Copilot在聊天、代理與編輯建議中的整體表現。
GitHub表示,未來將持續擴充支援的程式語言與程式碼儲存庫,並持續改進困難負面範例(Hard Negative)資料的篩選流程,讓模型能更精確地辨識程式碼間的細微差異。隨著運算效率的提升,團隊也計畫把多餘的效能資源投入在訓練更大型,精度更高的模型上。
