偵錯聊天互動
Visual Studio Code 提供工具,協助您了解將提示傳送給 AI 時發生的情況。使用這些工具來檢查代理程式如何探索提示檔案、叫用工具、發出語言模型請求以及產生回應。
VS Code 提供兩個互補的偵錯工具
- 代理程式偵錯記錄面板 (預覽) 會顯示聊天工作階段期間發生的一切事情的依時間順序事件記錄,包括工具呼叫、LLM 請求、提示檔案探索和錯誤。
- 聊天偵錯檢視 會顯示每個 LLM 請求和回應的原始詳細資料,包括完整的系統提示、使用者提示、內容和工具叫用酬載。
代理程式偵錯記錄面板
代理程式偵錯記錄面板目前為預覽版。
代理程式偵錯記錄面板是了解傳送提示時發生情況的主要工具。它會顯示聊天工作階段期間代理程式互動的依時間順序事件記錄,因此在偵錯自訂代理程式和協調的子代理程式工作流程時特別有用。
開啟代理程式偵錯記錄面板
-
啟用以下設定
- github.copilot.chat.agentDebugLog.enabled
-
在聊天檢視中選取省略符號 (...) 選單,然後選取顯示代理程式偵錯記錄。
-
從命令選擇區執行開發人員:開啟代理程式偵錯記錄。
您可以在代理程式偵錯面板中切換三種檢視
-
記錄:工作階段期間事件的依時間順序清單,具有篩選選項可專注於特定事件類型。
-
代理程式流程圖:可視覺化工作階段期間代理程式與子代理程式之間互動的流程圖。
-
摘要:關於工作階段的彙總統計資料,例如工具呼叫總數、權杖使用量、錯誤計數和總持續時間。
代理程式偵錯記錄面板目前僅適用於本機聊天工作階段。記錄資料不會持久保存,因此您只能檢視來自您目前 VS Code 工作階段的聊天工作階段記錄。若要儲存工作階段以供日後檢視,請將其匯出到檔案。
記錄檢視
記錄檢視會顯示聊天工作階段期間發生的事件的依時間順序清單。每個事件都包含時間戳記、事件類型和摘要資訊。您可以展開每個事件以查看更多詳細資料,例如 LLM 請求的完整系統提示,或工具呼叫的輸入和輸出。

您可以在平面清單和按子代理程式分組事件的樹狀檢視之間切換。使用篩選選項可專注於特定事件或事件類型。
當您開啟代理程式偵錯面板時,記錄檢視是預設檢視。您也可以從摘要檢視選取檢視記錄以切換到記錄檢視。
摘要檢視
摘要檢視會提供關於聊天工作階段的彙總統計資料,例如工具呼叫總數、權杖使用量、錯誤計數和總持續時間。

開啟摘要檢視
-
透過在聊天檢視中選取省略符號 (...) 選單,然後選取顯示代理程式偵錯記錄來開啟代理程式偵錯面板。
-
在面板頂部的導覽列中選取工作階段描述。
代理程式流程圖檢視
代理程式流程圖檢視會視覺化代理程式之間的事件序列和互動,讓您更容易理解複雜的協調作業。

您可以平移和縮放流程圖,並選取流程圖中的任何節點以查看該事件的詳細資料。
若要開啟流程圖檢視,請從摘要檢視選取代理程式流程圖。
-
透過在聊天檢視中選取省略符號 (...) 選單,然後選取顯示代理程式偵錯記錄來開啟代理程式偵錯面板。
-
在面板頂部的導覽列中選取工作階段描述。
-
從摘要檢視選取代理程式流程圖。
將偵錯事件附加到聊天
您可以將代理程式偵錯事件的快照附加到聊天對話,並向 AI 詢問有關目前工作階段的問題。這有助於了解權杖使用量、載入了哪些自訂項目、發生了哪些工具呼叫以及請求花費了多長時間。
將偵錯事件附加到聊天
-
開啟聊天工作階段的代理程式記錄檢視
-
選取代理程式偵錯面板右上角的星光圖示。這會開啟聊天檢視,並將偵錯事件快照作為內容附加。
或者,您可以使用 /troubleshoot 斜線命令直接詢問有關聊天工作階段的問題,而無需先開啟代理程式偵錯面板。例如,輸入 /troubleshoot list all paths you tried to load customizations 或 /troubleshoot how many tokens did you use in #session。
/troubleshoot 命令需要啟用 github.copilot.chat.agentDebugLog.enabled 設定。
匯出和匯入工作階段
您可以將偵錯工作階段匯出為 Open Telemetry JSON (OTLP 格式) 檔案,以便與他人共用或離線分析。您也可以匯入先前匯出的檔案,以便在代理程式偵錯面板中檢視。
匯出工作階段
-
開啟代理程式偵錯記錄面板並導覽至您要匯出的工作階段。
-
選取面板右上角工具列中的匯出圖示 (下載)。
-
選擇儲存 JSON 檔案的位置。
如果未選取任何工作階段,VS Code 會顯示通知,指出沒有作用中的偵錯工作階段可供匯出。
匯入工作階段
-
選取代理程式偵錯記錄面板右上角工具列中的匯入圖示 (上傳)。
-
選取先前匯出的 JSON 檔案。
匯入的工作階段會在代理程式偵錯記錄面板中開啟,並顯示其概觀和計量,就像即時工作階段一樣。
匯入大於 50 MB 的檔案會顯示一個警告對話方塊,其中包含實際的檔案大小。如果您遇到此警告,請考慮修剪檔案或匯出較短的工作階段。
聊天偵錯檢視
聊天偵錯檢視會顯示每個 AI 請求和回應的原始詳細資料。當您需要檢查傳送給語言模型並從語言模型接收到的確切系統提示、使用者提示、內容或工具回應酬載時,請使用它。
開啟聊天偵錯檢視
開啟聊天偵錯檢視
- 在聊天檢視中選取溢位選單,然後選取顯示聊天偵錯檢視。
- 從命令選擇區執行開發人員:顯示聊天偵錯檢視命令。

讀取偵錯輸出
聊天偵錯檢視中的每個互動都包含可展開的區段
| 區段 | 顯示內容 | 要尋找什麼 |
|---|---|---|
| 系統提示 | 定義 AI 行為、能力和限制的指示。 | 驗證自訂指示或代理程式描述是否正確顯示。 |
| 使用者提示 | 您的提示傳送給模型的確切文字。 | 確認您的提示已如預期傳送,包括任何解析為實際內容的 #-提及。 |
| 內容脈絡 | 附加到請求的檔案、符號和其他內容項目。 | 檢查預期的檔案和內容是否出現。如果檔案遺失,則可能尚未編製索引,或者內容視窗可能已滿。 |
| 回應 | 模型的完整回應文字,包括原因。 | 檢閱原始回應以了解模型如何解釋您的請求。 |
| 工具回應 | 請求期間叫用的工具的輸入和輸出。 | 驗證工具是否收到正確的輸入並傳回預期的輸出。適用於偵錯 MCP 伺服器。 |
您可以展開每個區段以查看完整詳細資料。當使用代理程式時,這特別有用,因為在單一請求中可能會叫用多個工具。
常見疑難排解情境
AI 忽略您的工作區檔案
如果 AI 回應的是通用資訊而不是參考您的程式碼庫
- 開啟代理程式記錄並檢查探索事件,以驗證工作區檔案是否已編製索引。
- 開啟聊天偵錯檢視並檢查內容區段,以驗證工作區檔案是否出現在內容中。如果沒有,請檢查工作區索引是否啟用。
- 嘗試新增明確的
#-提及 (例如#file或#codebase) 以確保包含正確的檔案。深入了解管理內容。
未叫用 MCP 工具
如果 AI 未呼叫預期的工具
- 開啟代理程式記錄並檢查工具呼叫篩選器,以查看工具是否已叫用或跳過。
- 開啟聊天偵錯檢視並檢查系統提示區段,以驗證工具是否列在可用工具中。
- 如果工具遺失,請驗證 MCP 伺服器是否正在執行且已正確設定。
- 嘗試在您的提示中明確提及具有
#tool-name的工具。
AI 回應不完整或被截斷
如果回應顯示為截斷
- 檢查代理程式記錄中的LLM 請求事件以檢閱權杖使用量。
- 完整的內容視窗可能會導致模型截斷其回應。啟動新的聊天工作階段以重設內容。
未套用提示檔案
如果自訂指示或提示檔案似乎未生效
- 開啟代理程式記錄並檢查探索事件,以查看檔案是否已載入、跳過或驗證失敗。
- 驗證檔案位置和
applyTo模式是否與目前內容相符。 - 檢查聊天自訂診斷以取得錯誤詳細資料。