VS Code 中的 AI 擴充套件性
本文概述了 Visual Studio Code 中的 AI 擴充套件選項,幫助您為擴充套件選擇正確的方法。
VS Code 包含強大的 AI 功能,可增強編碼體驗
- 程式碼補全:在您鍵入時提供內聯程式碼建議
- 代理模式:使 AI 能夠使用專業工具自主規劃和執行開發任務
- 聊天:允許開發人員使用自然語言透過聊天介面提問或編輯程式碼庫
- 智慧操作:使用 AI 增強的操作執行常見開發任務,這些操作整合在編輯器中
您可以擴充套件和自定義這些內建功能中的每一個,以建立滿足使用者特定需求的定製 AI 體驗。
為什麼要擴充套件 VS Code 中的 AI?
為您的擴充套件新增 AI 功能可為您的使用者帶來多項好處
- 代理模式中的領域特定知識:允許代理模式訪問您公司的資料來源和服務
- 增強的使用者體驗:提供根據您的擴充套件領域量身定製的智慧幫助
- 領域專業化:建立特定於程式語言、框架或領域的 AI 功能
- 擴充套件聊天功能:為聊天介面新增專業工具或助手,以實現更強大的互動
- 提高開發人員生產力:透過 AI 功能增強常見的開發任務,如除錯、程式碼審查或測試
擴充套件聊天體驗
語言模型工具
語言模型工具使您能夠使用領域特定功能擴充套件 VS Code 中的代理模式。在代理模式下,這些工具會根據使用者的聊天提示自動呼叫,以執行專業任務或從資料來源或服務中檢索資訊。使用者還可以透過在聊天提示中 #-提及工具來明確引用這些工具。
要實現語言模型工具,請在 VS Code 擴充套件中使用語言模型工具 API。語言模型工具可以訪問所有 VS Code 擴充套件 API,並提供與編輯器的深度整合。
主要優勢:
- 作為自主編碼工作流的一部分的領域特定功能
- 您的工具實現可以使用 VS Code API,因為它在擴充套件主機程序中執行
- 透過 Visual Studio Marketplace 輕鬆分發和部署
主要考慮事項:
- 遠端部署要求擴充套件實現客戶端-伺服器通訊
- 跨不同工具的重用需要模組化設計和實現
MCP 工具
模型上下文協議 (MCP) 工具透過使用標準化協議,提供了一種將外部服務與語言模型整合的方法。在代理模式下,這些工具會根據使用者的聊天提示自動呼叫,以執行專業任務或從外部資料來源檢索資訊。
MCP 工具在 VS Code 之外執行,可以在使用者的本地機器上執行,也可以作為遠端服務執行。使用者可以透過 JSON 配置新增 MCP 工具,或者 VS Code 擴充套件可以以程式設計方式配置它們。您可以透過各種語言 SDK 和部署選項來實現 MCP 工具。
由於 MCP 工具在 VS Code 之外執行,因此它們無法訪問 VS Code 擴充套件 API。
主要優勢:
- 將領域特定功能作為自主編碼工作流的一部分新增
- 本地和遠端部署選項
- 在其他 MCP 客戶端中重用 MCP 伺服器
主要考慮事項:
- 無法訪問 VS Code 擴充套件 API
- 分發和部署需要使用者設定 MCP 伺服器
聊天參與者
聊天參與者是專門的助手,允許使用者透過領域專家擴充套件提問模式。在聊天中,使用者可以透過 @-提及聊天參與者並傳入有關特定主題或領域的自然語言提示來呼叫它。聊天參與者負責處理整個聊天互動。
要實現聊天參與者,請在 VS Code 擴充套件中使用聊天 API。聊天參與者可以訪問所有 VS Code 擴充套件 API,並提供與編輯器的深度整合。
主要優勢:
- 控制端到端互動流程
- 在擴充套件主機程序中執行允許訪問 VS Code 擴充套件 API
- 透過 Visual Studio Marketplace 輕鬆分發和部署
主要考慮事項:
- 遠端部署要求擴充套件實現客戶端-伺服器通訊
- 跨不同工具的重用需要模組化設計和實現
構建您自己的 AI 驅動功能
VS Code 為您提供對 AI 模型的直接程式設計訪問,以在您的擴充套件中建立自定義 AI 驅動功能。這種方法使您能夠構建使用 AI 功能的特定於編輯器的互動,而無需依賴聊天介面。
要直接使用語言模型,請在 VS Code 擴充套件中使用語言模型 API。您可以將這些 AI 功能整合到任何擴充套件功能中,例如程式碼操作、懸停提供程式、自定義檢視等等。
主要優勢:
- 將 AI 功能整合到現有擴充套件功能中或構建新功能
- 在擴充套件主機程序中執行允許訪問 VS Code 擴充套件 API
- 透過 Visual Studio Marketplace 輕鬆分發和部署
主要考慮事項:
- 跨不同體驗的重用需要模組化設計和實現
決定使用哪個選項
在為您的 VS Code 擴充套件選擇正確的 AI 擴充套件方法時,請考慮以下指南
-
在以下情況下選擇語言模型工具:
- 您想使用專業功能擴充套件 VS Code 中的聊天
- 您希望在代理模式下根據使用者意圖自動呼叫
- 您想訪問 VS Code API 以在 VS Code 中進行深度整合
- 您想透過 VS Code Marketplace 分發您的工具
-
在以下情況下選擇 MCP 工具:
- 您想使用專業功能擴充套件 VS Code 中的聊天
- 您希望在代理模式下根據使用者意圖自動呼叫
- 您不需要與 VS Code API 整合
- 您的工具需要在不同的環境(不僅僅是 VS Code)中工作
- 您的工具應該遠端或本地執行
-
在以下情況下選擇聊天參與者:
- 您想使用具有領域專業知識的專業助手擴充套件提問模式
- 您需要自定義整個互動流程和響應行為
- 您想訪問 VS Code API 以在 VS Code 中進行深度整合
- 您想透過 VS Code Marketplace 分發您的工具
-
在以下情況下選擇語言模型 API:
- 您想將 AI 功能整合到現有擴充套件功能中
- 您正在構建聊天介面之外的 UI 體驗
- 您需要對 AI 模型請求進行直接程式設計控制
後續步驟
選擇最符合您擴充套件目標的方案
示例專案
- 聊天示例:具有代理模式工具和聊天參與者的擴充套件
- 程式碼導師聊天參與者教程:構建一個專業聊天助手
- AI 驅動的程式碼註釋教程:使用語言模型 API 的分步指南
- MCP 擴充套件示例:註冊 MCP 工具的擴充套件