工作清單

01VoiceAgent理论基础-项目概述及环境准备

逐字稿文字預覽

大家好,今天我們給大家講解這個Voice Agent的一個總體架構啊,以及它的這個完整流程。
我們首先了解一下什麼是Voice Agent。
你看這個Voice,Voice就是語音的意思,就是語音智能體。
也就是說不僅有語音,還有智能體。
那最簡單的比如說你用豆包的語音功能,或者用LGBT的語音功能,你跟它對話。
那這個就是最基本的一個語音智能體。
它裡面有哪些關鍵技術呢?
有WebRTC,有STT,有TTS,有LLM,這幾個關鍵的技術。
這幾個名詞呢,希望大家都去查一下。
那首先,WebRTC解決什麼?
WebRTC解決就是說,音視頻的問題。
你比如說你的聲音怎麼採集的,你聲音怎麼播放的,聲音怎麼傳輸的,這個是由WebRTC來解決的。
那麼STT是什麼?
STT就是
語音轉文字。
也就是說
你語音採集了以後,需要把它轉成文字,這個文字再交給大語音模型。
也就是LM
決定說什麼?
也就是說,LM是把文字拿到以後,它會加工,會思考,會返回。
返回完以後,
這不有文字了嗎?
文字在
第一個,它首先會發到
這個端上,也就是比如,一般我們叫前端,比如網頁裡面,或者手機裡面。
然後不經意發,有可能要播語音,這個播語音就要把這個文字再轉成語音,這個過程叫TTS。
所以說,這裡面有幾個關鍵概念,叫Web RC
STD
TTS
LM
對吧
好,我們來看一下它總體架構
首先是
前端,前端呢,它有一個
比如說可能是瀏覽器
有可能是App
甚至是一個硬件啊,對吧
好,那麼麥克風採集
那音頻
同時音頻可能會播放,然後屏幕上可能有文字
大家用這個
用豆包的時候,你在跟它對話的時候,它不經常有這個
會有文字顯示嗎?
另外一個它會播放語音
那麼音頻會上行
到後端
後端呢
它這裡面呢,它會比如說,它一般是Web RC
處理啊,處理完
以後呢,它會
把這個聲音提取出來
然後把這個聲音呢,丟給
STT
STT呢
呃
有幾種,一種是你本地的這種服務,對吧
你可能從歐拉馬來接入
第二種呢,有可能比如說你是阿里的
對吧
也有可能是騰訊的
也有可能是火山引擎的
也可能是MiniMax
是吧
STT,MiniMax
目前
不一定有
然後你可能Deepgram
有可能是ElevenLab
這裡面就有中英文
這裡面我們主要以中英文給大家解釋就行了
那麼由它轉動文字又返回給
那麼由它轉動文字又返回給這個後端,後端這塊它又會調這個LLM,也就是調的大語言模型
這裡面選擇就多了,你比如說你可以用Deepseek
可以用這個
MiniMax,可以用這個Kimi
可以用這個OpenAI,對吧
你可以用
這個很多很多模型啊,都可以用
那
丟給大元模型,大元模型會
對你的話進行加工
加工完以後
他比如說你今天問了一個
舉個例子,什麼是人工智能對吧
他會肯定回答
一堆這個內容嘛,然後
他返回完
返回他以後,然後後端呢
又
緊接著
調這個TTS模型,這個TTS模型也有
比如火山引擎呢,阿里騰訊呢
對吧,Deepgram,ElevenLav,他都會把
文字再轉成語音
轉成語音呢,他會有一個
實時的流,這個實時流呢,再通過WebRTC技術再傳給前端
前端把聲音播放出來
同時文字部分呢,他也會到前端
那這時候呢
這時候呢
就完成了整個的
完成了整個的這個
voice agent的一個流程
那麼為什麼我們又稱為agent呢
就是
不僅是voice,為什麼agent呢
原因就是因為這裡面有R,就是大語言模型的介入
它是一個智能的
所以說我們就要
voice agent
你既然是agent,那麼
他可能也可以做RE,也就是檢索增加生成
比如說
我經常問的問題
那麼我們可以把這個問題
問的問題以及回答的過程把它傳到相量信息庫裡面
那你問題問多了以後,那麼以後他在
你再問他問題的,他就更懂你了,對吧
更懂你了,知道你以前問過,他會知道怎麼再去回答你
這個就是
接入這個大語言模型的好處
這個你還在這部分進行加強
就這部分加強
好
那下面這邊有解釋
好,我們看到總體的架構,我們再看一下這個
還有完整流程,那這個裡面當然就更詳細了
比如說瀏覽器這邊設計到麥克風採集
對吧
重採樣
分幷
這個技術名稱我們不需要長那麼細
暫時
然後二進制上行
對吧
然後
這邊還會分發
那麼這邊有VAD檢測,這個VAD是幹什麼
你跟這個
AI
對話的時候你不經常可能會
打斷他嗎?
比如說
他正在回答你某一個
某一段話的時候你突然間打斷他了
那如果是有打斷的話
對吧
有打斷的話
那麼
這時候會丟給LM
對吧
會切這個句子
然後又貼貼的再返回
對吧
如果不打斷的話
不打的話他就
他就整個就是
朝下去走
這個意思
整個朝下去走
直接從這
TTS
這走
然後就返回
再返回到前端
然後進行播放
播放這個聲音
中間發生的過程就是
STT code端
你要走
STT的服務
對吧
你比如說
阿里的呀
Deepgram呀
之類的
那麼
這個如果是LLM的話
你可能接入OpenAI
也可能接入Deepseek
有可能接入Milimax
Kimi
都可以
好
那麼
那麼TTS這塊
通過SSE的流
來進行播放
那麼SSE什麼呢
這個是AI裡面的一個技術
就是一個流式的
返回的
一個
處理技術
就是文字的一個流式
同時還有音頻的
最後到
網頁這段它有音頻的一個流式
所以這個是更詳細的一個完整流程
這裡面涉及到好些技術
好技術
大家這些技術
我們會一步步拆解
給大家講的
那麼
我們對於一個
總體的架構以及完整流程
有所了解以後
你才能搞懂
我們後續要給大家講的
比如說
從Web端到Server端的整個的一個
Voice Agent的一個整個流程
那麼我們這個例子
寫的不是很大
但是通過這個例子
你
能對Voice Agent有一個
完整的流程的一個理解
並且
它是正式辦理能跑起來的一個項目
我們首先是把理論先搞清楚
這裡面
我們可以看到
這裡面我們涉及的各種服務
比如
STT
IM
這些
大家都可以去採用不同的
Provider
有著供應商的服務
不一定說是非要某一間的
對吧
!
比如說如果說我們英文的我建議大家用Deepgram
Eleven Lab
如果說是中文的建議大家用
阿里的、騰訊的、火山引擎的,像這些
包括MiniMax,像這些
這樣的話是比較好的
因為
肯定是
各自的模型
它對中英文支持的出來的效果是不一樣的
當然同時它還支持方言的
比如說粵語
對吧
等等
像這些方言的四川話
普通話
像方言普通話都支持的
所以說這個
你要不同的去
另外還有一個
VAD打斷
VED打斷的
不同的
比如STT
就是
它叫
實際上叫
ASR技術
不同的
廠商提供出來的
質量也是不一樣的
這個都去接
然後我們這裡面當然就接了
有阿里的
有Deepgram
這些
已經有兩個比較好用的給大家接進來了
告訴大家怎麼去接的
好
那麼關於它的這個總體的架構儀完整流程的我們就先講到這裡謝謝大家觀看

來源:transcript.txt

本次執行流程與問題處理

  1. 下達指令

    指令:videonote https://b23.tv/dRCewyS --language zh --auto-source-subtitles

    來源:https://b23.tv/dRCewyS

    辨識語言:zh | 參數:--language zh --auto-source-subtitles

  2. 預期流程

    依指令產生的處理順序:

    1. 自動字幕優先,Whisper 作為備援
    2. 來源選擇與品質檢查
    3. 文字校正與句子單元
    4. 筆記與發布
    5. 公開網頁發布
  3. 1. 下載與語音辨識

    工具:videonote-transcribe-url(主辨識管線:下載、Whisper 辨識與選稿)

    處理:下載音訊、以 Whisper 辨識並選出最佳逐字稿

    產出:yt_dlp_meta.json(影片元資料)、audio_16k_mono.wav(16kHz 單聲道音訊)、transcript.whisper.json(Whisper 辨識結果)、transcript.json(正式逐字稿)、transcript_selection_report.json(來源選擇報告)

    耗時:28.1 秒

    關係:依序執行

    結果:完成

  4. 2. 全文快速校讀

    工具:videonote_rapid_transcript_review.py

    處理:先速讀完整逐字稿,再修正高可信突兀詞句並列出待確認項目

    產出:rapid_transcript_review_report.json(產出檔案)

    耗時:37.9 秒

    關係:依序執行

    結果:完成

  5. 3. 建立句子單元

    工具:videonote-build-sentence-units

    處理:將逐字稿切成帶時間軸的句子單元

    產出:sentence_units.json(句子單元)

    耗時:1.0 秒

    關係:依序執行

    結果:完成

  6. 4. 句子密度平衡

    工具:videonote_balance_sentence_units.py

    處理:平衡句子長度與密度

    產出:sentence_units.json(句子單元)

    耗時:1.0 秒

    關係:依序執行

    結果:完成

  7. 5. 時間軸稽核

    工具:videonote_timeline_audit.py

    處理:檢查時間軸與音訊對齊

    產出:timeline_audit_report.json(時間軸稽核)

    耗時:0.0 秒

    關係:依序執行

    結果:完成

  8. 6. 品質檢查

    工具:videonote_controlled_quality.py(檢查時間軸與品質)

    處理:檢查語言、時間軸與可讀性品質

    產出:controlled_quality_report.json(品質報告)、language_sanity_report.json(語言檢查)

    耗時:0.1 秒

    關係:依序執行

    結果:完成

  9. 7. 播放時間軸回填

    工具:videonote_rebase_display_timeline.py

    處理:將網頁播放時間軸回填為校正字幕時間

    產出:display_timeline_rebase_report.json(時間軸回填報告)

    耗時:0.1 秒

    關係:依序執行

    結果:完成

  10. 8. 逐字稿交叉檢查

    工具:videonote_cross_check_transcript.py

    處理:交叉檢查逐字稿與來源字幕

    產出:transcript_crosscheck_report.json(交叉檢查)

    耗時:0.1 秒

    關係:依序執行

    結果:完成

  11. 9. 來源句整理

    工具:videonote_prepare_source_entries.py

    處理:整理來源句子供時間軸與頁面使用

    產出:sentence_units.json(句子單元)

    耗時:0.2 秒

    關係:依序執行

    結果:完成

  12. 10. 生成筆記摘要

    工具:videonote-generate-note(生成筆記摘要)

    處理:生成筆記摘要與重點

    產出:note.md(筆記 Markdown)、note.html(筆記 HTML)

    耗時:79.5 秒

    關係:依序執行

    結果:完成

  13. 11. 建立筆記頁面

    工具:videonote-render-html(產生筆記 HTML)

    處理:產生可閱讀的筆記 HTML 頁面

    產出:note.html(筆記 HTML)

    耗時:0.6 秒

    關係:依序執行

    結果:完成

  14. 12. 發布公開頁面

    工具:videonote-publish(發布公開頁面)

    處理:發布到公開網站與每日列表

    產出:公開筆記網址、result.json(管線結果)

    耗時:0.7 秒

    關係:依序執行

    結果:完成

手動來源字幕

自動來源字幕

Whisper 字幕

Qwen 字幕

Parakeet 字幕

MOSS 字幕

聲學時間證據(PyAnnote / WhisperX)

校正前後逐字稿

目前待解決問題與初步改善方向

進一步精進字幕與筆記
使用 Workbench 上傳校正字幕、中文參考稿或回饋 SRT,重新產生雙語與學習單元。
開啟 Workbench