Hugging Face 與 Cloudflare FastRTC 整合

Hugging Face 與 Cloudflare 合作,將 Cloudflare 的全球 WebRTC 基礎設施整合至 FastRTC,使 AI 開發者能在不自行管理 TURN 伺服器的情況下部署低延遲的音訊與視訊串流。此整合透過 Hugging Face 令牌提供企業級連線,消除即時多模態 AI 應用部署的重大障礙。

透過 Cloudflare TURN 伺服器簡化 WebRTC 部署

FastRTC 抽象化 WebRTC 的複雜性,讓開發者僅以最少的 Python 程式碼即可建立 AI 驅動的音訊與視訊串流。然而,WebRTC 應用通常需要專門的 TURN(Traversal Using Relays around NAT)伺服器,以確保在各種網路環境中都有可靠的連線。

透過此合作,FastRTC 開發者可使用 Cloudflare 全球超過 335 個地點的 TURN 伺服器網路。這免除開發者自行建置與維護 TURN 基礎設施的需求,讓焦點從網路管理轉移至核心應用邏輯。

存取與定價模式

開發者可使用有效的 Hugging Face 存取令牌來存取 Cloudflare TURN 網路。此合作提供免費層級,每月可串流 10GB 資料,且不需信用卡。若應用需要更高容量,開發者可轉為使用自己的 Cloudflare 帳戶。

即時 AI 的目標使用情境

此基礎設施整合專為支援需要可靠、低延遲串流的多模態 AI 應用而設計,包含以下情境:

  • 語音助理: 需要穩定、低延遲音訊串流以實現自然對話的應用。
  • 即時影片分析: 即時處理攝影機畫面的應用。
  • 多模態 AI: 即時結合音訊、影片與文字輸入輸出的系統。

技術實作與需求

Cloudflare 整合在 FastRTC 版本 0.0.20 及以上可用。要實作此整合,開發者需要具備讀取權限的 Hugging Face 令牌以及 fastrtc[vad] 套件。

實作範例

開發者可在 Stream 設定中使用 get_cloudflare_turn_credentials 函式,將串流配置為使用 Cloudflare TURN 網路:

from fastrtc import ReplyOnPause, Stream, get_cloudflare_turn_credentials
import os

os.environ["HF_TOKEN"] = "<your-hf-token>"

def echo(audio):
    yield audio

stream = Stream(ReplyOnPause(echo),
                rtc_config=get_cloudflare_turn_credentials)
stream.ui.launch()

生態系資源

欲取得更多實作細節,開發者可參考 FastRTC Cookbook 或 Hugging Face 上的 Cloudflare 合作專屬集合。

Sources