VS Code 中的 AI 功能
Visual Studio Code 內建的 AI 功能由 GitHub Copilot 和大型語言模型(LLMs)所驅動。這些功能涵蓋多個介面,從您輸入時的行內建議,到能實作完整功能的自主代理(Agents)。本文概述了這些 AI 功能及其連結方式。如需實作教學,請參閱快速入門。
AI 功能概覽
VS Code 在各種互動介面上提供 AI 功能,每種介面皆適用於不同的任務
- 代理 (Agents):遵循完整 代理迴圈 (agent loop) 的自主工作階段。它們能讀取檔案、在多個檔案間執行協調變更、執行指令,並不斷迭代直到任務完成。代理能端對端地處理多步驟任務,從實作功能到架構層級的重構及框架遷移皆可勝任。
- 交談 (Chat):與代理互動及進行多輪對話的主要介面。使用交談來指派任務、詢問問題、探索想法或取得說明。根據您的目標,可在 Agent、Ask、Plan 以及自訂代理之間進行切換。
- 行內交談 (Inline chat):直接在編輯器中開啟的輕量級交談介面,用於快速且聚焦的編輯。
- 行內建議 (Inline suggestions):當您輸入時以幽靈文字(ghost text)出現的程式碼建議。這些建議使用專門的補全模型,不涉及代理迴圈或工具。下一個編輯建議 (NES) 則更進一步,能預測您下一次編輯應該發生在何處。
- 智慧動作 (Smart actions):整合到您工作流程中的一鍵式 AI 動作,例如產生提交訊息(commit messages)或修復診斷錯誤。
概念
以下概念文章解釋了驅動這些 AI 功能的架構與建構模組
- 語言模型:驅動所有功能的 AI 模型,包含如何選擇與設定它們。
- 上下文 (Context):VS Code 如何為模型彙整資訊,從您的檔案到對話歷史紀錄。
- 工具 (Tools):讓代理能夠操作您的開發環境並連結至外部服務的機制。
- 代理 (Agents):代理迴圈、代理類型、子代理、記憶體與規劃。
- 自訂化 (Customization):如何透過指示、提示詞檔案(prompt files)、自訂代理、技能、鉤子(hooks)與外掛程式來調整 AI 行為。
- 信任與安全:控制機制、AI 限制與安全性考量。