
LinkingMem — Graph-native RAG Engine
khapu2906 · 程式設計 · AI 學習
LinkingMem 是圖形原生 RAG 引擎,以自架式 Docker 服務執行,把向量搜尋與圖形走訪串起來,讓 LLM 能從你自己的文件回答問題。它不只用相似度比對文字片段,而是沿著實體之間的邊走訪,把相關事實拉進同一個有依據的答案裡。這就是整套想法。如果你想要一條從頭到尾都由你掌控、跑在自己硬體上的 RAG 流程,這東西就是為此而做。

關於 LinkingMem — Graph-native RAG Engine
LinkingMem 是什麼
LinkingMem 是檢索引擎,用來在私有資料上建立問答系統。它把 Rust 運算核心與 Python 外掛配在一起,並把知識圖譜當成檢索的核心環節,而不是事後補上的東西。查詢進入流程後會被嵌入,命中 HNSW 向量索引,接著沿圖形邊擴展,最後才由 LLM 寫出答案。這個順序很重要。圖形那一步,正是讓它能串起沒有共同詞彙之事實的關鍵。
引擎以 Docker 映像檔形式提供,所以由你自己執行。文字與影像的處理各自放在不同的外掛裡,你可以啟動或略過,而 LLM 用戶端採用與 OpenAI 相容的協定。後端自己挑。OpenAI、Ollama、Groq 與相容 Gemini 的端點都能用,當你想把推理留在本機時特別方便。
最大的門檻是建置成本。LinkingMem 需要 Rust 1.80+ 與 Python 3.11+,設定、LLM 金鑰與資料檔案都得由你來接。它是開發者工具,不是裝了就能忘的應用程式。
開始使用
- 從 Docker Hub 拉取 Docker 映像檔(khapu2906/linkingmem),或複製儲存庫並用 uv 安裝 Rust 1.80+ 與 Python 3.11+。
- 把
.env.example複製成.env,至少要設定OPENAI_API_KEY;若想在本機執行,把OPENAI_BASE_URL指向 Ollama 或其他相容供應商。 - 檢視
plugins.toml,決定要啟動哪些外掛(文字外掛在 8001 埠、影像外掛在 8002 埠),以及查詢流程的排序方式。 - 用
POST /ingest/text或POST /ingest/json端點匯入文件,建立節點、邊與向量。 - 把問題送到
POST /query並讀取有依據的 LLM 答案,或在你需要引擎走訪多跳時改用POST /query/multihop。
產品資訊
快速了解 LinkingMem — Graph-native RAG Engine 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- 後端與 AI 工程師:你能取得一條可自行託管的完整檢索流程,前提是你熟悉 Docker 操作與編輯設定檔。
- 擁有私有文件的團隊:因為一切都在你自己的機器上執行,敏感資料不會離開你的基礎架構。
- 測試圖形 RAG 想法的開發者:開源程式碼與模組化外掛讓它成為實用的實驗基礎,前提是你讀得懂 Rust 與 Python。
任務
- 在內部文件上建立問答服務:匯入文字後查詢,取得以你的來源為依據的答案,而不是模型記憶裡的答案。
- 多跳問題:當答案需要跨多份文件串起事實時,圖形擴展那一步會把相連的片段拉在一起。
- 混合影像與文字檢索:影像外掛可與文字外掛共用同一個向量空間,因此以描述為基礎的影像查詢會落在同一批結果裡。
情境
- 在自己的伺服器上執行私有知識庫:把敏感文件留在防火牆之後。
- 在決定採用託管服務前先做檢索後端原型:你能在沒有訂閱的情況下驗證品質。
- 為你已經託管的 LLM 加上依據:把引擎指向現有的 OpenAI 相容端點並重複使用。
主要功能
向量與圖形的混合檢索
LinkingMem 執行兩階段檢索流程。查詢會被嵌入並與 HNSW 向量索引比對,以便快速找出最近鄰,接著結果以廣度優先走訪沿圖形邊擴展。向量那一步負責找到進入點。圖形那一步負責蒐集周邊脈絡。對於取決於實體之間關係的問題,第二階段往往就是讓答案正確的關鍵。
多跳推理端點
引擎提供專用的 /query/multihop 端點,會在生成答案前沿知識圖譜走訪多跳。這是針對沒有單一文件能回答、模型必須結合不同節點事實的問題。你拿到的是一條相連的證據鏈,而不是單一相符的片段。
模組化的文字與影像外掛
文字嵌入、實體擷取與答案生成放在 8001 埠的 Python 文字外掛,影像儲存與嵌入則在 8002 埠的獨立外掛執行。你只需啟動需要的部分。影像外掛提供兩種後端:與文字向量空間共用的視覺 LLM 描述模式,或是不需呼叫 LLM、能提供真正視覺相似度的 CLIP 編碼器。
與 OpenAI 相容的 LLM 用戶端
LLM 用戶端採用與 OpenAI 相容的 API,因此可以接上 OpenAI、Ollama、Groq、相容 Gemini 的端點與類似服務。換供應商是改設定,不是改程式碼。需要本機推理嗎?走 Ollama 那條路就行。
Rust 核心與防崩潰的差異儲存
運算層以 Rust 撰寫,並在 8000 埠提供 HTTP API。它內含 LSM 風格的差異儲存,搭配預寫記錄與檔案鎖定,因此匯入的變更能撐過重新啟動。並行嵌入快取(moka)與結果快取則減少常見查詢的重複運算。
內建可觀測性與驗證
管理端點提供 /health、/metrics、/graph/stats 與節點清單,指標則以相容 Prometheus 的格式輸出。API 金鑰驗證與權杖桶限流器位於中介層。這少了一層要自己建的東西。你可以立刻把引擎放在多個用戶端前面。
優缺點
優點
- 預設自架,私有文件留在你自己的基礎架構上。
- 圖形擴展能處理純向量搜尋常漏掉的多跳問題。
- 與 OpenAI 相容的 LLM 用戶端讓你能透過 Ollama 在本機執行推理。
- 模組化外掛讓你略過不需要的影像支援或文字功能。
- 開源,完整的 Rust 核心與 Python 外掛都能讀、能改。
缺點
- 建置屬於開發者等級:從原始碼建置需要 Docker 加上 Rust 1.80+ 與 Python 3.11+,非技術使用者難以入手。
- 沒有託管方案或網頁儀表板,因此託管、擴充與可用性都由你負責。
- 文件以程式碼為主,這表示你得先花時間讀儲存庫與設定檔,第一次查詢才會成功。
常見問題
它是檢索引擎,結合向量搜尋與圖形走訪,從你自己的文件回答問題,再把檢索到的脈絡交給 LLM。圖形那一步,正是它與基本片段比對式 RAG 架構的分野。
相關內容
探索與 LinkingMem — Graph-native RAG Engine 相關的工具、技能與文章。
LinkingMem — Graph-native RAG Engine 替代方案
Forefront
Forefront · 程式設計Forefront 是一個用來打造開源 AI 的網頁平台。你可以用自己的資料微調主流的開源語言模型、評估它們的表現,再透過 API 執行,或匯出後自行架設。想要封閉式平台的便利、卻堅持要自己擁有模型與資料的開發者,就是這裡的目標客群。
Startkit
StartKit.AI · 程式設計Startkit 是一套用來打造 AI SaaS 與 AI 包裝產品的樣板。可以把它想成一個 AI 新創樣板,把枯燥的部分都先接好了:驗證、Stripe 與 Lemon Squeezy 付款、用量限制、交易型電子郵件,以及一套能與 OpenAI、Anthropic、Groq 或 Llama 溝通的 AI API 啟動套件。你複製儲存庫、設定價格,然後專心在產品中使用者真正願意付費的部分。它建構於 React 與 Tailwind 之上的 Next.js,所以大部分的樣板程式碼對你來說並不陌生。
Testim
Tricentis · 程式設計Testim 是專為網頁、行動與 Salesforce 應用程式打造的 AI 測試自動化平台,用來建立並執行端到端測試。它靠機器學習在介面變動時維持測試穩定,團隊因此少花時間修補壞掉的定位器。對於一款今天就能開始使用的自動化測試工具來說,這表現不算差。你透過在瀏覽器錄製動作來建立測試,需要更多控制時再補上 JavaScript。對忙碌的 QA 團隊來說,這是個可靠的選擇。
