thiswillbeyourgithub/wdoc
Summarize and query from a lot of heterogeneous documents. Any LLM provider, any filetype, advanced RAG, advanced summaries, scriptable, etc
What it solves
wdoc 是一個 RAG(檢索增強生成)系統,旨在處理大型且異質的文件集合。它解決了在多種檔案類型(如 PDF、音訊、影片與 Anki 閃卡)中查詢與彙總龐大資訊的問題,同時確保答案有來源且根據實際內容,以防止幻覺。
How it works
系統使用多階段管線以確保高召回率與精確度:
- Retrieval:使用向量嵌入與多查詢檢索器取得文件。
- Evaluation:由「弱」LLM(Eve the Evaluator)過濾掉初始檢索中不相關的文件。
- Answering:由「強」LLM(Anna the Answerer)從每個剩餘文件中抽取相關資訊。
- Aggregation:最終 LLM(Carl the Combiner)將這些個別答案聚合成單一的 markdown 格式回應。為提升連貫性,答案會先以語意分群(透過 scipy 的階層式分群)再合併。
對於摘要,系統會將文字切成區塊,使用強 LLM 產生詳細且具邏輯縮排的摘要,同時保留前一區塊的上下文。
Who it’s for
此系統適合需要從廣泛且多樣的資訊來源中提取明確、可追溯答案的研究人員、學生與專業人士。
Highlights
- Broad File Support:支援 15 種以上檔案類型,包括 PDF、EPUB、Word、PowerPoint、YouTube 影片、音訊檔與 Anki 集合。
- Extensible Architecture:同時提供 CLI 工具與 Python 函式庫,並有基於 Gradio 的 Docker 網頁 UI 以及 Open‑WebUI 工具整合。
- Privacy-Focused:內建「私密模式」可封鎖外部連線並避免使用 API 金鑰,確保資料留在本機。
- Advanced PDF Parsing:使用 15 種不同的 loader 與評分機制,為每個 PDF 選擇最佳解析器,並支援表格。
- Web Search Integration:提供初步的 DuckDuckGo 網路查詢支援。
- Sourced Answers:每個答案皆會回鏈至文件雜湊,以供驗證。