AI News HubLIVE
站內改寫2 分鐘閱讀

Patter SDK構建餐廳預訂電話代理指南:動態變數、護欄、延遲儀表盤和評估檢查

本教程詳細介紹瞭如何使用Patter SDK構建一個用於餐廳預訂的語音代理工作流。內容涵蓋動態呼叫變數的定義、可呼叫工具的註冊(如查詢空位、預訂、營業時間和轉接人工)、輸出護欄的疊加、語音轉文字和文字轉語音的模擬、指令碼化通話流程的執行、延遲和成本儀表盤的追蹤,以及透過確定性評估套件驗證代理。最後,展示瞭如何將相同的邏輯對映到使用Twilio和OpenAI Realtime的實際部署中。

來源MarkTechPost作者: Sana Hassan

在本教程中,我們透過構建一個完整的語音代理工作流來深入探索Patter SDK,該工作流模擬了AI電話助手在真實對話中的表現。我們以餐廳預訂為用例,從定義動態呼叫變數開始,逐步註冊可呼叫工具、應用輸出護欄、模擬語音轉文字(STT)和文字轉語音(TTS)行為,並在無需即時電話憑證的情況下執行完整的指令碼化通話流程。此外,我們還檢查已安裝的Patter API(如果可用),建立確定性的代理大腦,追蹤模擬的延遲和成本指標,並透過迴歸式評估驗證系統。最終,我們理解Patter SDK如何將代理邏輯、工具使用、安全檢查、通話模擬和實際部署模式整合到一個結構化的語音代理管道中。

首先,我們設定Patter SDK、工具和餐廳後端。匯入所需庫後,可選安裝Patter SDK,並在可用時檢查已安裝的API。定義動態呼叫變數(如客戶姓名、忠誠度等級、餐廳名稱),建立小型工具登錄檔,並準備記憶體中的餐廳後端,用於模擬空位查詢、預訂、營業時間和轉接人工。註冊的核心工具包括:check_availability(檢查空位)、book_table(預訂)、get_hours(獲取營業時間)、lookup_reservation(查詢預訂)和transfer_to_human(轉接人工)。這些工具使模擬電話代理能夠執行基本的餐廳預訂任務。

接下來,我們構建輸出護欄層和模擬語音層。輸出護欄確保電話助手安全、簡潔且適合預訂場景:它剔除敏感資訊(如郵箱、電話號碼)、隱藏內部客戶ID、清理不當語言、阻止離題請求,並保持回覆簡短以提供更好的電話體驗。我們定義了五個護欄函式:gr_scope(限制話題)、gr_hide_internal_ids(隱藏內部ID)、gr_redact_pii(編輯PII)、gr_profanity(過濾髒話)和gr_concise(保持簡潔)。然後,模擬STT和TTS行為,定義系統提示(包含動態變數),並新增輕量級解析函式(parse_party、parse_date、parse_slot、parse_name、parse_code),用於從使用者輸入中提取關鍵資訊。

構建代理大腦——agent_brain函式是該工作流的核心。它處理歷史記錄、使用者文本和上下文,根據使用者輸入決定呼叫哪個工具或直接回復。例如,如果使用者要求轉接人工,則呼叫transfer_to_human;如果需要查詢空位,則呼叫check_availability。預訂流程逐步收集資訊:人數、日期、時間段、姓名,然後檢查可用性並最終完成預訂。我們還實現了fold_tool_result函式,將工具返回的原始結果轉換為自然的語音回覆。

最後,透過確定性評估套件驗證代理。我們編寫多個測試用例,涵蓋預訂、查詢空位、營業時間、查詢預訂和轉接人工等場景,確保代理在不同輸入下行為一致且正確。評估套件使用重置後的後端狀態,保證每次執行結果可重複。然後,討論如何將相同的代理邏輯對映到使用Twilio和OpenAI Realtime的實際部署中,實現真實的語音通訊。整個教程展示了Patter SDK如何簡化AI電話代理的開發流程,從模擬到生產,提供了一套完整的工具鏈。