博客 / 詳情

返回

構建擁有記憶的端到端實時語音助手:TEN Framework + memU 教程丨社區來稿

實時語音模型讓我們可以輕鬆構建能即時響應的語音助手Agent。但如果想讓一個語音助手真的有“用”,僅僅能聽和説還不夠——它必須擁有記憶

在本教程中,你將使用 TEN Framework + memU 構建一個具備實時語音能力長期記憶的智能Agent,它可以記住和你發生的一切對話內容。

你將構建

基於本教程的實時語音 + 記憶 Pipeline,你可以將 Agent 擴展為:

  • AI 夥伴 / 情感陪伴 Agent
  • 語言學習或口語練習 Tutor
  • 客服 / 銷售語音 Agent
  • VTuber / 虛擬角色互動 Agent
  • 外呼語音 Agent

... ...

完成本教程後,你將擁有一個支持跨會話記憶的端到端實時語音Agent,並可按需擴展至以上應用場景。

整體流程

本教程將指導你:

✔ 在本地運行 TEN Agent

✔ 集成 memU 實現可持續的長期記憶

整體處理流程如下:

User
 │ (live audio)
 ▼
TEN Framework
 ├─ VAD / Turn Detection
 ├─ ASR (OpenAI Realtime)
 ├─ LLM Reasoning
 ├─ Memory Retrieval (memU → TEN)
 ├─ Memory Storage (TEN → memU)
 └─ TTS (OpenAI Realtime)
 ▼
User
  • TEN Framework 負責實時語音處理,包括音頻採集、輪次檢測、流式推理與響應播放等。
  • memU 提供持久、跨會話的長期記憶,讓 Agent 能記住用户信息,而不是每次都從零開始。

二者結合,就能構建一個可立即投入應用的實時記憶語音 Agent。

操作步驟

本教程使用 Docker 來運行 TEN Agent 與 memU,確保本地環境一致。

請嚴格按照以下步驟操作,即可在幾分鐘內讓 Agent 跑起來。

1. 克隆代碼

git clone https://github.com/TEN-framework/ten-framework.git

cd ten-framework/ai\_agents

2. 準備環境變量文件

cp .env.example .env

3. 填入必要的密鑰

打開 .env 文件,填寫以下信息(只保留你實際使用的 provider):

# Agora (required for audio streaming)
AGORA_APP_ID=your_agora_app_id_here
AGORA_APP_CERTIFICATE=your_agora_certificate_here
# Voice-to-Voice Model Provider (choose one)
OPENAI_API_KEY=your_openai_api_key_here
# OR
AZURE_AI_FOUNDRY_API_KEY=your_azure_api_key_here
AZURE_AI_FOUNDRY_BASE_URI=your_azure_base_uri_here
# OR
GEMINI_API_KEY=your_gemini_api_key_here
# OR
GLM_API_KEY=your_glm_api_key_here
# OR
STEPFUN_API_KEY=your_stepfun_api_key_here
# Memu Memory Service
MEMU_API_KEY=<MEMU_API_KEY>

4. 啓動容器從項目根目錄執行:

從項目根目錄執行:

docker compose up -d

5. 進入容器,執行編譯後啓動服務器(建議關掉vpn)

5.1 進入 dev container

docker exec -it ten_agent_dev bash

5.2 設置 tman Registry

mkdir -p ~/.tman && echo '{  "registry": {    "default": {      "index":

5.3 設置 Go Proxy

export GOPROXY=https://goproxy.cn,direct

5.4 設置 Python/pip Proxy

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

export UV\_INDEX\_URL=https://pypi.tuna.tsinghua.edu.cn/simple

5.5 選擇示例 Agent 並運行

task use AGENT=agents/examples/voice-assistant-companion

task run

6. 打開 Web UI

當 Agent 成功運行後,在瀏覽器中訪問:

http://localhost:3000

你將看到語音助手UI

7. 確認 UI 是否正常顯示

🎉如果配置無誤,你應看到如下界面:

8. 開始語音對話

點擊 “Call” 即可開始與語音助手對話。

通話結束後,系統會將本次對話相關記憶存儲在 memU。

9. 測試記憶功能

嘗試重新連接 Agent,並詢問它之前的對話內容,例如:

  • “我之前跟你説我最喜歡的食物是什麼?”
  • “你還記得我的名字嗎?”

Agent 會檢索 memU 中的記憶做出回答。

10. 在 memU 後台查看記憶任務

你可以隨時登錄 memU 的 Dashboard 查看:

  • 已存儲的記憶項
  • 記憶結構
  • 任務狀態
  • 分類整理結果

你也可以嘗試通過修改 prompt、系統設定和參數,來打造專屬於你的 Agent

更多擴展學習與相關教程

TEN Framework

  • GitHub: https://github.com/TEN-framework/ten-framework
  • 文檔: https://theten.ai/docs

memU

  • GitHub: https://github.com/NevaMind-AI/memU
  • 雲上平台版本: https://app.memu.so/
  • 文檔: https://memu.pro/docs

閲讀更多 Voice Agent 學習筆記:瞭解最懂 AI 語音的頭腦都在思考什麼

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.