Agentforce達成可靠的代理行為指南:6層確定性的框架

顯示Agentforce建構組塊的流程圖。
顯示增加代理行為的控制層級示意圖。
顯示Agentforce推理引擎的整體決策樹流程圖。

活動 步驟 說明
啟動代理 1 已啟動代理。
分類子代理 2-3 引擎會分析客戶訊息,並根據子代理名稱與分類說明,將其對應至最合適的子代理。

Agent Script會將Agent Router (先前稱為Topic Selector)轉變為可完全設定的元素,消除機率式LLM路由的「黑盒子」問題。透過將導引視為可程式化的子代理,您可以取得完整的透明度與控制力,讓代理的決策邏輯精準對齊您的特定商業需求與架構標準。
執行子代理的Agent Script並建立指示/解析指示與可用動作 4-5 依照指示執行指令碼動作。這些是在選定子代理後、系統進一步評估非確定性指示或其餘對話情境之前,應先執行的動作。

提示與對話歷史送往LLM
6 所有指令碼動作執行完畢後,系統會將包含子代理範圍、指示、可用動作以及對話紀錄的提示傳送給LLM。
備註:指令在第2層代理式控制中說明。
LLM決定回應或執行動作 7 運用所有這些資訊,引擎會判斷是否要:
• 執行動作以擷取或更新資訊
• 向客戶詢問更多細節
• 直接以答案回應
如果LLM決定回應,則會執行步驟12。
執行動作 8-9 如果需要採取行動,引擎會執行該動作並收集結果。
執行動作後邏輯 10 僅適用於Agent Script:使用Agent Script時,動作可以以確定性的方式轉移至其他動作或子代理。這些轉移一律會在動作執行後執行。
回傳動作輸出 + 動作迴圈 11 引擎會評估新資訊,並再次決定下一步要做什麼,例如再執行另一個動作、詢問更多資訊,或是回應。
立基檢查 - LLM回應客戶 12 在傳送最終回應之前,引擎會檢查該回應是否:
•根據來自動作或指示的正確資訊
•遵循子代理指示中提供的準則
•維持在子代理範圍所設定的界線內
注意:可透過Agent Script加入格式化最終答案的步驟。
接著會將具備明確依據的回應傳送給客戶。
顯示從代理對話到計劃的主題分類流程圖。
顯示從代理對話到計劃的動作分類流程圖。
顯示從代理對話到計劃流程的動作分類循環示意圖。
顯示從代理對話到計劃流程的推理引擎執行示意圖。
Salesforce的使用者介面顯示代理推理內的計劃追蹤。
顯示平台與Data 360之間的RAG代理流程圖。

前後關聯變數 自訂變數
可以由使用者實例化 X
可以是動作輸入
可以是動作輸出 X
可以透過動作更新 X
可用於動作與子代理的篩選條件中
顯示疑難排解的擷取、設定和使用階段流程圖。
顯示代理使用篩選器進行疑難排解或提供解決方案的流程圖。
顯示行銷歷程的流程圖。
顯示增加代理行為的控制層級示意圖。


推理:
  指示:->
    推理前: 
       #確定性:這會在進入子代理時自動執行。
       #LLM在這裡沒有選擇權。它只會接收輸出。
   指示
       #現在,LLM會在結果已納入情境的情況下收到提示
      |您正在與客戶交談。他們的VIP狀態是{!@variables.is_vip}。
       #任何後續指示(一般推理)接在後面
      代理進行推理所需的任何指示。


推理:
  指令:->
     if @variables.is_vip == true:
        # 對VIP以確定性方式跳過信用檢查
        run @actions.apply_auto_approval
        | 告知客戶,因為VIP身分,他們的貸款已自動核准。
    else:
        # 對其他所有人強制進行信用檢查
        run @actions.initiate_credit_check
        | 告知客戶我們正在檢查他們的信用分數。


 if @variables.stock_level == 0:
        #立即轉交給「缺貨待補」子代理
        @utils.transition to @subagent.handle_backorder



   # 明確將動作輸出綁定到變數
    run @actions.check_inventory with sku=@variables.current_sku
    set @variables.stock_level = @outputs.quantity_available



推理:
  指令:->
    run @actions.get_incident_status with zip=@user.zip
    set @variables.is_outage = @outputs.active_incident
    | 如果{!@variables.is_outage},就立即確認並回應該起特定事件。


 if @variables.credit_score < 600:
   # 代理在機制上被遮蔽,無法看到「調高信用額度」指令。
   # 它只會看到透過RAG擷取到的「債務諮詢」指令
   | 只專注於說明信用修復資源。Insert $Debt_Counseling_Retriever.results
 else:
   | 您已獲授權可提供最高5000美元的額度調升。


 if @variables.safety_check_complete == false:
   #防止使用者結束子代理
   |回應使用者的附帶說明,接著轉回必要欄位:
{!@variables.missing_field}。
   @utils.stay_in_subagent




# LLM無法把這段內容摘要或「改寫」。它被強制必須輸出這段內容。
| 「免責聲明:我是AI智慧代理。我無法提供財務建議。」

摘要表:架構師速查表

功能 第1-5層(引導式自主) 第6層(代理腳本)
主要驅動者 機率式引擎(由LLM決定) 確定性圖(由程式碼決定)
邏輯來源 自然語言提示 if/else邏輯、狀態管理、轉換邏輯
動作執行 「代理,這裡有個工具。想用就用。」 「代理,執行這個工具。現在就執行。」
脈絡記憶 透過LLM脈絡視窗隱含保留(除非使用第4層) 透過整段腳本中使用的可變變數明確保留
使用案例範例 知識搜尋、購物、創意寫作 身分驗證、付款、合規、診斷
建置投入 低(主要是提示) 中/高(腳本/邏輯)
風險承受度 低(零信任)

AI確定性常見問題

AI中的六個確定性層級分別為:無指示子代理與動作選擇;代理指示;資料依據;代理變數;使用流程、Apex與API的確定性動作;以及透過Agent Script實現的代理式控制。

瞭解AI確定性對於打造可靠的代理而言甚為重要,這些代理可準確且一致執行關鍵業務功能,進而在創意流動性和企業控制之間取得平衡。

在AI領域,「確定性」是指系統在相同輸入和條件下,產生相同輸出的能力,對可靠代理行為施加僵化性和必要紀律。

AI系統中的非確定性,主要是使用大型語言模型(LLM)所致,這種模型本質上為非確定性,讓代理具有靈活性和適應性。

確定性層級會逐步強化AI代理的確定性,進而影響到其自主性,代理自主性會隨著層級提升而降低,但變得更可靠且符合業務流程。

確定性較低的AI系統,在可靠性和符合業務要求上面臨到挑戰,因為系統固有的非確定性,可能導致無從預測的行為。

企業運用分層方法管理不等程度確定性的AI系統,這些方法包括構思設計、清楚指示、資料接地、透過變數管理狀態,以及使用流程、Apex和API將確定性流程自動化。