模型 / 資料集
LLMQuant/quant-mind avatar
LLMQuant/quant-mind

QuantMind 拆解:把 arXiv 論文與新聞壓成可追溯的 typed knowledge

QuantMind is an agent-native knowledge extraction and retrieval framework for quantitative finance.

2,875 個 Star472 個 ForkPythonMIT

秒懂

它是什麼?
QuantMind 是 LLMQuant 針對量化金融的知識抽取與檢索框架,主打「不要 import,直接打開」的 agent-native 工作流,同時仍是一個可安裝的 Python 套件。它的核心主張是確定性前處理加上自帶時間戳與引用的知識單元,代價是知識形狀與流程目前只覆蓋少數幾種來源。
適合誰用?
如果你的團隊已經在用 Claude 或 Codex 寫量化研究流程,而且痛點是「同一篇論文每次重讀都要重新抽取、抽完還查不到出處」,QuantMind 值得先 clone 下來跑一次 PaperStructureCfg 的結構樹,確認 page-cited 節點是否符合你的引用要求。反過來說,若你需要的是涵蓋多種資產類別、多語言財報或高頻 tick 資料的抽取管線,README 目前只列出 PaperFlow 與 collect_news 兩條已出貨的路徑,其餘形狀還在 Roadmap 上,現在導入會被迫自己補齊。
可以商用嗎?
可以。MIT 是寬鬆授權:你可以使用、修改並販售以它為基礎的軟體,只需保留著作權與授權聲明。
還在維護嗎?
有在維護。儲存庫最近一次提交在 32 天前。
用什麼語言寫的?
主要是 Python(依據 GitHub 的語言統計)。

以上回答依據專案的 GitHub 資料(最近同步於 2026年9月15日)與我們的分析,不構成法律意見。

開源專案深度解析

量化研究裡真正被浪費掉的不是算力,是重複閱讀

一份賣方報告、一篇 arXiv 論文、一則盤後新聞,內容本身不會消失,消失的是它們之間的關聯。分析師讀完論文寫了筆記,三個月後另一位同事要引用同一個結論,只能重新翻 PDF,因為當初的筆記沒有帶頁碼、沒有記錄讀的是哪一版。QuantMind 針對的就是這個斷點:它把原始金融資訊 refine 成結構化知識,而每個知識單元都帶型別、帶引用、帶時間戳,README 的說法是「so it persists and time-queries standalone」。

目標使用者寫得很明確:一類是建構這些 refinement flow 的人,而且越來越常是 coding agent;另一類是把 QuantMind 當普通 Python 套件 import 的人。前者對應 repo 本身的 agent-native 設計,後者對應 PaperFlow 這類 API。這個雙重定位不是行銷話術,它直接決定了你該用哪條路徑:想改流程就用 agent 開 repo,想接進既有服務就裝套件。

確定性前處理與 typed knowledge 之間的分工

整個資料流可以拆成兩段,而兩段的性質完全不同。前處理是 fetch、parse、format 加 clean,README 明講「with no model in the loop」,所以 provenance 是精確且可重播的。這一段沒有 LLM,也就不會有模型版本漂移導致的輸出變化,同樣的輸入重跑應該拿到同樣的來源忠實值。

第二段才是知識成形。這裡有兩種形狀:一種是 Paper 的結構樹,用於整份文件;另一種是平面卡片,用於 News、Earnings、Factor、Thesis。每個 artifact 都是自帶的,包含自己的文字、一個 as_of 時間戳、一個輕量 source ref。這個設計的實際後果是:你可以對知識做時間查詢,而不必回頭去追原始檔案的版本。

檢索層分成三塊。rag/ 負責 chunking 與 BM25 或相似度比對,library/ 負責本地持久化與語意搜尋,mind/ 是 agentic、以推理為基礎的檢索。三者合起來服務 RAG、Agentic RAG、deep research 與 data-MCP serving。要注意的是 README 把這套定位為「the target surface」,同時註明今天實際出貨的是 PaperFlow 與 collect_news,其餘要看 Roadmap。這張架構圖描繪的是終點,不是現況。

兩種啟動方式:讓 agent 開 repo,或直接裝套件

agent 路徑的指令很短:

git clone https://github.com/LLMQuant/quant-mind.git cd quant-mind && claude

README 註明也可以換成 codex。進到 session 之後,你用自然語言描述要的 pipeline,例如「Build me a source-first paper artifact for arXiv 1706.03762, then persist it and search the summary.」。依照 README 的描述,agent 會讀 AGENTS.md 的合約、載入相關 contexts/ 頁面、寫出 pipeline,並在交回變更前跑 scripts/verify.sh。

library 路徑用 uv 管理套件:

uv venv && source .venv/bin/activate uv pip install -e .

核心 API 是 PaperFlow。這裡有個容易忽略的設計:cfg 的型別決定知識形狀。PaperStructureCfg 對應 PaperStructureTree,PaperSemanticCfg 對應 PaperSemanticResult。README 給的結構樹範例是 PaperFlow(PaperStructureCfg(model="gpt-5.6-luna")),再 await flow.build(ArxivIdentifier(id="1706.03762v7")),拿到的 tree 有 id 與 nodes。也就是說模型名稱是寫在 cfg 裡的,換模型等於換一次抽取行為,這件事在評估時必須納入考量。

另外兩個操作值得記住:collect_news 收集可重播的來源時間窗,batch_run 把任何操作扇出到一組輸入上。README 特別點出「You never write asyncio.gather boilerplate」,這是它相對於自己拼管線的實際便利處。

repo 本身就是產品介面,這個賭注有多大

QuantMind 把 harness engineering 當成主要賣點,口號是「Don't import it. Open it.」。具體機制有五層:AGENTS.md 與 CLAUDE.md 作為 repo 層級合約,把 always-on 規則寫一次給每個打開 repo 的 agent;contexts/ 採漸進揭露,每頁有 Quick Summary 與 Contents 預覽,讓 agent 只載入任務需要的那一頁;quantmind-dev 是可攜技能,目前涵蓋 contributor setup、commit、PR 與 component workflow,並同時鏡像給 Claude 與 Codex;兩邊的 hooks 共用同一批腳本,避免同一條規則維護兩份;scripts/verify.sh 依固定順序跑 lint、型別、import 邊界與測試,快速失敗,而且 CI 跑的是同一支腳本。

它背後的賭注寫得很直白:a weak model in a good harness beats a strong model running bare。這是可反駁的主張,不是描述。從工程角度看,把驗證腳本與 CI 綁成同一支,確實消除了「本機過、CI 不過」這類最常見的落差;共用 hook 腳本也讓兩個 agent 的行為一致。但這套設計的價值高度依賴你本來就用 Claude 或 Codex。若你的團隊用的是別的 coding agent,README 只提到這兩個,其餘適配情況在提供的材料裡看不到。

限制:覆蓋面窄、模型寫進 cfg、持久化規模未知

最明顯的限制是知識形狀的覆蓋範圍。README 自己標註「shipping today: PaperFlow · collect_news」,而結構圖上那些 typed knowledge 與應用面屬於 target surface。這意味著如果你要處理的是財報電話會議逐字稿、多語言申報文件或 tick 級資料,現在的出貨內容幫不上忙,你得照 repo 的合約自己補,而這正是它希望你做的事,也是它要求你付出的成本。

第二個限制是模型綁定。cfg 型別決定輸出形狀,模型名稱也寫在同一個 cfg 裡,所以抽取品質與模型選擇耦合在一起。要比較兩次抽取的差異,你得同時控制 cfg 型別與模型版本,否則變因混在一起。

第三,library/ 是本地持久化。對於每天產生數十份文件的研究團隊,本地儲存可能夠用;對於需要跨團隊共享語料的組織,README 沒有描述任何多用戶或遠端後端的方案,這部分在提供的材料中無法確認。

第四,也是實際導入時最容易卡住的:專案沒有檢索到的 release。README 有 2026-07 的 agent-native 重建公告,也有 NeurIPS 2025 workshop 的論文消息,但沒有版本號可對照。你 clone 到的 master 就是你的版本,升級時沒有 changelog 可以比對行為變化。

對照 LlamaIndex:抽取框架與通用索引框架的差別

同一個問題,LlamaIndex 走的是另一條路。它的核心抽象是通用文件的節點與索引,開發者用 reader、node parser、index 這類積木自行組裝,金融只是其中一種應用場景,因此財報、法規、新聞都能接,代價是引用與時間戳的語意要靠你自己在 metadata 裡定義,框架不保證每個節點都自帶 as_of。

QuantMind 反過來,先固定知識形狀,再要求來源配合。Paper 就是結構樹,News 與 Earnings 就是卡片,每個 artifact 自帶文字、時間戳與 source ref。這個約束換來的是檢索時的確定性:你查到的東西一定知道自己是什麼型別、來自哪裡、什麼時候成立。

差別在擴充方向上。LlamaIndex 要加一種新文件型別,通常是寫一個 reader;QuantMind 要加一種新知識形狀,得先定義 cfg 型別與對應的輸出結構,因為型別決定形狀這件事是寫進 PaperFlow 的呼叫約定裡的。前者上手快但語意鬆散,後者上手慢但語意收斂。如果你的檢索評估對引用精確度要求高,後者的約束是資產;如果你的語料種類雜到無法先歸類,前者會更省事。

授權與維護成本:MIT 之下的實際負擔

授權是 MIT,寬鬆,可商用、可修改、可再散布,只要保留著作權聲明。這對內部研究工具或包進商業產品都是低摩擦的選擇。需要注意的是 repo 內含 assets/ 圖片與一份 arXiv 論文(arXiv:2509.21507)的對應關係,程式碼授權與論文、圖檔的授權是不同的事,若你要轉載圖表或引用論文內容,應各自確認,這裡不構成法律意見。

維護成本主要落在兩處。一是缺乏版本號:沒有 release 可對照,升級等同於直接跟 master 走,行為變化只能靠 diff 與 scripts/verify.sh 的結果判斷。二是 agent-native 設計本身需要維護:AGENTS.md、CLAUDE.md、contexts/ 各頁、兩份鏡像的 skills、共用的 hook 腳本,這些都是會隨 agent 產品更新而需要調整的資產。好處是 verify.sh 與 CI 同源,讓這類調整至少有回歸測試兜底;壞處是這套 harness 的價值與你使用的 agent 綁定,換 agent 就等於重做一次適配。

編輯結論

如果你的團隊已經在用 Claude 或 Codex 寫量化研究流程,而且痛點是「同一篇論文每次重讀都要重新抽取、抽完還查不到出處」,QuantMind 值得先 clone 下來跑一次 PaperStructureCfg 的結構樹,確認 page-cited 節點是否符合你的引用要求。反過來說,若你需要的是涵蓋多種資產類別、多語言財報或高頻 tick 資料的抽取管線,README 目前只列出 PaperFlow 與 collect_news 兩條已出貨的路徑,其餘形狀還在 Roadmap 上,現在導入會被迫自己補齊。動手前先確認三件事:PaperSemanticCfg 產出的 chunk 粒度是否對得上你的檢索評估、library/ 的本地持久化能否承載你的語料規模、以及 scripts/verify.sh 在你的環境跑不跑得過,因為 CI 用的是同一支腳本,它不過就等於你的貢獻進不了主線。

官方來源

  1. Issues
  2. License: MIT
  3. LLMQuant/quant-mind on GitHub
  4. Project website
  5. README
社群筆記

社群筆記