rag-pipeline
🇵🇱 ポーランド語版
RAG Pipeline
ローカルで動作し、GPU で高速化された、研究論文向けの検索パイプラインです。レイアウトを考慮したチャンキングで PDF を解析し、実際の書誌メタデータ(DOI → CrossRef)を取得し、dense + sparse のハイブリッド埋め込みを生成して、すべてを Qdrant に保存します。リランキング付きのハイブリッド検索も可能で、Claude から MCP サーバー経由で直接クエリできるように設計されています。
なぜ
論文をフォルダに入れただけでは、検索の対象になりません。このパイプラインは、PDF の山を検索可能なものに変えます。単純な文字数分割ではなく、セクション/段落を認識した適切なチャンク、CrossRef から自動取得される引用に使えるメタデータ、意味的検索と完全一致検索の両方に対応する dense + sparse のハイブリッド検索を備えています。これらはすべて MCP ツールとして公開されるため、Claude は論文を直接検索して取り込むことができます。
Related MCP server: Personal Research Assistant MCP
特徴
レイアウトを考慮した PDF パース — Docling を使用し、単純な文字数分割ではなく段落/セクション単位でチャンク化します。各チャンクにページ番号とセクション見出しを保持します。
実際の書誌メタデータ — 1 ページ目から DOI を正規表現で抽出し、CrossRef API 経由で完全な引用情報(タイトル、著者、ジャーナル、年、巻/号/ページ)を解決します。DOI が見つからない場合は PDF 自体のメタデータにフォールバックします。
ハイブリッド埋め込み — チャンクごとに dense(
BAAI/bge-m3)+ sparse(SPLADE、prithvida/Splade_PP_EN_v1)ベクトルを生成し、Qdrant にまとめて保存してハイブリッド検索を実現します。バックグラウンド取り込み — Redis + RQ ワーカーにより、大きな PDF でもリクエストをブロックしません。埋め込み用の GPU 対応 Docker コンテナも含みます。
MCP サーバー — Claude に 2 つのツールを公開します。
search_papers(リランキング付きハイブリッド検索)とingest_paper(PDF を直接インデックスに取り込む)です。Claude が直接クエリできる研究論文用メモリとして機能します。Docker 化 —
docker-composeにより、Qdrant + Redis + GPU 対応 API/ワーカーコンテナを構成します。
技術スタック
Python · Docling(PDF パース) · sentence-transformers(BGE-M3 dense 埋め込み) · fastembed(SPLADE sparse 埋め込み) · Qdrant(ハイブリッドベクトル検索) · Redis + RQ(バックグラウンドジョブキュー) · FastAPI(予定されている API レイヤー) · MCP(Claude 用 Model Context Protocol サーバー) · Docker Compose、CUDA 12.9 GPU コンテナ。
ステータス
作業中です。まだ完全にはエンドツーエンドで接続されていません。
現在動作するもの: ingest.py は CLI から単独で実行できます。PDF を解析し、メタデータを取得し、(dense + sparse で)埋め込みを生成して、Qdrant にアップサートします。起動中の Qdrant インスタンスを指定すれば動作します。
不足しているもの: main.py、つまり /search、/ingest、/health を公開する予定の FastAPI サービスです。Dockerfile はこのファイルをコピーし、Docker Compose のヘルスチェックはこのファイルに ping を送り、RQ ワーカーはジョブを投入する何かを期待しており、mcp_server.py の 2 つの Claude ツールはどちらも localhost:8000 への HTTP でこのファイルを呼び出します。これがないと、ワーカーが消費するものも、MCP ツールが通信するバックエンドもなくなり、docker-compose up はビルドに失敗します(API/ワーカーイメージのビルドステップが存在しないファイルをコピーするため)。
docker-compose.yml のバインドマウントも、以前のセットアップの Windows パス(S:\RAG-data\...)を指したままです。実行する前に、Qdrant/Redis/モデルキャッシュデータを置きたい場所に合わせて調整してください。
実行方法(現時点)
uv sync
# Qdrant needs to be running somewhere ingest.py can reach:
docker run -p 6333:6333 qdrant/qdrant
python ingest.py path/to/paper.pdf完全なパイプライン(Docker Compose スタック、/search と /ingest API、MCP ツール)は、main.py が存在すれば動作します。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Claude to perform hybrid search across local documents by combining semantic vector retrieval and BM25 keyword matching for optimal context recovery. It supports multiple file formats including PDF, CSV, and Markdown, leveraging local Ollama models for private and efficient document querying.4MIT
- FlicenseNot gradedqualityDmaintenanceEnables semantic search and conversational querying across a personal research library of PDFs, DOCX, and other documents using a vector database. It provides tools for document summarization, finding related papers, and high-accuracy retrieval for AI clients like Claude Desktop.
- AlicenseBqualityCmaintenanceEnables Claude Code to interact with Jupyter notebooks, perform semantic search over knowledge files, and manage research projects.334MIT
- AlicenseAqualityCmaintenanceA second brain for researchers — gives Claude persistent memory of your papers, field, and working history, with answers cited from your own indexed library1003AGPL 3.0
Related MCP Connectors
Search arXiv/Semantic Scholar/OpenAlex + medical evidence (PubMed/Europe PMC) + LaTeX/PDF tools.
Search arXiv and ACL Anthology, retrieve citations and references, and browse web sources to accel…
Search 340M+ academic papers — citation graphs, semantic similarity, and AI literature reviews.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jansc4/rag-pipeline'
If you have feedback or need assistance with the MCP directory API, please join our Discord server