
AI 代理的強大程度取決於其可存取的資料。雖然大型語言模型LLMs) 會從訓練資料產生回應,但除非與 API 整合,否則無法擷取即時股票價格、處理付款或存取 CRM 詳細資料。
API 可讓 AI 代理存取即時資料、執行邏輯和觸發動作。要充分利用這些 API,代理需要自訂程式碼。
Botpress Studio中的「執行代碼」卡可讓您在機器人工作流程中編寫和執行 JavaScript - 無縫處理 API 呼叫、資料處理和機器人行為自訂。
什麼是 Execute Code Card?
Botpress 中的 Execute Code Card 賦予開發人員在機器人流程中執行自訂 JavaScript 的能力。它可以實現以下功能:
- 自訂邏輯執行:您可以標準動作未涵蓋的方式執行複雜的計算或轉換資料。
- 動態互動:根據使用者資料或即時計算調整回應。
- 資料整合:無縫連接第三方服務以取得或傳送資料。
- 狀態管理:存取並修改機器人的狀態,以維持情境並個人化互動。
- 錯誤處理:實施自訂錯誤管理以確保穩健運作。
Execute Code Card 具備人工智能產生的程式碼建議。輸入提示,例如取得 API 資料,系統就會立即產生 JavaScript。然後,您可以檢閱、編輯並依需要精進,加快開發速度。
為什麼 AI 代理需要外部 API?
AI 代理的作用僅限於其存取的資料和服務。雖然它們可以處理輸入並產生回應,但卻缺乏即時知識、交易能力,以及沒有外部 API 的深度整合。
無論您是要整合即時資料、自動化工作流程或強化安全性,API 都能讓您的機器人更智慧、更靈活、更整合。
使用 Execute Code Card 的 5 種方式
Botpress Studio中的 Execute Code Card 簡化了 AI 代理的操作。將它新增至您的工作流程非常簡單,請遵循此快速教學:
一旦新增,以下是在您的 Agentic 工作流程中利用它的主要方式。
1.動態 API 呼叫
Execute Card 可讓您根據使用者意圖、機器人情境或之前的對話,動態修改請求,而非使用靜態 API 呼叫。
範例:根據使用者偏好擷取自訂資料。
提示:旅行聊天機器人需要根據使用者的目的地、旅行日期和預算擷取飯店價格。
.webp)
注意: Execute Code Card 可以從自然語言產生程式碼。但是,請務必驗證 變數 使用的變數。
2.LLM 回應的後處理
雖然Botpress 提供內建的 AI 動作,但有時您需要在顯示回應給使用者之前先進行微調 - 不論是格式化輸出、過濾特定字詞,或是更明確的資料結構。
範例:將非結構化的LLM 回應重寫為定義的表格/格式。
提示:AI 會從 API 取得餐廳推薦,我希望您在顯示前將它們格式化為簡潔的表格。
.webp)
3.速率限制和條件執行
某些 API (包括數位錢包) 有使用率限制。使用 Execute Code Card,您可以透過強制執行速率限制、設定回退,以及根據 API 可用性新增條件邏輯來控制使用者互動。
範例:在呼叫 API 前檢查 API 使用情況
Prompt: Check API quota from https://api.monitoring.com/usage?apikey=${workflow.userApiKey} before making a request. If fewer than 5 requests remain, return an error; otherwise, proceed. Ensure proper error handling in case of failures.
.webp)
4.處理權限
如果您的機器人需要在允許存取某些功能前驗證使用者,卡片允許自訂驗證流,超越Botpress的預設選項。
範例:在提供 AI 回應之前檢查使用者訂閱狀態
Prompt: Check a user's subscription via https://billing.example.com/user/{userId}. If on a free plan, prompt an upgrade; otherwise, allow access. Handle errors.
.webp)
5.多步 API 連鎖
有時候,機器人需要結合來自多個 API 的資料,然後才傳送最終回應。透過動態擷取、轉換和傳輸資料,卡片可實現複雜的多步驟工作流程。
實例:擷取天氣 + 餐廳預約,推薦最佳離開時間
提示:使用 workflow.userApiKey 擷取 workflow.city 的天氣和交通資料。根據條件,傳回最佳行車時間。處理失敗。
.webp)