分享一篇好文:《ChatGPT 的記憶是如何工作的》,非常值得一讀
這篇文章是名為eric 工程師對(duì)ChatGPT記憶系統(tǒng)的深度逆向工程和技術(shù)實(shí)現(xiàn)推測(cè)。它詳細(xì)拆解了“可保存記憶”和包含“當(dāng)前會(huì)話歷史”、“對(duì)話歷史”、“用戶(hù)洞察”三個(gè)子系統(tǒng)的“聊天歷史”,分析了它們的工作原理、可能的實(shí)現(xiàn)方案(如向量數(shù)據(jù)庫(kù)、聚類(lèi)算法),并探討了這些記憶系統(tǒng)如何顯著提升ChatGPT的用戶(hù)體驗(yàn),認(rèn)為“用戶(hù)洞察”是體驗(yàn)提升的關(guān)鍵
文章深度剖析了“用戶(hù)洞察”(User Insights)高級(jí)記憶系統(tǒng),分析了ChatGPT如何從你的多輪對(duì)話中自動(dòng)學(xué)習(xí)、總結(jié)你的專(zhuān)業(yè)背景(如對(duì)Rust編程的深入理解)、知識(shí)領(lǐng)域乃至溝通偏好,并附上置信度和時(shí)間范圍,悄然注入后續(xù)對(duì)話的上下文中。這正是ChatGPT能提供“千人千面”且高度相關(guān)回復(fù)的核心秘密
地址:
https://macro.com/app/md/54115a42-3409-4f5b-9120-f144d3ecd23a
原文很長(zhǎng),這里做一個(gè)重點(diǎn)梳理
ChatGPT的記憶系統(tǒng):不止一種,而是一套組合拳
Eric發(fā)現(xiàn),ChatGPT的記憶并非單一系統(tǒng),而是主要由兩大部分構(gòu)成:“可保存記憶(Saved Memory)”和“聊天歷史(Chat History)”。
可保存記憶 (Saved Memory)
這個(gè)比較好理解,就是用戶(hù)可以主動(dòng)控制、讓ChatGPT記住一些關(guān)于你的事實(shí)。比如你可以明確告訴它:“記住,我喜歡簡(jiǎn)潔的技術(shù)解釋”,或者“記住,我是個(gè)素食主義者”。這些信息會(huì)被ChatGPT存起來(lái),并在后續(xù)對(duì)話中作為背景知識(shí)(注入系統(tǒng)提示)使用。用戶(hù)還可以通過(guò)一個(gè)簡(jiǎn)單的界面查看和刪除這些記憶條目
有趣的是,這個(gè)系統(tǒng)在去重和矛盾檢測(cè)方面做得比較“粗放”,即使是高度相關(guān)的信息,也可能作為獨(dú)立的記憶條目共存
聊天歷史 (Chat History):復(fù)雜且強(qiáng)大的“幕后功臣”
這部分就厲害了。雖然名字叫“聊天歷史”,但Eric通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),它實(shí)際上可能包含了三個(gè)子系統(tǒng),并且是提升助手響應(yīng)質(zhì)量的主要功臣
?當(dāng)前會(huì)話歷史 (Current Session History):這部分記錄了用戶(hù)在 其他對(duì)話中 最近發(fā)送的少量消息(比如過(guò)去一天內(nèi),少于10條)。這使得ChatGPT能捕捉到你最近的一些零散想法或上下文,盡管Eric表示在實(shí)際使用中不太容易察覺(jué)到這個(gè)系統(tǒng)的作用
?對(duì)話歷史 (Conversation History):這是真正的“聊天記錄”精華。ChatGPT能夠從過(guò)去的對(duì)話中提取相關(guān)上下文,甚至能直接引用你在其他對(duì)話中發(fā)送過(guò)的消息!實(shí)驗(yàn)表明,它能準(zhǔn)確引用長(zhǎng)達(dá)兩周前的消息。超過(guò)兩周后,雖然不能精確引用,但也能提供消息的摘要。這暗示著消息檢索系統(tǒng)同時(shí)基于對(duì)話摘要和消息內(nèi)容進(jìn)行索引。不過(guò),ChatGPT自身的回復(fù),引用準(zhǔn)確性似乎要差一些,要么是沒(méi)存,要么是存得更粗略
?用戶(hù)洞察 (User Insights):這才是重量級(jí)選手,堪稱(chēng)“可保存記憶”的自動(dòng)化、高級(jí)版。根據(jù)Eric“套”出來(lái)的ChatGPT上下文信息,這些洞察是這樣的格式:
> “用戶(hù)在Rust編程方面擁有豐富的經(jīng)驗(yàn)和知識(shí),尤其是在異步操作、線程和流處理方面” > “用戶(hù)在2024年底至2025年初的幾次對(duì)話中,多次詢(xún)問(wèn)關(guān)于Rust編程的詳細(xì)問(wèn)題,包括異步行為、trait對(duì)象、serde實(shí)現(xiàn)和自定義錯(cuò)誤處理” > “置信度=高”
看到?jīng)]?這些洞察是跨多個(gè)對(duì)話生成的,還帶有時(shí)間范圍和置信度!置信度可能代表了用于生成該洞察的消息向量的相似度或數(shù)量。這些洞察的生成,顯然依賴(lài)于一個(gè)比兩周直接引用窗口更大的數(shù)據(jù)集。
技術(shù)實(shí)現(xiàn)猜想:向量數(shù)據(jù)庫(kù)、聚類(lèi)與LLM的巧妙配合
Eric作為工程師,自然會(huì)思考這些功能背后可能的技術(shù)實(shí)現(xiàn)
可保存記憶:可能通過(guò)一個(gè)類(lèi)似“bio”工具的函數(shù)實(shí)現(xiàn)。用戶(hù)說(shuō)“記住XX”,就調(diào)用這個(gè)工具,LLM將用戶(hù)消息轉(zhuǎn)化為事實(shí)列表,進(jìn)行簡(jiǎn)單的檢查后存入數(shù)據(jù)庫(kù)。這些事實(shí)隨后會(huì)被注入到系統(tǒng)提示中
當(dāng)前會(huì)話歷史:實(shí)現(xiàn)起來(lái)相對(duì)簡(jiǎn)單,可能就是對(duì)聊天消息表按時(shí)間篩選用戶(hù)最近的消息
對(duì)話歷史:這部分就復(fù)雜了。Eric推測(cè)使用了向量數(shù)據(jù)庫(kù)。消息被嵌入(embedding)后存入,一個(gè)庫(kù)按消息內(nèi)容索引,另一個(gè)按對(duì)話摘要索引。當(dāng)用戶(hù)發(fā)送新消息時(shí),系統(tǒng)會(huì)查詢(xún)這兩個(gè)向量空間,找出兩周內(nèi)的相似內(nèi)容。對(duì)于更早的對(duì)話,則可能查詢(xún)一個(gè)存儲(chǔ)了對(duì)話摘要和消息摘要的第三個(gè)向量空間
用戶(hù)洞察:這是最復(fù)雜也最核心的部分。Eric認(rèn)為這可能是一個(gè)批處理任務(wù),比如每周運(yùn)行一次的定時(shí)任務(wù)(cron job):
1. 找出過(guò)去一周活躍的用戶(hù)。 2. 對(duì)每個(gè)用戶(hù)運(yùn)行一個(gè)“洞察更新”程序。 3. 這個(gè)程序的核心可能是對(duì)用戶(hù)的消息歷史(嵌入表示)進(jìn)行**聚類(lèi)分析**(比如k-NN算法),目標(biāo)是找到一些有意義的消息簇。 4. 然后,將每個(gè)簇內(nèi)的消息文本喂給一個(gè)LLM,用特定提示詞(prompt)讓LLM生成洞察摘要,并附上時(shí)間戳和置信度。 5. 最后,這些洞察被存起來(lái),并在用戶(hù)與ChatGPT對(duì)話時(shí)加載到上下文中。
為什么ChatGPT用起來(lái)那么爽?通過(guò)ChatGPT平臺(tái)使用模型,體驗(yàn)遠(yuǎn)超直接調(diào)用API,這幾乎是共識(shí)。除了提示工程的優(yōu)化,記憶系統(tǒng)絕對(duì)是幕后功臣
可保存記憶最直接,用戶(hù)主動(dòng)定制,讓ChatGPT更“合身”。缺點(diǎn)是,不那么懂技術(shù)的用戶(hù)可能不知道怎么用
用戶(hù)洞察彌補(bǔ)了這個(gè)不足。它自動(dòng)學(xué)習(xí)用戶(hù)的偏好和知識(shí)背景(比如Eric的洞察顯示他懂Rust,喜歡技術(shù)性解釋?zhuān)瑥亩孋hatGPT的回答更符合用戶(hù)的“胃口”,避免雞同鴨講,減少溝通成本。Eric甚至認(rèn)為,用戶(hù)洞察系統(tǒng)貢獻(xiàn)了80%以上的體驗(yàn)提升!
當(dāng)前會(huì)話歷史理論上能讓新對(duì)話更快進(jìn)入狀態(tài),但實(shí)際感知不強(qiáng)
對(duì)話歷史則賦予了ChatGPT一種“人類(lèi)對(duì)話者”應(yīng)有的上下文感知能力,避免重復(fù)和矛盾。
參考:
https://macro.com/app/md/54115a42-3409-4f5b-9120-f144d3ecd23a
?星標(biāo)AI寒武紀(jì),好內(nèi)容不錯(cuò)過(guò)?
用你的贊和在看告訴我~
求贊
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶(hù)上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.