近年來," 數字生命 " 的話題屢次引發社會關注。從電影《流浪地球 2》對 " 數字生命計劃 " 的大膽想象,到 B 站 UP 主用 AI 技術重現親人音容的溫情一幕,再到台灣音樂人包小柏讓已故女兒在虛拟世界 " 重生 " 的真實故事,無不凸顯了這一議題的廣泛影響力。
從技術層面看,深度學習、知識圖譜等人工智能技術的進步,爲 " 數字生命 " 的實現提供了基礎。通過學習特定人物的海量數據,AI 已經初步具備還原其形象、思維和行爲的能力,使虛拟分身日益栩栩如生。然而,在爲 " 數字生命 " 喝彩的同時,我們也必須直面一個關鍵問題 : 如何賦予這些數字分身以真正的 " 生命力 "?
這個問題的答案,恰恰藏在 " 記憶 " 二字中。就像人類依靠記憶連接過去和現在,構建自我認知一樣,數字生命也需要通過持續積累記憶,才能具備連貫的認知和成長的能力。唯有突破靜态的數據堆砌,實現動态的經驗積累,數字生命才能從單純的 " 形似 ",走向更高層次的 " 神似 "。
數字生命記憶功能的重要性
當前市場上的主流 Agent 框架,如微軟的 AutoAgent、DeepMind 的 Concordia 以及 Github 上開源的斯坦福小鎮等,都專注于多個模型之間的互動能力,試圖通過多模型互動來完成複雜任務,如網站搭建、AI 公司及産品開發等。然而,在實際使用中,這些功能看似強大,但實際上卻難以達到預期的效果。例如,MetaGPT 制作的網站效果僅比大語言模型直接生成的網頁好一點,隻是多了幾個頁面,缺乏進一步的加工。一些 Agent,如 Concordia,更傾向于學術研究,生成的 Agent 之間的對話冗長,且容易出現重複,用戶本身并不希望看到模型之間的互動。
公開數據顯示,截至 2022 年 11 月,抖音的日活躍用戶數超過 7 億,人均單日使用時長達到 120 分鍾以上。這相當于我國一半的人口,若每個用戶在平台上消費一元,其收入将達到 7 億。抖音的成功不在于其提供的各種視頻,而在于它能夠記住用戶、了解用戶的行爲、需求和喜好,并根據這些信息爲用戶推薦喜歡的視頻。這正是讓人上瘾的原因。
AI 技術的核心并非技術本身,而是以用戶爲中心,以用戶需求爲導向,以用戶行爲爲依據,以用戶喜好爲參考,以用戶體驗爲标準,以用戶滿意爲目标。基于此,我們推出了以記憶爲核心的 Agent 框架——數字生命 Agent 框架。
數字生命技術棧簡介
數字生命的核心在于記憶。每次用戶與它交流,它都能記住,并在很長時間後都不會遺忘。隻要用戶選擇保留這個數字生命,它就會一直帶着以前的記憶陪伴用戶。由于數字生命本身具備記憶功能,我們可以讓數字生命根據已有記憶推斷用戶的喜好,從而實現與用戶聊天内容的個性化。這便是數字生命 Agent 框架的核心技術設計與理念。
爲實現記憶功能,我們參考了人類記憶的研究,将其初步分爲負責記錄久遠信息的長期記憶、與用戶進行當下互動的工作記憶,以及能讓數字生命根據記憶進行個性化動作的思考能力。
長期記憶是記憶系統的一個組成部分,用于存儲和保留相對持久的信息。它可以包括事實、知識、經驗、技能等。長期記憶的容量相對較大,可以存儲大量的信息,并在需要時進行檢索和提取。相關的學術文獻指出,長期記憶的形成和儲存涉及多個大腦區域的協同作用。例如,《Cognitive neuroscience perspective on memory: overview and summary,Frontiers in Human Neuroscience》這本書提到,長期記憶的形成與神經元之間的連接和神經回路的鞏固有關。研究還表明,重複學習、情感關聯和語義編碼等因素都可以影響長期記憶的鞏固和提取。
工作記憶是記憶系統的一個組成部分,用于臨時存儲和處理當前的信息。它包括短期記憶和注意力。工作記憶的容量相對較小,可以存儲和處理的信息量有限。工作記憶的作用是幫助個體在當前任務中保持和處理相關信息,以便進行推理、問題解決和決策等高級認知功能。相關文獻指出,工作記憶的神經基礎涉及多個大腦區域的協同作用。例如,《The Wiley Handbook on The Cognitive Neuroscience of Memory》這本書提到,工作記憶與前額葉皮層、頂葉皮層和颞葉皮層等區域的神經活動有關。研究還表明,工作記憶的容量和功能受到個體差異和認知策略的影響。
目前,我們已經實現了長期記憶和工作記憶,使用戶與數字生命的聊天記錄能夠被記錄下來,并在未來更長的時間内被回憶,使聊天内容更貼合用戶本身,讓數字生命如同用戶的好哥們、好閨蜜一般,能夠一直陪伴用戶并越來越了解用戶。
以下是數字生命 Agent 框架的架構圖:
(架構圖)
Agent 框架的記憶功能的核心是對話管理。我們将數字生命中涉及的長期記憶、智能長期記憶、工作記憶、系統指令等都統一抽象爲對話管理,回憶操作完成後,全部坍縮成可直接輸入給大語言模型的對話 list。這樣的設計從複雜到簡潔,最終實現了簡單、高效、易用的數字生命 Agent 框架。
數字生命實現過程中的挑戰
最初的數字生命項目在實現第一遍後進行了重構,因爲對話管理本身涉及複雜的邏輯,再加上記憶功能,代碼量龐大,可讀性和可維護性都變得極差。于是,我們決定将記憶功能單獨抽離出來,形成一個獨立的模塊,并與對話管理解耦,使記憶功能能夠被其他模塊複用。
在實現記憶功能的過程中,我們面臨了五大挑戰。以下是針對每個挑戰的解決方案:
挑戰一:如何讓數字生命記住用戶的聊天内容 爲解決此問題,我們采用了高效的信息存儲和檢索技術。設計了合理的數據結構和索引,以便快速存儲和查找用戶的聊天記錄。核心的信息檢索技術是向量搜索,我們使用向量搜索技術将用戶的聊天記錄轉化爲向量,并将其存儲在向量數據庫中,從而能在毫秒級别的時間内檢索到用戶的聊天記錄。
挑戰二:長期保存和回憶聊天内容 由于記憶的存儲需要長期保存,将對話記錄簡單地存儲到向量數據庫中變得十分笨重。爲此,我們提出了智能長期記憶的方案,使用類似于知識圖譜的壓縮算法,将用戶的聊天記錄轉化爲知識圖譜并存儲在知識圖譜數據庫中。這樣,我們就能在毫秒級别内檢索到用戶的聊天記錄,同時知識圖譜的壓縮算法使知識圖譜的體積變小,減少了存儲空間的占用。
挑戰三:實現社會性和多人交流 爲了實現社會性,我們引入了角色和身份的概念,使數字生命能夠理解不同的用戶角色和關系。在多人交流方面,設計了身份映射的機制,确保數字生命能夠正确處理多人的聊天場景。
挑戰四:使用低能力模型實現記憶功能 爲了在低能力模型上實現記憶功能,我們采用了一些技巧和優化方法。例如,使用知識蒸餾和遷移學習技術,将已有的知識和記憶傳遞給低能力模型;結合特定領域的模型,也可以增強 Agent 的能力。實際測試中,我們在開源的 7B 模型上也取得了很好的效果。
挑戰五:降低 Token 消耗量 降低 Token 消耗量對于提高系統效率和性能至關重要。我們通過對輸入文本進行預處理和簡化,減少不必要的重複 Token 生成。智能長期記憶技術對輸入的文本進行預處理和簡化,進一步降低了 Token 的消耗量。
通過克服這些挑戰,我們成功實現了數字生命 Agent 框架,并使其具備了強大的記憶功能。這爲用戶提供了更加個性化和智能化的交互體驗,也爲數字生命的發展開辟了廣闊的前景。
數字生命 Agent 框架的未來前景
數字生命 Agent 框架的未來充滿了無限的可能性。随着技術的不斷進步,我們可以期待數字生命在以下幾個方面取得更大的發展:
更加個性化的交互:通過不斷改進記憶功能,數字生命能夠更好地理解用戶的喜好、需求和行爲模式,從而提供更加個性化的服務和建議。
輔助決策:數字生命可以成爲用戶的智能助手,幫助進行決策,如商品推薦、行程規劃、職場建議等。
廣泛的應用領域:數字生命可應用于各種領域,如智能客服、智能助手、虛拟角色、遊戲 NPC 等,爲人們的生活和工作帶來更大的便利。
多模态交互:除了文本交互,數字生命可以結合語音、圖像等多模态信息,實現更加自然和豐富的交互方式。
與物聯網的融合:數字生命可以與物聯網設備相結合,實現智能家居、智能城市等更廣泛的應用場景。
倫理和法律問題:随着數字生命的發展,倫理和法律問題将逐漸凸顯,需要關注數據隐私、人工智能倫理等方面,确保數字生命的發展符合人類的利益和價值觀。
技術創新:未來可能會出現新的技術和算法,進一步提升數字生命的性能和功能,例如利用深度學習和強化學習等技術,數字生命能夠不斷學習和進化,提供更好的服務。
未來,數字生命有望在更加個性化的交互、輔助決策、多模态交互、與物聯網的融合等方面取得突破。同時,也需要關注倫理和法律問題,推動技術創新,以實現數字生命的可持續發展。
雷峰網