7週間で本格的なAI検索システムを作れるようになる!実践型RAGコース — production-agentic-rag-course

jamwithai/production-agentic-rag-coursePython5.0k

production-agentic-rag-courseは、学術論文を自動で取得・理解し、研究に関する質問にAIが答えてくれる「論文リサーチアシスタント」を7週間かけてゼロから構築する実践型の学習コースです。RAG(検索拡張生成)という、AIが外部の情報を検索してから回答を生成する仕組みを、プロの現場で使われる方法に沿って段階的に学べます。キーワード検索の基礎から始まり、AI検索、チャットボット、監視システム、さらにはTelegramでスマホからAIに質問できる仕組みまで、毎週ステップアップしながら構築していきます。すべてローカル環境で動作するため基本的に無料で、AIエンジニアリングの実践スキルを身につけたい方に最適なコースです。

🔥 なぜ話題?

RAG(検索拡張生成)はAIアプリケーション開発で最も需要の高いスキルの一つですが、チュートリアル止まりで本番運用レベルの構築方法を体系的に学べる教材は少なく、production-agentic-rag-courseはその需要にピッタリ応えています。特にLangGraphを使ったエージェント型RAGやTelegramボット連携など最新トレンドを網羅している点が注目を集めています。

💡 こう使える!

例えば、最新のAI研究論文を毎日自動で収集し、『最近の大規模言語モデルの省エネ手法にはどんなものがある?』とチャット画面やTelegramで質問すると、関連する論文の内容を踏まえた回答をAIが返してくれる、自分専用の研究アシスタントを作ることができます。

ユースケース: AIエンジニアリングを学びたい人が、学術論文を自動収集・検索・AIで回答してくれるリサーチアシスタントを自分の手で構築しながら、本番運用レベルのRAGシステムの作り方を習得する

  • 7週間でゼロから本番品質のRAGシステムを構築できる段階的カリキュラム
  • キーワード検索→ハイブリッド検索→LLM統合→エージェント型RAGまで実践的に学べる
  • LangGraphによるエージェント型RAGとTelegramボット連携で最新技術をカバー
  • すべてローカルで動作し基本無料、各週にブログ記事とJupyterノートブック付き
  • Langfuseによる監視やRedisキャッシュなど本番運用に必要な要素も含む

技術情報

言語

Python

ライセンス

MIT

最終更新

2026-02-28

スター数

5,001

フォーク数

1,198

Issue数

17

技術詳細

アーキテクチャ・技術スタック

production-agentic-rag-courseは、複数のサービスをDocker Composeで統合したマイクロサービス構成で動作します。

コンポーネント技術役割
APIサーバーFastAPIREST API、自動ドキュメント生成(ポート8000)
データベースPostgreSQL 16論文メタデータ・コンテンツの保存(ポート5432)
検索エンジンOpenSearch 2.19BM25キーワード検索+ベクトル検索のハイブリッド検索(ポート9200/5601)
ワークフローApache Airflow 3.0データ取り込みパイプラインの自動化(ポート8080)
LLMOllamaローカルLLMサーバー(ポート11434)
埋め込み生成Jina AIセマンティック検索用のエンベディング
キャッシュRedis高速キャッシュ(150〜400倍の高速化を実現)
監視LangfuseRAGパイプラインのトレーシングと可視化(ポート3000)
エージェントLangGraph状態ベースのエージェントワークフロー管理
ボットTelegram BotモバイルからのAIアクセス
UIGradioチャットインターフェース(ポート7861)

主要な機能一覧

  • 自動データ取り込み: arXiv APIから論文を自動取得、Doclingを使ったPDF解析
  • BM25キーワード検索: OpenSearchによる高精度なキーワード検索基盤
  • ハイブリッド検索: RRF(Reciprocal Rank Fusion)を用いたキーワード+セマンティック検索の融合
  • セクション対応チャンキング: 文書をセクション単位で分割し、オーバーラップ戦略を適用
  • ストリーミング応答: Server-Sent Eventsによるリアルタイムレスポンス
  • エージェント型RAG: ガードレール(不適切クエリの検出)、文書のグレーディング(関連性評価)、クエリ書き換え、適応的リトリーバル
  • プロンプト最適化: 80%のプロンプト削減で6倍の速度向上

パフォーマンス

  • Redisキャッシュにより150〜400倍の応答速度向上
  • プロンプト最適化で6倍の速度改善(80%のプロンプトサイズ削減)

開発ツール

  • UV: パッケージ管理
  • Ruff: コードフォーマッター/リンター
  • MyPy: 型チェック
  • Pytest: テストフレームワーク
  • Makefile: make startmake testmake healthなどの便利コマンド

API エンドポイント

エンドポイントメソッド内容
/healthGETヘルスチェック
/api/v1/papersGET保存済み論文一覧
/api/v1/searchPOSTBM25キーワード検索
/api/v1/hybrid-search/POSTハイブリッド検索
/api/v1/askPOSTRAG質問応答
/api/v1/streamPOSTストリーミングRAG応答

設定オプション

  • JINA_API_KEY: Week 4以降のハイブリッド検索に必須(無料APIキー)
  • TELEGRAM__BOT_TOKEN: Week 7のTelegramボットに必須
  • LANGFUSE__PUBLIC_KEY / LANGFUSE__SECRET_KEY: Week 6の監視機能用(オプション)

コスト

  • 基本無料: すべてローカルで動作
  • オプション: 外部LLMサービスを使う場合のみ約2〜5ドル

ライセンス

MITライセンス(商用利用可能)

インストール・クイックスタート

前提条件

  • Docker Desktop(Docker Compose付き)
  • Python 3.12以上
  • UVパッケージマネージャー
  • 8GB以上のRAM、20GB以上のディスク空き容量

インストール手順

# 1. リポジトリをクローン
git clone <repository-url>
cd arxiv-paper-curator

# 2. 環境変数の設定
cp .env.example .env
# .envファイルを編集(Jina APIキーやLangfuseキーを追加)

# 3. 依存関係のインストール
uv sync

# 4. 全サービスの起動
docker compose up --build -d

# 5. 動作確認
curl http://localhost:8000/health

特定の週のコードだけを試す場合

git clone --branch week3.0 https://github.com/jamwithai/arxiv-paper-curator
cd arxiv-paper-curator
uv sync
docker compose down -v
docker compose up --build -d

参考になる外部の関連記事

関連リポジトリ

PDF・Word・Excel・画像…なんでもMarkdownに一発変換!AI時代の万能ファイル変換ツール — markitdown

microsoft/markitdownPython109.1k

MarkItDownは、PDF、Word、Excel、PowerPoint、画像、音声、HTMLなど、さまざまな形式のファイルをMarkdown(シンプルな書式付きテキスト)に変換するPython製の

LLMアプリのレシピ集!ChatGPTから音声エージェントまで実例満載 — awesome-llm-apps

Shubhamsaboo/awesome-llm-appsPython99.0k

awesome-llm-appsは、ChatGPTやGeminiなどの大規模言語モデル(AIの文章生成技術)を使った実用的なアプリケーションの作り方を集めたレシピ集です。AIエージェント(自動でタスク

写真1枚でリアルタイム顔入れ替え!ワンクリックでディープフェイク映像を生成 — Deep-Live-Cam

hacksider/Deep-Live-CamPython90.5k

Deep-Live-Camは、たった1枚の写真を用意するだけで、ウェブカメラの映像やビデオの中の顔をリアルタイムに別人の顔に入れ替えられるソフトウェアです。「顔を選ぶ→カメラを選ぶ→ライブボタンを押す

使うほど賢くなるAIエージェント — 学習・記憶・自動化を全部入りで月5ドルから運用 — hermes-agent

NousResearch/hermes-agentPython87.5k

Hermes Agentは、Nous Research社が開発した「自己改善するAIエージェント」です。会話するたびに経験からスキルを自動生成し、ユーザーの好みや過去のやり取りを記憶して、使えば使うほ

AIに「このサイトで○○して」と頼むだけ!ブラウザ操作を全自動化するエージェント — browser-use

browser-use/browser-usePython84.1k

browser-useは、AI(人工知能)にウェブブラウザを操作させて、オンラインの作業を自動化できるPython製のツールです。「この求人に応募して」「買い物リストの商品をカートに入れて」といった自