![Building an AI Sales Agent: From Voice to Pitch.](https://img.php.cn/upload/article/000/000/000/173719519454660.jpg)
項目概述
EnCode 2025 挑戰賽中,我的目標是創建一個能夠進行高品質、自然流暢語音互動的 AI 銷售代理,並力求實現超低延遲,如同與真人對話般的體驗。最終,我建立了一個能夠完整處理線上輔導中心銷售對話的系統,涵蓋從問候潛在客戶到了解需求並推薦相關課程的全過程,並以積極友好的、類人化的語音進行交流。想像一下,一個不知疲倦、永遠保持最佳狀態的銷售人員!
技術堆疊
-
語音處理: Whisper Large V3 Turbo (確保清晰的語音辨識)
-
核心邏輯: LLaMA 3.3 70B (實現智慧對話)
-
語音輸出: F5 TTS (產生自然流暢的語音回覆)
-
資料庫: Pinecone 向量資料庫 (用於上下文管理和資訊檢索)
-
示範平台: Google Colab
系統運作原理
系統遵循三個主要步驟:
- 語音轉文字 (STT)
- 大型語言模型 (LLM)
- 文字轉語音 (TTS)
流程圖:使用者 -> STT -> LLM -> TTS -> 使用者
詳細流程:
- 客戶發言 -> Whisper 轉錄文本。
- 階段管理器 (使用正規表示式) 追蹤對話階段。
- Pinecone 從資料庫中擷取相關資料。
- LLaMA 3.3 70B 建構完美的回應。
- F5 TTS 將文字轉換為自然語音。
主要功能
-
智慧語音選擇: 提供 6 種不同的 AI 語音 (2 男 4 女)
-
上下文感知回覆: 基於向量相似性搜尋技術
-
結構化對話流程: 由專用的階段管理器控制
當前限制
-
演示環境: 基於 Google Colab 運行。
-
記憶體限制: 8k token 的上下文視窗限制。
-
計算資源消耗: 資源佔用量較大。
-
API 依賴: 核心功能依賴多個 API。
-
延遲較高: 存在一定的延遲問題。
經驗總結
技術方面:
-
向量資料庫的應用: 使用 Pinecone 向量資料庫讓我體會到在上下文視窗有限的情況下,向量資料庫如何改變遊戲規則。毫秒級的相似性搜尋功能,能夠有效處理對話歷史和訓練資料,非常強大。
-
階段管理的重要性: 透過明確對話階段,可以輕鬆地整合與該階段相關的範例,例如如何進行推銷、應該提出哪些問題等等。
-
Web 整合: 使用 fastapi 有效地進行前端和後端資料互動至關重要。透過 Webhooks,我們能夠在只初始化一次 AI 通話的情況下,在整個對話過程中進行資料交換,並保持連線。
系統設計方面:
-
分塊處理的重要性: 將音訊分成 5 秒長的片段進行處理,而不是等待完整的語句,顯著改善了使用者體驗,並縮短了處理時間。這需要在準確性和速度之間找到最佳平衡點。
-
模組化架構的優勢: 將系統分解成獨立的服務 (STT、LLM、TTS),大大簡化了開發和調試過程。當出現問題時,可以快速定位需要修復的部分。
實際限制方面:
-
API 成本: 管理多個 API 呼叫 (Whisper、LLAMA) 讓我了解到最佳化 API 使用的重要性。在保證速度的同時,盡量減少 API 呼叫次數是一項很大的挑戰。
-
降低延遲: 當不斷從網路上取得和處理資料時,降低延遲非常困難。未來,我將嘗試盡量減少從網路上傳輸或下載資料的次數。
意外挑戰方面:
-
提示詞工程: 提示詞工程至關重要,它決定了模型是否能夠像人類一樣連貫地表達,還是會重複相同的句子。
-
上下文視窗限制: 8k token 的限制迫使我必須巧妙地管理上下文。不是儲存所有信息,而是從向量資料庫中獲取相關的片段,這讓我能夠為 LLM 設計一個包含所有必要資訊的結構。
未來計畫
- 使用多執行緒技術降低延遲。
- 新增多語言支援。
- 增加更多類型的機器人,例如“線索機器人”,在初步線索之後聯繫客戶促成交易。
體驗項目
https://www.php.cn/link/55e2c9d06a7261846e96b8bb2d4e1fe5
GitHub ---
歡迎在留言區提出您寶貴的建議!
以上是建構人工智慧銷售代理:從語音到推銷。的詳細內容。更多資訊請關注PHP中文網其他相關文章!