WEBVTT

00:00.760 --> 00:09.720
大家好,今天我們給大家講解這個Voice Agent的一個總體架構啊,以及它的這個完整流程。

00:10.500 --> 00:20.480
我們首先了解一下什麼是Voice Agent。你看這個Voice,Voice就是語音的意思,就是語音智能體。也就是說不僅有語音,還有智能體。

00:22.020 --> 00:29.960
那最簡單的比如說你用豆包的書,或者用LGBT的書,你跟它對話。那這個就是最基本的一個語音智能體。

00:30.760 --> 00:42.280
它裡面有哪些關鍵技術呢?有Web RC,有STD,有TTS,有IIM,這幾個關鍵的技術。這幾個名詞呢,希望大家都去查一下。

00:42.800 --> 00:55.600
那首先,Web RC解決什麼?Web RC解決就是說,音視頻的問題。你比如說你的聲音怎麼採集的,你聲音怎麼播放的,聲音怎麼傳輸的,這個是由Web RC來解決的。

00:56.120 --> 00:58.420
那麼STD是什麼?STD就是

00:58.920 --> 01:00.200
語音轉文字。

01:00.460 --> 01:01.240
也就是說

01:01.740 --> 01:07.120
你語音採集了以後,需要把它轉成文字,這個文字再交給大語音模型。

01:07.640 --> 01:08.660
也就是LM

01:09.160 --> 01:10.200
決定說什麼?

01:10.440 --> 01:15.560
也就是說,LM是把文字拿到以後,它會加工,會思考,會返回。

01:15.820 --> 01:16.840
返回完以後,

01:17.100 --> 01:18.120
這不有文字了嗎?

01:18.380 --> 01:19.400
文字在

01:19.660 --> 01:21.460
第一個,它首先會發到

01:22.220 --> 01:27.100
這個端上,也就是比如,一般我們叫前端,比如網頁裡面,或者手機裡面。

01:28.120 --> 01:34.000
然後不經意發,有可能要播語音,這個播語音就要把這個文字再轉成語音,這個過程叫TTS。

01:35.020 --> 01:37.580
所以說,這裡面有幾個關鍵概念,叫Web RC

01:37.840 --> 01:38.620
STD

01:38.860 --> 01:39.640
TTS

01:39.900 --> 01:40.660
LM

01:41.420 --> 01:41.680
對吧

01:42.200 --> 01:43.980
好,我們來看一下它總體架構

01:44.760 --> 01:45.260
首先是

01:46.040 --> 01:48.340
前端,前端呢,它有一個

01:48.860 --> 01:49.880
比如說可能是瀏覽器

01:49.880 --> 01:51.680
有可能是App

01:51.920 --> 01:53.200
甚至是一個硬件啊,對吧

01:53.460 --> 01:55.000
好,那麼麥克風採集

01:55.520 --> 01:56.280
那音頻

01:56.800 --> 01:59.860
同時音頻可能會播放,然後屏幕上可能有文字

02:00.120 --> 02:01.140
大家用這個

02:01.400 --> 02:03.960
用豆包的時候,你在跟它對話的時候,它不經常有這個

02:05.240 --> 02:07.800
會有文字顯示嗎?另外一個它會播放語音

02:08.820 --> 02:10.100
那麼音頻會上行

02:10.360 --> 02:11.120
到後端

02:11.640 --> 02:12.160
後端呢

02:12.660 --> 02:15.480
它這裡面呢,它會比如說,它一般是Web RC

02:16.500 --> 02:17.520
處理啊,處理完

02:18.040 --> 02:18.800
以後呢,它會

02:19.060 --> 02:20.840
把這個聲音提取出來

02:21.100 --> 02:22.640
然後把這個聲音呢,丟給

02:22.900 --> 02:23.660
STT

02:23.920 --> 02:24.680
STT呢

02:24.940 --> 02:25.460
呃

02:25.960 --> 02:28.520
有幾種,一種是你本地的這種服務,對吧

02:28.780 --> 02:30.060
你可能從歐拉馬來接入

02:30.320 --> 02:32.360
第二種呢,有可能比如說你是阿里的

02:32.620 --> 02:32.880
對吧

02:33.140 --> 02:34.420
也有可能是騰訊的

02:34.680 --> 02:36.720
也有可能是火山引擎的

02:36.980 --> 02:38.000
也可能是MiniMax

02:38.260 --> 02:38.520
是吧

02:39.540 --> 02:40.560
STT,MiniMax

02:40.820 --> 02:41.320
目前

02:41.840 --> 02:42.360
不一定有

02:42.600 --> 02:43.880
然後你可能Deepgram

02:44.140 --> 02:45.420
有可能是ElevenLab

02:45.680 --> 02:47.220
這裡面就有中英文

02:47.480 --> 02:49.780
這裡面我們主要以中英文給大家解釋就行了

02:50.300 --> 02:52.600
那麼由它轉動文字又返回給

02:52.860 --> 02:57.200
這個後端,後端這塊它又會掉的這個IMO,也就是掉的大元模型

02:57.460 --> 02:59.760
這裡面選擇就多了,你比如說你可以用Deepseek

03:00.020 --> 03:01.300
可以用這個

03:02.060 --> 03:04.120
MiniMax,可以用這個Kimi

03:04.380 --> 03:06.940
可以用這個OpenAI,對吧

03:07.440 --> 03:08.460
你可以用

03:08.720 --> 03:10.520
這個很多很多模型啊,都可以用

03:11.020 --> 03:11.540
那

03:11.800 --> 03:13.580
丟給大元模型,大元模型會

03:13.840 --> 03:15.620
對你的畫進行加工

03:15.880 --> 03:17.160
加工完以後

03:17.420 --> 03:18.960
他比如說你今天問了一個

03:19.220 --> 03:21.000
舉個例子,什麼是人工智能對吧

03:21.260 --> 03:22.280
他會肯定回答

03:23.060 --> 03:24.580
一堆這個內容嘛,然後

03:25.100 --> 03:25.860
他返回完

03:26.120 --> 03:27.920
返回他以後,然後後端呢

03:28.680 --> 03:28.940
又

03:29.200 --> 03:29.960
緊接著

03:30.220 --> 03:32.260
調這個TTS模型,這個TTS模型也有

03:32.520 --> 03:34.580
比如火山引擎呢,阿里騰訊呢

03:34.840 --> 03:37.660
對吧,Deepgram,ElevenLav,他都會把

03:38.160 --> 03:39.180
文字再轉成語音

03:39.440 --> 03:40.720
轉成語音呢,他會有一個

03:40.980 --> 03:44.560
實實的流,這個實實流呢,再通過WebSEE技術再傳給前端

03:44.820 --> 03:46.100
前端把聲音播放出來

03:46.620 --> 03:48.660
同時文字部分呢,他也會到前端

03:49.180 --> 03:49.940
那這時候呢

03:50.960 --> 03:51.480
這時候呢

03:51.740 --> 03:53.260
就完成了整個的

03:54.300 --> 03:55.320
完成了整個的這個

03:55.580 --> 03:56.600
voice agent的一個流程

03:57.360 --> 03:59.160
那麼為什麼我們又稱為agent呢

03:59.920 --> 04:00.180
就是

04:00.940 --> 04:02.220
不僅是voice,為什麼agent呢

04:02.220 --> 04:05.300
原因就是因為這裡面有R,就是大語言模型的介入

04:05.540 --> 04:06.320
它是一個智能的

04:07.080 --> 04:08.360
所以說我們就要

04:08.880 --> 04:09.900
voice agent

04:10.160 --> 04:11.440
你既然是agent,那麼

04:11.700 --> 04:15.020
他可能也可以做RE,也就是檢索增加生成

04:15.280 --> 04:15.780
比如說

04:16.040 --> 04:17.060
我經常問的問題

04:17.320 --> 04:18.600
那麼我們可以把這個問題

04:18.860 --> 04:21.940
問的問題以及回答的過程把它傳到相量信息庫裡面

04:22.180 --> 04:25.260
那你問題問多了以後,那麼以後他在

04:25.780 --> 04:28.080
你再問他問題的,他就更懂你了,對吧

04:28.340 --> 04:31.660
更懂你了,知道你以前問過,他會知道怎麼再去回答你

04:32.180 --> 04:32.940
這個就是

04:33.460 --> 04:36.020
接入這個大語言模型的好處

04:36.260 --> 04:38.580
這個你還在這部分進行加強

04:38.820 --> 04:39.600
就這部分加強

04:40.360 --> 04:40.880
好

04:41.140 --> 04:42.660
那下面這邊有解釋

04:43.440 --> 04:45.740
好,我們看到總體的架構,我們再看一下這個

04:46.000 --> 04:48.560
還有完整流程,那這個裡面當然就更詳細了

04:48.820 --> 04:51.880
比如說瀏覽器這邊設計到麥克風採集

04:52.140 --> 04:52.660
對吧

04:54.180 --> 04:54.960
重採樣

04:55.220 --> 04:55.720
分針

04:56.240 --> 04:58.020
這個技術名稱我們不需要長那麼細

04:58.280 --> 04:58.800
暫時

04:59.300 --> 05:00.580
然後二金字上行

05:00.840 --> 05:01.600
對吧

05:01.860 --> 05:02.620
然後

05:02.880 --> 05:03.900
這邊還會分發

05:04.940 --> 05:07.740
那麼這邊有VAD檢測,這個VAD是幹什麼

05:08.260 --> 05:09.540
你跟這個

05:10.060 --> 05:10.560
AI

05:10.820 --> 05:12.360
對話的時候你不經常可能會

05:12.620 --> 05:13.900
打斷他嗎?比如說

05:14.140 --> 05:15.420
他正在回答你某一個

05:15.680 --> 05:17.480
某一段話的時候你突然間打斷他了

05:17.740 --> 05:19.520
那如果是有打斷的話

05:19.780 --> 05:20.300
對吧

05:20.540 --> 05:21.320
有打斷的話

05:21.580 --> 05:22.080
那麼

05:22.860 --> 05:24.380
這時候會丟給LM

05:24.640 --> 05:25.160
對吧

05:25.420 --> 05:26.180
會切這個句子

05:26.440 --> 05:27.460
然後又貼貼的再返回

05:27.460 --> 05:28.220
對吧

05:28.480 --> 05:30.020
如果不打斷的話

05:30.280 --> 05:31.040
不打的話他就

05:31.560 --> 05:32.840
他就整個就是

05:33.860 --> 05:35.140
朝下去走

05:35.400 --> 05:36.160
這個意思

05:36.680 --> 05:37.440
整個朝下去走

05:37.700 --> 05:38.460
直接從這

05:38.720 --> 05:39.240
TDS

05:39.740 --> 05:40.000
這走

05:40.260 --> 05:41.280
然後就返回

05:41.540 --> 05:42.560
再返回到前端

05:43.340 --> 05:44.100
然後進行播放

05:44.360 --> 05:45.120
播放這個聲音

05:45.640 --> 05:46.660
中間發生的過程就是

05:46.920 --> 05:47.680
STT code端

05:47.940 --> 05:48.200
你要走

05:48.460 --> 05:49.220
STT的服務

05:49.480 --> 05:49.740
對吧

05:49.980 --> 05:50.500
你比如說

05:51.020 --> 05:51.780
阿里的呀

05:52.040 --> 05:52.540
Deepgram呀

05:52.800 --> 05:53.060
之類的

05:53.320 --> 05:53.820
那麼

05:54.600 --> 05:55.620
這個如果是Irm的話

05:55.880 --> 05:56.640
你可能接入OpenAI

05:56.900 --> 05:56.900


05:57.160 --> 05:57.920
也可能接入Deepseek

05:58.180 --> 05:58.940
有可能接入Milimax

05:59.200 --> 05:59.460
Kimi

05:59.720 --> 06:00.220
都可以

06:00.480 --> 06:00.740
好

06:01.000 --> 06:01.260
那麼

06:01.500 --> 06:02.280
TDS這塊

06:02.540 --> 06:03.560
通過SSE的流

06:03.820 --> 06:04.320
來進行播放

06:04.580 --> 06:05.600
那麼SSE什麼呢

06:05.860 --> 06:07.900
這個是AI裡面的一個技術

06:08.160 --> 06:09.700
就是一個流式的

06:10.220 --> 06:10.980
返回的

06:11.240 --> 06:11.500
一個

06:11.740 --> 06:12.520
處理技術

06:13.020 --> 06:14.300
就是文字的一個流式

06:14.560 --> 06:15.840
同時還有音頻的

06:16.620 --> 06:17.380
最後到

06:17.380 --> 06:20.700
網頁這段它有音頻的一個流式

06:21.480 --> 06:23.780
所以這個是更詳細的一個完整流程

06:24.040 --> 06:25.820
這裡面涉及到好些技術

06:26.600 --> 06:26.860
好技術

06:27.100 --> 06:27.880
大家這些技術

06:28.140 --> 06:28.900
我們會一步步拆解

06:29.160 --> 06:29.660
給大家講的

06:30.180 --> 06:30.440
那麼

06:30.700 --> 06:32.220
我們對於一個

06:32.480 --> 06:34.280
總體的架構以及完整流程

06:34.540 --> 06:35.300
有所了解以後

06:35.820 --> 06:36.580
你才能搞懂

06:36.840 --> 06:38.620
我們後續要給大家講的

06:39.400 --> 06:39.900
比如說

06:41.960 --> 06:44.000
從Web端到Server端的整個的一個

06:44.780 --> 06:46.820
Voice Agent的一個整個流程

06:46.820 --> 06:48.100
那麼我們這個例子

06:48.360 --> 06:49.120
寫的不是很大

06:49.380 --> 06:50.660
但是通過這個例子

06:50.920 --> 06:51.180
你

06:51.420 --> 06:53.220
能對Voice Agent有一個

06:53.740 --> 06:55.260
完整的流程的一個理解

06:55.520 --> 06:56.040
並且

06:56.300 --> 06:57.820
它是正式辦理能跑起來的一個項目

06:58.340 --> 07:00.140
我們首先是把理論先搞清楚

07:00.900 --> 07:01.660
這裡面

07:01.920 --> 07:02.700
我們可以看到

07:02.940 --> 07:03.980
這裡面我們涉及的各種服務

07:04.220 --> 07:05.000
比如

07:05.260 --> 07:05.760
STTS

07:06.020 --> 07:06.540
IM

07:06.780 --> 07:07.040
這些

07:07.300 --> 07:09.100
大家都可以去採用不同的

07:09.600 --> 07:10.380
Provider

07:10.620 --> 07:11.400
有著供應商的服務

07:11.660 --> 07:12.680
不一定說是非要某一間的

07:12.940 --> 07:13.180
對吧

07:13.960 --> 07:14.460
!

07:14.460 --> 07:17.020
比如說如果說我們英文的我建議大家用Deepgram

07:17.280 --> 07:18.040
Eleven Lab

07:18.300 --> 07:20.600
如果說是中文的建議大家用

07:21.120 --> 07:23.940
阿里的騰訊的火車引擎的像這些

07:24.180 --> 07:25.220
包括Millimax像這些

07:25.720 --> 07:27.000
這樣的話是比較好的

07:27.260 --> 07:27.780
因為

07:28.020 --> 07:29.060
肯定是

07:30.080 --> 07:30.840
各自的模型

07:31.100 --> 07:34.180
它對中英文支持的出來的效果是不一樣的

07:34.940 --> 07:37.240
當然同時它還支持方言的

07:37.500 --> 07:38.520
比如說粵語

07:39.040 --> 07:39.800
對吧

07:40.320 --> 07:40.560
等等

07:40.820 --> 07:42.100
像這些方言的四川話

07:42.620 --> 07:43.120
普通話

07:43.900 --> 07:45.440
像方言普通話都支持的

07:46.460 --> 07:47.220
所以說這個

07:47.480 --> 07:48.760
你要不同的去

07:49.020 --> 07:48.760
測

07:49.020 --> 07:49.520
另外還有一個

07:49.780 --> 07:50.560
VED打斷

07:50.800 --> 07:51.580
VED打斷的

07:51.840 --> 07:52.340
不同的

07:53.120 --> 07:53.880
比如STT

07:54.140 --> 07:54.400
就是

07:54.640 --> 07:55.160
它叫

07:55.420 --> 07:55.680
實際上叫

07:55.920 --> 07:56.960
AS2技術

07:57.460 --> 07:58.480
不同的

07:59.520 --> 08:00.280
廠商提供出來的

08:00.540 --> 08:01.560
質量也是不一樣的

08:01.820 --> 08:02.840
這個都去接

08:03.360 --> 08:04.380
然後我們這裡面當然就接了

08:04.640 --> 08:05.140
有阿里的

08:05.400 --> 08:05.920
有Deepgram

08:05.920 --> 08:06.440
這些

08:06.940 --> 08:09.240
已經有兩個比較好用的給大家接進來了

08:09.500 --> 08:10.520
告訴大家怎麼去接的

08:11.800 --> 08:12.060
好

08:12.320 --> 08:16.420
那麼關於它的這個總體的架構儀完整流程的我們就先講到這裡謝謝大家觀看

