Concept internals
輸入中指示器
執行進行期間,系統會將輸入指示傳送至聊天頻道。使用 agents.defaults.typingMode 控制輸入狀態在何時開始,並使用 typingIntervalSeconds 控制其重新整理頻率(保持連線的週期,預設為 6 秒)。
預設值
當 agents.defaults.typingMode 未設定時:
- 直接聊天:模型迴圈開始後立即顯示輸入狀態。
- 含提及的群組聊天:立即顯示輸入狀態。
- 不含提及的群組聊天:獲准執行出現使用者可見的活動時,才顯示輸入狀態,例如執行工具框架或產生訊息文字。
- 心跳偵測執行:若解析出的心跳偵測目標是支援輸入狀態的聊天,且未停用輸入狀態,則在心跳偵測執行開始時顯示輸入狀態。
模式
將 agents.defaults.typingMode 設為以下其中一項:
never- 永遠不顯示輸入指示。instant- 模型迴圈一開始就顯示輸入狀態,即使該次執行最後只傳回靜默回覆權杖。thinking- 在出現第一個推理增量時,或輪次獲接受後開始執行工具框架時,顯示輸入狀態。message- 在出現第一個使用者可見的回覆活動時顯示輸入狀態,例如執行工具框架或出現非靜默的文字增量。NO_REPLY等靜默回覆權杖不算文字活動。
依「觸發時間由早至晚」排序:never -> message/thinking -> instant。
設定
設定代理程式層級的預設值:
{ agents: { defaults: { typingMode: "thinking", typingIntervalSeconds: 6, }, },}覆寫單一代理程式的政策:
{ agents: { entries: { support: { typingMode: "message", }, }, },}注意事項
message模式不會因靜默回覆權杖而開始顯示輸入狀態,但在任何助理文字可用之前,執行中的活動仍可能觸發輸入狀態。thinking仍會回應串流推理(reasoningLevel: "stream"),也可在推理增量抵達前,因執行中的活動而開始顯示輸入狀態。- 心跳偵測輸入狀態是針對解析後傳遞目標的存活訊號。它會在心跳偵測執行開始時啟動,而不會依循
message或thinking的串流時序。設定typingMode: "never"可將其停用。 - 當心跳偵測目標為
"none"、無法解析目標、已停用該心跳偵測的聊天傳遞,或頻道不支援輸入狀態時,心跳偵測不會顯示輸入狀態。 agents.defaults.typingIntervalSeconds控制每個代理程式的重新整理週期,而非開始時間。預設值:6 秒。
相關內容
Was this useful?