聞樂 發自 凹非寺
量子位 | 公眾號 QbitAI
Claude Code源碼泄漏的余波,還在AI圈持續發酵!
說起來還挺反常,Claude幾乎Contribute了所有RAG記憶項目,結果泄露的代碼卻顯示——
它自己壓根沒在用主流的RAG技術??
![]()
這就很矛盾了,Anthropic在官方文檔和技術博客里,一直明確提到支持RAG檢索。
![]()
而它“棄用”傳統RAG的玩法,其實恰恰也說明了一個問題:現有的RAG解決方案,性能并沒有達標。
從2023年起,混合檢索就成了記憶引擎的標配邏輯,向量+關鍵詞、加權排序……這些套路不斷迭代。
但隨著AI記憶場景越來越復雜,傳統RAG的瓶頸也徹底暴露,明明叫記憶引擎,卻還在干著搜索引擎的活兒,只會匹配相似文本,做不到真正的理解,更談不上聯想推理。
那怎么辦?答案很簡單——
推倒,重來。
回頭看AI記憶的演化路徑,脈絡其實非常清晰:
第一代是直接硬塞全量上下文,就像通讀日記;第二代依靠向量+關鍵詞匹配,類似查字典,可是只能找到相似內容,抓不住真實關聯;
現在,第三代記憶模式已經來了。
能夠自主聯想、推理、跨結構建立關聯的認知模型
![]()
中國團隊自研架構領跑Benchmark
讓AI能夠實現推理與聯想,大家都知道跨粒度記憶的有效組織是關鍵。
簡單點說就是讓AI能同時處理細顆粒的事實和粗顆粒的上下文,還能在它們之間自由跳轉(切換關聯)。
但這個問題正是2023到2026年間,整個記憶引擎行業難以突破的核心瓶頸。
不過最近,我們觀察到一個平均年齡19歲的中國年輕團隊,心流元素,給出了可行解法——
M-FLOW,憑借自研的圖路由Bundle Search架構,實現了benchmark的現象級領先。
對比Mem0、Graphiti、Cognee等主流方法,M-FLOW在多輪對話、長期記憶、多跳推理三大核心場景下,性能優勢顯著。
- 對齊Mem0的官網benchmark測試(LoCoMo),領先Mem0 36%;
- 對齊Graphiti的官網benchmark測試(LongMemEval),領先Graphiti 16%;
- 在長期事件演變測試(EvolvingEvents)中,領先Cognee 7%,領先Graphiti 20%。
![]()
△測試未做任何篩選,采用行業通用Benchmark
深度測評之后,可以更清晰地看到在覆蓋寫入、檢索、預處理、知識組織等環節等29項能力維度中,M-FLOW在絕大多數關鍵維度上都實現了完整支持。(下圖可上下滑動完整查看)
![]()
尤其在圖增強檢索、指代消解、多粒度索引等決定記憶質量的核心能力上表現突出。
這份成績的背后,其實可以看到的是M-FLOW架構帶來的系統性優勢:
- 檢索環節不依賴LLM,能夠實現毫秒級響應;
- 在超大記憶量場景下,依然能保持接近常規Benchmark的穩定表現;
- 業內首個支持指代消解的記憶引擎,讓AI對信息的理解更貼合人類思維(指代消解是指能區分事件中的“他”和“它”)。
![]()
而且基本沒什么使用門檻,部署流程非常簡單,在具備Docker環境時只需要一行代碼就能完成接入。
![]()
當然了,雖然上手簡單,但在部署之前,咱也先來說說大家好奇的問題:
M-FLOW是怎么做到的?
答案其實還是開頭的那句話:推倒,重來。
與當前行業里大量同質化的記憶方案不同,M-FLOW并不是用LLM輔助檢索來抬高Benchmark分數,也不是簡單疊加功能。
準確說,它是從根本上重構了AI記憶的組織與使用體系。
讓記憶會關聯、能推理
事實上,所有RAG系統都會面臨的一個問題是,給定用戶查詢,如何精準定位存儲的相關知識?
主流方案的邏輯很直接,就是將文檔切塊、向量化后存入向量庫,檢索時按余弦相似度排序。
這種方式本質上只回答“哪段文本和查詢語義最接近”這一個層級的問題,對簡單事實查找的效果還不錯,但在復雜場景中會完全失效,因為:
- 答案跨文檔分布:文檔切塊間缺乏結構性連接,無法將分散在不同文檔中的關聯信息整合;
- 查詢與存儲粒度不匹配:宏觀問題檢索到瑣碎片段,微觀問題匹配到籠統摘要;
- 同實體異語境割裂:兩份文檔討論同一實體但語境不同時,向量空間中距離遙遠,無法建立關聯。
究其原因,是因為平坦向量檢索丟棄了知識的內在結構
它能判斷文本與查詢的相似度,卻完全不清楚這段文本在整個知識體系中的拓撲位置。
在這一點上,M-FLOW以圖路由檢索替代傳統平坦檢索,核心邏輯圍繞分層知識拓撲展開,其核心洞察是:
不止找到“匹配的文本”,更要定位匹配點所屬的完整知識結構,再對整個結構進行評分。
倒錐結構設計
M-FLOW將所有攝入的知識組織為一個四層有向圖,形成一個倒錐(inverted cone):
![]()
這個結構的方向性是反直覺的:在傳統的知識圖譜或分類樹中,越往下越具體。
但在M-FLOW中,搜索的“入口在錐尖”(細粒度的Entity和FacetPoint是最容易被向量搜索精確命中的),而搜索的“目標在錐底”(Episode是最終返回給用戶的知識單元)。
信息流從尖銳的匹配點向下匯聚到寬廣的語義落點。
這打破了“從上到下瀏覽”的傳統檢索范式。
用戶不是在層級中逐層縮小范圍,而是系統在最尖銳的點上捕獲信號,然后沿圖結構向下傳播到它所歸屬的完整語義單元。
![]()
這是一個從細到粗的過程,先在最尖銳的點上捕獲信號精準瞄準,然后沿圖結構向下傳播到它所歸屬的完整語義單元。
圖路由Bundle Search的工作方式
當查詢到達時,系統不是簡單地找到最近的節點。
它通過評估圖中所有可能到達每個Episode的路徑,找到最優的Episode。
階段一:在錐尖廣撒網
查詢被向量化后,同時在七個向量集合中搜索,從錐尖到錐底覆蓋每一層。每個集合返回最多100個候選。
最容易被精確命中的是錐尖處的節點,一個Entity名稱、一個FacetPoint的斷言。
這些細粒度錨點的語義極度聚焦,向量距離小。
錐底的Episode摘要也可能被命中,但因為語義更寬泛,匹配通常不如錐尖精確。
階段二:投影到圖中
這些錨點被用作進入知識圖譜的入口節點。
系統提取它們周圍的子圖,邊、鄰居、連接關系,然后擴展一跳鄰居。
這將一組孤立的向量命中點轉化為一個連通的拓撲結構。
階段三:從錐尖向錐底傳播代價
這是核心步驟,也是圖路由Bundle Search的本質——
在錐尖捕獲信號,沿圖邊向錐底傳播,在Episode處匯聚評分。
對于子圖中的每個Episode,系統評估從錨點到達它的所有可能路徑:
![]()
每條路徑的代價由三部分構成:
- 起始代價,錨點的向量距離(信號的尖銳程度);
- 邊代價,沿途每條邊的向量距離(連接關系與查詢的相關度)加跳躍懲罰;
- 未命中懲罰,邊沒有被向量搜索命中時的默認高代價。
Episode的最終得分是所有路徑中的最小代價。
三大打破常規的設計
1.邊也攜帶語義,成為主動過濾器
傳統知識圖譜中,邊(圖譜中節點之間的連線)只是作為類型標簽,比如’works_at’、’located_in’,不參與語義檢索。
查詢一個圖時,你要么遍歷邊,要么忽略邊,因為邊本身不攜帶可被搜索的語義。
而M-FLOW中,每條邊都附帶自然語言描述文本,這些文本會被向量化、同樣參與搜索。
這意味著邊不再是被動連接器,而是主動的語義過濾器。
![]()
在代價傳播階段,系統不僅知道兩個節點之間存在連接,還知道這條連接關系本身與當前查詢有多相關。
這樣一來,即便一條邊的兩個節點都被搜索命中,只要這條邊本身的語義和查詢無關,就會被判定為高代價,從而直接切斷這條不合理的關聯路徑。
2.取路徑最小代價,而非平均代價
為什么取最小值呢?團隊主要考慮到一個檢索哲學——一條強的證據鏈就足以證明相關性。
一個Episode可能關聯10個Facet,但9個與查詢都無關。
傳統方式會平均所有路徑代價,這就會讓無關路徑拉高分數;
而M-FLOW只看那條最好的路徑。
只要有一個Facet通過低代價路徑連接到查詢,這個Episode就應該被檢索到。
這也對應了人類記憶的工作方式,比如你想起一件事,通常是因為某一個線索足夠強烈,而不是因為所有線索都指向它。
3.懲罰直接命中,偏好精準錨點路徑
這是最反直覺的設計,當查詢直接匹配了Episode摘要時,系統反而對這條路徑施加額外懲罰。
懲罰最直接命中的原因是,它們和很多查詢看起來相關。
一個關于項目管理的Episode摘要,可能和任何提到項目或管理的查詢都有不錯的向量距離。
但這種匹配是寬泛的、缺乏焦點的,這其實也反映了眾多RAG系統檢索噪聲的根本原因。
M-FLOW系統的設計偏好,是優先選擇從錐尖(FacetPoint、Entity)出發的精確路徑。
即使多走幾跳,也優先選擇它,直接的Episode命中只在沒有更好替代路徑時才勝出。
這樣就確保了檢索結果的精確性——不是什么都沾點邊的寬泛摘要,而是有具體證據鏈支撐的Episode。
拓撲論證
要說這套機制為什么有效,根本優勢還是在于圖拓撲編碼了向量本身無法捕獲的知識組織結構
多粒度均可找到錨點。比如問“數據庫遷移發生了什么?” 這類宏觀問題時,系統會直接匹配到Episode摘要。
雖然會受到直接命中懲罰,但因為沒有更精確的錐尖路徑,這條結果依然會勝出。
而像“P99目標是否低于500ms?” 這類精確問題,則會強匹配一個FacetPoint,從錐尖經過兩跳到達Episode,極小的起始距離讓整體代價非常低。
系統不需要人為選擇粒度,倒錐拓撲會自動在最合適的層級找到錨點。
跨文檔實體橋接。當“張博士在MIT工作”出現在文檔A,“MIT發表了量子計算突破”出現在文檔B時,兩個Episode會共享同一個Entity節點:MIT。
用戶查詢MIT時,錐尖命中該實體,代價會同時向下傳播到兩個Episode,從而從兩個獨立文檔中拿到關聯結果,不需要LLM做額外推理,圖結構本身就完成了橋接。
![]()
結構噪聲過濾。在傳統平坦檢索中,很多語義相似但主題無關的文本片段會排在前面。
而在Bundle Search中,任何片段都必須沿著邊追溯到某個Episode。
如果沿途的邊和查詢語義無關,路徑代價會迅速升高,讓不相關結果自然下沉。
圖結構本身,就是一層強大的語義噪聲過濾器。
代價傳播即推理。圖中的每一條路徑,本質上都是一條推理鏈——
查詢匹配這個事實→事實屬于這個維度→維度屬于這個事件。
路徑代價量化了這條推理鏈的緊密程度,系統在2–3跳內就能完成輕量級多跳推理,檢索階段不需要調用LLM。
自適應置信度
并不是每一層向量集合對每個查詢都同樣可靠。
系統會為每個集合計算兩個指標,絕對匹配強度與區分度,然后把集合分為“節點類”和“邊類”,按置信度動態分配權重。
比如某一次查詢中,Entity集合的置信度明顯高于Facet集合,系統就會自動提高Entity路徑的影響力。
它不是用固定權重,而是根據本次搜索中哪個粒度的命中更可信,實時調整檢索策略。
一個額外的調節機制
還有一個額外的調節機制是,當某個Facet與查詢向量距離極小、高度吻合時,系統會顯著降低這條路徑上的邊代價和跳躍代價。
邏輯很直觀,如果一個Facet已經幾乎完美匹配查詢,那么它到Episode的連接基本就是可靠的,不需要再通過邊語義反復驗證。
除此之外,系統還包含查詢預處理、并行多模式調度、結果裁剪等機制……
所以總結來看,M-FLOW的檢索并不是向量搜索+圖數據庫的簡單疊加,圖本身就是檢索機制
中國記憶引擎后發先至?
在國內,外置記憶遠沒有國外的關注度高,然而M-FLOW團隊不做同質化堆砌,實現了國產在該領域的從無到有,并且性能領先世界、還堅持開源開放……
其實很多初次接觸記憶引擎的人都會有一個直觀困惑,人類的回憶難道不是尋找相關信息嗎?為什么AI的記憶,卻總是在找文本形態相似的信息?
這個最普遍的問題,恰恰是AI記憶解決方案的核心癥結。
從初代全量上下文硬塞式記憶,到第二代向量+關鍵詞的檢索式記憶,AI始終停留在文本形態匹配,離真正的理解與聯想相去甚遠。
而M-FLOW用圖結構重構了AI記憶的底層邏輯,解決了記憶圖譜的粒度與聯系問題,讓AI記憶完成了從形態相似匹配到聯想與推理的跨越。
而且值得一提的是,這個項目是由一支平均年齡19歲、從常青藤輟學的團隊獨立開發的。
在AI圈里,天才少年的故事總是備受矚目。在這次技術突破之后,我們也想知道:
這群年輕人,未來又可以走多遠呢……
項目地址:https://github.com/FlowElement-ai/m_flow
產品網站地址:https://m-flow.ai
公司地址:https://flowelement.ai
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
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.