跳到正文
IFAI

開源專案

VoiceMem:給語音 Agent 塞進雙腦記憶,邊說話邊查僅需 134 毫秒

首次發布 傳播指數 48

開源語音 Agent 記憶系統 VoiceMem 釋出。它把記憶拆成存事實的「左腦」和記偏好情緒的「右腦」,能在使用者說話過程中同步完成流式檢索,響應延遲僅 134 毫秒,單輪消耗約 430 token。最值得關注的是,它讓語音助手不必卡頓等待檢索,程式碼與模型已完全開源。

VoiceMem:給語音 Agent 塞進雙腦記憶,邊說話邊查僅需 134 毫秒
圖:github.com

VoiceMem 是一個專門為即時語音 Agent 打造的開源長期記憶系統。它能讓語音助手擺脫每次對話都從零開始的狀態,在多輪互動中持續記住你的個人背景、喜好和情緒狀態,而且檢索過程幾乎不給語音對話增加等待時間。

這套系統把記憶機制拆成了「左腦」和「右腦」兩個獨立協同的模組。

雙腦架構是怎麼分工的

左腦專門負責結構化的事實資訊。比如你提到過自己對堅果過敏、是素食主義者,或者某個朋友的姓名與職業,這些實體和知識會通過 Schema 整理進左腦。

右腦則負責管理長短期的情緒與人格畫像。它會記錄你的交流偏好、性格特質以及過往對話裡的情緒起伏。比如當你隨口說「最近好累」時,它能結合右腦記錄的上下文,聯想到你上次因為某門考試成績不理想而受挫的經歷,給出更有同理心的回答。

這種拆分避免了傳統記憶庫把所有資訊混在一起檢索導致的失真。在基準測試中,VoiceMem 在 LoCoMo 事實記憶評測上拿到了 91.2% 的準確率,遠高於傳統向量記憶引擎 Mem0 的 61.68%;而在專門評測人格與偏好的 PersonaMem 上,準確率達到 69.44%。

為什麼它能做到 134 毫秒極低延遲

做即時語音助手,最大的痛點就是模型等不起檢索時間。文字對話裡等一兩秒沒人介意,但在語音通話裡,超過半秒的停頓就會讓對話顯得極其尷尬。

VoiceMem 解決這個問題的思路很聰明:它不等你說完才去查,而是直接把檢索做成了流式預取。

在使用者說話的過程中,系統一邊進行流式語音轉寫,只要識別文本達到預設長度(預設 6 個字元),後臺就會在靜默中提前啟動向量檢索。當麥克風檢測到你這句話說完了,相關的記憶早已在後臺取回並準備就緒。

整套端到端檢索的響應延遲只有 134 毫秒,而 Mem0 在同類場景下通常需要 1440 毫秒。此外,它通過分層儲存和路由排序,只把最關鍵的 3 到 5 條記憶注入模型上下文,單輪對話消耗的記憶 token 只有大約 430 個,而傳統做法往往需要一口氣灌入數千個歷史 token。

怎麼跑起來與開放程度

VoiceMem 程式碼基於 Apache 2.0 協議開源,專案承諾永久開源。系統內部打包了完整的依賴元件,包含用於流式語音識別的 FunASR、用於端點檢測的 Silero VAD、用於聲紋確認的 3D-Speaker,以及本地文本向量模型。

執行環境需要 Python 3.10 以上版本,通過 pip install voicemem 即可完成基礎庫安裝。專案倉庫裡附帶了一個本地 Web 演示介面,克隆程式碼後執行 web/run.py 就能在本地瀏覽器裡測試雙腦記憶的錄入與檢索。

除了記憶檢索框架本身,團隊還開源了配套的 ChatMem-400K 訓練資料集,以及經過微調可以直接呼叫 VoiceMem 記憶的端到端語音模型家族,包括 Qwen2.5-Omni、Qwen3-Omni 和 Step-Audio2-Mini。開發者也可以保留這套記憶引擎,單獨把回覆模型換成自己微調過的介面。

為什麼重要

如果你正在開發陪伴類 AI、語音客服或車載語音助手,VoiceMem 屬於那種非常值得立刻拉下來看看的工具。

過去很多團隊做語音 Agent,往往把精力全放在了語音合成音色和端到端模型上,一旦想加入長期記憶,就會發現現有方案几乎都是為文本檢索設計的,動輒一兩秒的資料庫查詢會讓整個即時語音體驗直接崩盤。VoiceMem 把檢索切入點前置到語音流輸入階段,用「人還沒說完、後臺先查好」的投機機制解決了核心瓶頸。

不過在實際工程部署中,這種投機預取也存在一定代價。如果使用者在嘈雜環境中說話斷斷續續,或者頻繁改口、打斷對話,系統可能會產生一些無效的預取計算。但整體來看,它給語音 Agent 的記憶系統提供了一條極具參考價值的輕量化路徑。

來源 (2)

  1. [1]
    github.com(在新分頁開啟)原文github.com
  2. [2]
    youtube.com(在新分頁開啟)報導youtube.com

每日 AI 內容精選