# 影片筆記:01VoiceAgent理论基础-项目概述及环境准备 ## ⚠️ 全文快速校讀發現待確認修正 本筆記已完成可閱讀的逐字稿與時間跳轉;下列為待處理問題,建議播放原片確認。 - 待修正:⚠️ 全文快速校讀:已套用暫定修正,請確認(segment=2 已先套用暫定修正:那最簡單的比如說你用豆包的書,或者用LGBT的書,你跟它對話。那這個就是最基本的一個語音智能體。 → 那最簡單的比如說你用豆包的語音功能,或者用LGBT的語音功能,你跟它對話。那這個就是最基本的一個語音智能體。;segment=3 已先套用暫定修正:它裡面有哪些關鍵技術呢?有Web RC,有STD,有TTS,有IIM,這幾個關鍵的技術。這幾個名詞呢,希望大家都去查一下。 → 它裡面有哪些關鍵技術呢?有WebRTC,有STT,有TTS,有LLM,這幾個關鍵的技術。這幾個名詞呢,希望大家都去查一下。) - 待修正:逐字稿可先使用,但有待校正清單(segment=8 unnatural_sentence_boundary: 標點出現在句首或停在逗號位置,斷句可能不符合文法/口語;segment=9 unnatural_sentence_boundary: 標點出現在句首或停在逗號位置,斷句可能不符合文法/口語) ## 一句話總結 本影片介紹 Voice Agent(語音智能體)的基礎理論與整體架構,解析其由 WebRTC、STT、LLM、TTS 及 VAD 等核心技術組成的數據流向,並提供針對中英文及方言的服務商選擇建議。 ## 核心重點 * **Voice Agent 定義**:結合語音(Voice)與智能體(Agent)技術,具備語音對話能力及大語言模型(LLM)帶來的智能處理能力。 * **核心技術模組**: * **WebRTC**:負責音視頻的採集、播放與傳輸。 * **STT (Speech-to-Text)**:將語音轉為文字。 * **LLM (Large Language Model)**:進行文字加工、思考與生成回答。 * **TTS (Text-to-Speech)**:將文字轉為語音。 * **VAD (Voice Activity Detection)**:語音活動檢測,用於判斷是否打斷 AI 回答。 * **數據流向架構**: 1. **前端**:透過瀏覽器或 App 收集麥克風音頻,顯示文字並播放語音。 2. **後端處理**:音頻經 WebRTC 傳送至後端,由 STT 服務轉為文字。 3. **智能處理**:後端將文字傳給 LLM 進行思考與生成回答。 4. **語音生成**:LLM 返回的文字經 TTS 服務轉為語音。 5. **返回前端**:透過 WebRTC 或 SSE(服務端發送事件)流式技術,將音頻與文字傳回前端播放。 * **Agent 智能增強 (RAG)**:引入檢索增強生成概念,透過向量資料庫儲存歷史問答,使 AI 更了解用戶,實現更精準的回答。 * **服務商建議**: * **英文**:建議使用 Deepgram、Eleven Lab。 * **中文**:建議使用阿里、騰訊、火山引擎、MiniMax 等服務。 * 強調不同廠商對中英文及方言(如粵語、四川話)支援效果的差異。 ## 詳細大綱 ### 1. Voice Agent 概念解析 * **定義**:Voice(語音)與 Agent(智能體)的結合。 * **基本範例**:提及豆包、LGBT(逐字稿原文)的語音功能。 ### 2. 關鍵技術模組 * **WebRTC**:解決音視頻採集、播放與傳輸問題。 * **STT**:語音轉文字。 * **LLM**:文字加工、思考與返回。 * **TTS**:文字轉語音。 ### 3. 總體架構與數據流向 * **前端層**: * 包含瀏覽器、App、硬件。 * 負責麥克風採集、音頻播放、文字顯示。 * **後端層**: * 接收上行音頻。 * 呼叫 STT 服務(本地或雲端)。 * 呼叫 LLM 服務進行邏輯處理。 * 呼叫 TTS 服務生成語音。 * **傳輸協議**: * WebRTC:用於音視頻流傳輸。 * SSE:用於文字/音頻流式返回。 ### 4. 完整流程細節 * **前端採集**:進行重採樣/分幀,以二進制上行傳輸。 * **後端 VAD 檢測**: * 判斷是否打斷 AI 回答。 * **若打斷**:切句子傳給 LM(大語言模型),重新生成。 * **若不打斷**:直接繼續流程。 * **生成與返回**:LLM 生成文字 -> TTS 生成語音 -> 流式返回前端。 ### 5. Agent 智能增強 (RAG) * 利用大語言模型介入。 * 將問答過程存入向量資料庫。 * 透過歷史數據讓 AI 更懂用戶,優化後續回答。 ### 6. 服務商選擇與建議 * 支援不同語言與方言(粵語、四川話、普通話)。 * **英文推薦**:Deepgram, Eleven Lab。 * **中文推薦**:阿里, 騰訊, 火山引擎, MiniMax。 * 強調不同廠商對中英文及方言支援效果的差異。 ## 工具 / 模型 / 名詞整理 * **產品/應用**: * 豆包 * LGBT(逐字稿原文,疑為口誤) * **技術/協議**: * WebRTC * STT (Speech-to-Text) * TTS (Text-to-Speech) * LLM (Large Language Model) * VAD (Voice Activity Detection) * SSE (Server-Sent Events,逐字稿提及為流式返回技術) * ASR (Automatic Speech Recognition,逐字稿提及為 STT 的實際名稱) * RAG (Retrieval-Augmented Generation,逐字稿提及為 RE/檢索增加生成) * **模型/服務供應商**: * 歐拉馬(疑為口誤,指代某服務) * 阿里 * 騰訊 * 火山引擎 * MiniMax * Deepgram * ElevenLab / ElevenLav(逐字稿出現兩種拼寫) * Deepseek * Kimi * OpenAI ## 操作流程整理 1. **前端初始化**:用戶透過瀏覽器或 App 啟動 Voice Agent。 2. **音頻採集**:前端透過麥克風採集音頻,進行重採樣與分幀處理。 3. **音頻傳輸**:透過 WebRTC 協議,將二進制音頻數據上行傳輸至後端。 4. **語音轉文字 (STT)**:後端接收音頻,呼叫 STT 服務將其轉為文字。 5. **語音活動檢測 (VAD)**: * 檢測用戶是否停止說話或打斷 AI。 * 若檢測到打斷,切分句子傳給 LLM 重新生成。 * 若未打斷,繼續當前流程。 6. **智能處理 (LLM)**:後端將文字傳給 LLM,進行邏輯思考與回答生成。 7. **文字轉語音 (TTS)**:將 LLM 生成的文字傳給 TTS 服務,生成語音數據。 8. **流式返回**: * 透過 SSE 或 WebRTC,將生成的語音與對應文字流式傳回前端。 9. **前端呈現**:前端播放語音並顯示對應文字。 ## 值得注意的限制或風險 * **服務商支援度差異**:不同廠商對中英文及方言(如粵語、四川話)的支援效果存在差異,需根據需求選擇合適的服務商。 * **技術名詞辨識風險**:逐字稿中出現多個疑似口誤或聽寫錯誤的名稱(如 LGBT、歐拉馬、RE、VED 等),在實際開發或學習時需特別確認正確名稱,以免誤用技術或服務。 * **斷句與語法問題**:影片逐字稿在多個段落(Segment 8, 9, 13-16, 18, 21, 23-25, 87)存在標點出現在句首或停在逗號位置的現象,斷句可能不符合文法或口語習慣,影響對完整語意的理解。 ## 逐字稿辨識疑點 * **LGBT**:逐字稿中提及「用LGBT的語音功能」,疑為口誤或聽寫錯誤,通常語音助手產品名稱為其他名稱。 * **歐拉馬**:逐字稿提及「從歐拉馬來接入」STT服務,疑為特定服務商名稱的口誤或聽寫錯誤。 * **RE**:逐字稿提及「做RE,也就是檢索增加生成」,通常此技術稱為 RAG (Retrieval-Augmented Generation),RE 可能為口誤。 * **LM**:逐字稿中先提及 LLM,後簡稱為 LM,指代大語言模型。 * **ElevenLab / ElevenLav**:逐字稿中分別出現「ElevenLab」與「ElevenLav」,需查證正確拼寫。 * **VED**:逐字稿後段提及「VED打斷」,前文為 VAD,疑為口誤。 * **STT code端**:逐字稿提及「STT code端」,語意不明,疑為口誤。 * **大元模型**:逐字稿提及「丟給大元模型」,疑為「大語言模型」的口誤。 * **正式辦理**:逐字稿提及「正式辦理能跑起來的一個項目」,疑為「正式版本」或「正式版本能跑起來」的口誤。 ## 可延伸追問 * 如何具體實作 VAD 來判斷用戶是否打斷 AI 回答? * RAG 中的向量資料庫如何與 LLM 結合以優化歷史問答的檢索? * 不同 STT/TTS 服務商在延遲(Latency)與準確率上的具體數據比較為何? * WebRTC 與 SSE 在 Voice Agent 架構中各自的優劣勢與適用場景?