第五段階:AI応用シーンの探索

DeepLearning.AIが提供するRAGシステム開発コース。ベクトルデータベースとLLMを使用して、本番環境レベルの検索拡張生成アプリケーションを構築する方法を学びます。アーキテクチャ設計からデプロイメント評価までの全プロセスを網羅。

RAGVectorDatabaseLLMApplicationWebSiteVideoFreeEnglish

Retrieval Augmented Generation (RAG) コース詳細紹介

コース概要

これはDeepLearning.AIが提供する、包括的なRetrieval Augmented Generation(RAG)システムコースです。学習者がアーキテクチャ設計からデプロイ、評価に至るまで、本番環境レベルのRAGアプリケーション開発知識を習得することを目指します。

コースプラットフォーム:DeepLearning.AI / Coursera
講師:ザイン・ハサン(Together AI シニアAI/MLエンジニア、トロント大学講師)
コース時間:5時間のビデオ + 20時間以上のプログラミング演習
コースレベル:中級
学習方法:自己ペース学習

講師紹介

ザイン・ハサンは、10年近い経験を持つAIエンジニア兼教育者で、以下の職務を歴任しました。

  • Together AI:AI/ML開発リレーションズエンジニア
  • Weaviate:ベクトルデータベースと情報検索に従事
  • トロント大学:講師として機械学習システムを教える
  • 学術界、スタートアップ、テクノロジー業界で豊富な経験を持つ
  • オープンソースソフトウェア、教育、コミュニティ構築に情熱を注ぐ

彼の指導スタイルは、従来の講義というよりも、経験豊富なチームメンバーから学ぶようなものです。

コースの主要内容

3つの主要な学習ポイント

  1. 実世界のRAGアプリケーション

    • 検索と生成がどのように連携するかを学ぶ
    • 信頼性が高く、柔軟なRAGシステムを構築するために各コンポーネントを設計する
  2. 検索技術とベクトルデータベース

    • キーワード検索
    • セマンティック検索
    • ハイブリッド検索
    • チャンキング技術
    • クエリ解析
    • ヘルスケアやEコマースなど、複数の分野でのアプリケーションをサポート
  3. プロンプト設計、評価、デプロイ

    • 検索コンテキストを最大限に活用するプロンプトエンジニアリング
    • RAGシステムのパフォーマンス評価
    • 本番環境向けパイプラインの準備

コースカリキュラム(5つのモジュール)

モジュール1:RAG入門

トピック

  • RAGのユースケース
  • RAGアーキテクチャの概要
  • LLMの基礎紹介
  • Pythonの概要
  • LLMの呼び出し方法
  • 情報検索の基礎

実践プロジェクト

  • 検索およびプロンプト拡張関数の記述
  • 最初のRAGシステムの構築
  • 構造化入力をLLMに渡す

モジュール2:情報検索と検索の基礎

トピック

  • リトリーバーアーキテクチャの概要
  • メタデータフィルタリング
  • キーワード検索(TF-IDFとBM25)
  • セマンティック検索
  • RAGにおけるベクトル埋め込み
  • ハイブリッド検索
  • 検索評価と指標

実践プロジェクト

  • セマンティック検索、BM25、Reciprocal Rank Fusionの実装と比較
  • 異なる検索方法がLLMの応答に与える影響の観察

モジュール3:ベクトルデータベースによる情報検索

トピック

  • ANN(近似最近傍)アルゴリズム
  • ベクトルデータベース
  • Weaviate APIの紹介
  • チャンキング技術
  • クエリ解析
  • クロスエンコーダーとColBERT
  • リランキング

実践プロジェクト

  • Weaviateと実際のニュースデータセットを使用してRAGシステムを拡張
  • ドキュメントのチャンキング、インデックス作成、検索の実行

モジュール4:RAGにおける大規模言語モデル

トピック

  • Transformerアーキテクチャ
  • LLMサンプリング戦略
  • LLMの能力を探る
  • 適切なLLMの選択
  • プロンプトエンジニアリング
  • ハルシネーション問題への対処
  • LLMパフォーマンスの評価
  • エージェンティックRAG
  • RAG vs. ファインチューニング

実践プロジェクト

  • 仮想アパレルストア向けにドメイン固有のチャットボットを開発
  • カスタムデータセットに基づいてよくある質問に答え、製品の提案を行う
  • Together AIがホストするオープンソースLLMを使用

モジュール5:本番環境、評価、デプロイ

トピック

  • 本番環境の課題
  • RAG評価戦略の実装
  • ロギング、モニタリング、可観測性
  • RAGシステムトレース
  • カスタム評価
  • 量子化技術
  • コスト vs 応答品質のトレードオフ
  • レイテンシ vs 応答品質のトレードオフ
  • セキュリティ
  • マルチモーダルRAG

実践プロジェクト

  • 動的価格設定などの現実的な課題への対処
  • モニタリングとデバッグのためのユーザーインタラクションの記録
  • チャットボットの信頼性向上

技術スタックとツール

主要ツール

  • ベクトルデータベース:Weaviate
  • LLMプラットフォーム:Together AI(オープンソースLLM)
  • モニタリングツール:Phoenix (Arize)
  • 開発言語:Python

関連技術

- ベクトル埋め込み
- セマンティック検索
- BM25キーワード検索
- ハイブリッド検索 (TF-IDF + セマンティック)
- Reciprocal Rank Fusion
- クロスエンコーダー
- ColBERT
- チャンキング戦略
- クエリ解析
- リランキング
- プロンプトエンジニアリング
- 量子化

実際の応用分野

コースでは、以下の分野からの実際のデータセットを使用します。

  • 📰 メディア:ニュースデータセット
  • 🏥 ヘルスケア:医療文書
  • 🛍️ Eコマース:製品データ、価格情報
  • 📊 金融:財務文書

学習成果

コース修了後、あなたは以下のことができるようになります。

✅ RAGシステムの各部分を設計し、実装する
✅ ユースケースに適した正しいアーキテクチャを選択する
✅ Weaviateなどのベクトルデータベースを使用する
✅ プロンプトと検索戦略を実験する
✅ Phoenixなどのツールを使用してパフォーマンスを監視する
✅ 主要なトレードオフを理解する:

  • ハイブリッド検索をいつ使用するか
  • コンテキストウィンドウの制限をどのように管理するか
  • レイテンシとコストのバランスをどのように取るか ✅ RAGパイプラインを評価し、反復的に改善する
    ✅ 新しい手法とエコシステムの進化に適応する
    ✅ 概念実証から実際のデプロイへと移行する

前提条件

  • 必須:中級レベルのPythonスキル
  • 推奨:生成AIの基礎知識
  • 推奨:高校数学レベル

コースの特徴

🎯 実践指向

  • 5つの段階的なプログラミング演習
  • シンプルなプロトタイプから本番レベルのコンポーネントまで
  • 実世界のデータセット

📚 体系的な学習

  • コンポーネントレベルおよびシステムレベルの技術を網羅
  • 基本原理と実際のトレードオフを理解
  • 急速に進化するRAGエコシステムに適応

🏆 認定証の取得

コース修了後、DeepLearning.AIから認定証が授与され、実際のツールと技術を使用してRAGシステムを構築・評価するスキルが証明されます。

RAGの重要性

なぜRAGが必要なのか?

大規模言語モデルは強力ですが、正しい情報がない場合、しばしば誤りを犯します。RAGは以下の方法でこの問題を解決します。

  1. 応答の根拠付け:モデルの応答を、関連性の高い、通常はプライベートまたは最新のデータに基づかせる
  2. 外部知識へのアクセス:LLMのトレーニング時に含まれていなかった関連情報を検索する
  3. 精度の向上:ドメイン固有の、プライベートな、または最新の知識ベースを使用する

RAGの応用シナリオ

  • 🔧 社内ツール:企業知識ベースのクエリ
  • 💬 カスタマーサービスアシスタント:製品ドキュメントに基づくサポート
  • 🎯 専門アプリケーション:医療、法律、金融などの分野における専門システム
  • 📱 パーソナライズされたアシスタント:ユーザーデータに基づくカスタマイズされたサービス

学習アドバイス

DeepLearning.AIの推奨事項に基づき:

  1. 専用の学習スペースを作る:静かで整理された、邪魔の入らない作業スペースを確保する
  2. 一貫した学習計画を立てる:決まった学習時間を設定し、習慣にする
  3. 定期的に休憩を取る:ポモドーロテクニック(25分学習 + 5分休憩)を使用する
  4. コミュニティに参加する:フォーラム、ディスカッショングループ、コミュニティ活動に参加する
  5. 積極的に学習する:メモを取り、要約し、他人に教えたり、実際のプロジェクトに応用したりする

コースへのアクセス

関連コースの推奨

RAGに興味がある場合は、以下のコースも学習できます。

  • Building and Evaluating Advanced RAG Applications
  • Knowledge Graphs for RAG
  • LangChain: Chat with Your Data
  • Building Multimodal Search and RAG
  • Building Agentic RAG with LlamaIndex

まとめ

これは、以下のような方々に適した、包括的で詳細なRAGコースです。

  • POCから本番環境への移行を目指すエンジニア
  • 信頼性が高く、スケーラブルなLLMアプリケーションを構築したい開発者
  • RAGシステム設計のトレードオフを理解したいAI実務者
  • 最新のRAG技術とツールを習得したい学習者

このコースは、技術的な実装を教えるだけでなく、システム思考とエンジニアリングの意思決定能力を養うことに重点を置いており、学習者が進化し続けるRAGエコシステムの中で競争力を維持できるよう支援します。