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(Retrieval‑Augmented Generation)システムで、巨大でヘテロジニアスなドキュメントコレクションの取り扱いを目的としています。PDF、音声、動画、Anki フラッシュカードなど多様なファイルタイプにまたがる膨大な情報の検索と要約という課題を解決し、回答が実際のコンテンツに基づく出典付きであることにより幻覚を防止します。

How it works

システムは高リコールと高精度を確保するためにマルチステージパイプラインを使用します:

  1. Retrieval:埋め込みとマルチクエリリトリーバーでドキュメントを取得。
  2. Evaluation:"弱い" LLM(Eve the Evaluator)が初期取得結果から無関係なドキュメントを除外。
  3. Answering:"強い" LLM(Anna the Answerer)が残りの各ドキュメントから関連情報を抽出。
  4. Aggregation:最終 LLM(Carl the Combiner)がこれら個別の回答を単一の markdown 形式レスポンスに集約。整合性向上のため、回答は semantic clustering(scipy の階層クラスタリング)でグルーピングされた後に結合されます。

要約の場合、テキストをチャンクに分割し、強力な LLM を用いて詳細かつ論理的にインデントされた要約を作成し、前のチャンクからのコンテキストを保持します。

Who it’s for

広範かつ多様な情報源から確定的で出典付きの回答を抽出する必要がある研究者、学生、プロフェッショナル向けに設計されています。

Highlights

  • Broad File Support:PDF、EPUB、Word、PowerPoint、YouTube 動画、音声ファイル、Anki コレクションなど、15 種類以上のファイルタイプをサポート。
  • Extensible Architecture:CLI ツールと Python ライブラリの両方として利用可能で、Gradio ベースの Docker Web UI と Open‑WebUI ツール統合を提供。
  • Privacy-Focused:"プライベートモード" を搭載し、外部接続を遮断し API キーを使用しないことでデータをローカルに保持。
  • Advanced PDF Parsing:15 種類のローダーとスコアリングシステムを用いて、任意の PDF に最適なパーサーを選択(テーブル対応含む)。
  • Web Search Integration:DuckDuckGo を用いたウェブ検索の初期サポート。
  • Sourced Answers:すべての回答は検証のためにドキュメントハッシュへリンクされます。