重磅,微軟LazyGraphRAG正式開源及實(shí)現(xiàn)細(xì)節(jié)剖析!
微軟GraphRAG自提出,已歷時(shí)快一年,PaperAgent對(duì)其發(fā)展歷程進(jìn)行了專門梳理與總結(jié):
- 去年4月,為解決傳統(tǒng)RAG在全局性的查詢總結(jié)任務(wù)上表現(xiàn)不佳,微軟多部門聯(lián)合提出Project GraphRAG(大模型驅(qū)動(dòng)的KG);
- 去年7月,微軟正式開源GraphRAG項(xiàng)目,引起極大關(guān)注,至今23.2k star,但落地時(shí)卻面臨巨大成本痛點(diǎn)(具體:LLM用于實(shí)體關(guān)系抽取+描述,社區(qū)總結(jié));
- 去年11月,為了上述痛點(diǎn),微軟發(fā)布了LazyGraphRAG,將數(shù)據(jù)索引成本降低1000倍,只有GraphRAG的0.1%(使用 NLP 名詞短語提取來識(shí)別概念及其共現(xiàn),再利用圖形統(tǒng)計(jì)來優(yōu)化概念圖并提取分層社區(qū)結(jié)構(gòu));
- 時(shí)隔3月,微軟GraphRAG項(xiàng)目迎來2.0.0版本,正式開源LazyGraphRAG,即NLP graph extraction功能。
LazyGraphRAG代碼解讀
- NLP圖譜抽取
graphrag/index/workflows/extract_graph_nlp.py
- 建立名詞短語圖
graphrag/index/operations/build_noun_graph/build_noun_graph.py
nodes:
- 使用text_analyzer.extract方法從每個(gè)文本單元中提取名詞短語
- 去重
edges(共現(xiàn)關(guān)系):
- 將節(jié)點(diǎn)數(shù)據(jù)框中的text_unit_ids展開,得到每個(gè)文本單元中出現(xiàn)的名詞短語列表
- 對(duì)每個(gè)文本單元中的名詞短語列表,生成所有可能的邊(即名詞短語對(duì))
edge_weights:
- 按source和target分組,統(tǒng)計(jì)邊的權(quán)重(即邊出現(xiàn)的文本單元數(shù)量)
- 使用點(diǎn)互信息(PMI)對(duì)邊的權(quán)重進(jìn)行歸一化
LazyGraphRAG技術(shù)原理
- 使用 NLP 名詞短語提取來提取概念及其共現(xiàn)
- 使用圖形統(tǒng)計(jì)來優(yōu)化概念圖并提取分層社區(qū)結(jié)構(gòu)
效果對(duì)比,LazyGraphRAG答案更加豐富,Query:描述 2024 年健康保險(xiǎn)計(jì)劃開放注冊(cè)期間,美國個(gè)人在選擇健康保險(xiǎn)計(jì)劃時(shí)應(yīng)考慮哪些因素。
????本文轉(zhuǎn)載自??PaperAgent??,作者: PaperAgent ????
贊
收藏
回復(fù)
分享
微博
QQ
微信
舉報(bào)

回復(fù)
相關(guān)推薦