Upgrade to Pro — share decks privately, control downloads, hide ads and more …

RAGの基本と最新技術動向

Fumina Chihama
June 06, 2024
810

 RAGの基本と最新技術動向

Fumina Chihama

June 06, 2024
Tweet

More Decks by Fumina Chihama

Transcript

  1. 14 講師 講師自己紹介 丸岡 和人
 エンジニア育成を12年以上 やってます ❏ 未踏OB ❏

    大学時代にシステム開発会社を起業 ❏ 育成に関わった エンジニア/データサイエンティストは1000人以上 ❏ Kaggle Master、Kaggle Expertなどを排出 ❏ ITエンジニアになった教え子も多数 ❏ 某大手商社の生成AIプロジェクトを推進し全社導入 ❏ 詳しくはconnpassの参考URLを参照してください 参考URL① https://prtimes.jp/main/html/rd/p/000000028.000013257.html 参考URL② https://prtimes.jp/main/html/rd/p/000000025.000013257.html
  2. 17 最初に ChatGPTについてのおさらい ChatGPTの正式名称は 「Chat Generative Pre-trained Transformer」 直訳すると チャット生成

    事前学習済み トランスフォーマー つまり 「チャットを生成する、事前にデータで訓練してある トランスフォーマー」の意味
  3. 23 RAGについて ちなみに... RAGは、2020年5月に発表された論文「Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks」で初めて登場しま した。

    この論文のファーストオーサーであるパトリック・ルイス博士はMeta社 に在籍中にこの論文を執筆しました。 https://arxiv.org/abs/2005.11401?ref=blog-ja.allganize.ai
  4. 27 RAGの課題 まずは各処理のどこにボトルネックがあるのか特定するのが重要 【検索前】 ・データ前処理  ・無関係な文章を取り除く(LLMを使ってもよし)  ・可能ならデータを構造化する(LLMを使ってもよし)  ・データのチャンクの長さを最適化する(文章単位?ページ単位?章単位?)  ・メタ情報を入れる(ファイル名、ファイルパス、日付、など)  ・PDFなどのデータの場合にはOCRで文字起こしするがこの文字起こしの精度もかなり重要

    ・クエリ変換  ・クエリを適切な回答が得られるように変換する(Hyde)  ・クエリに複数内容が含まれている場合はクエリを分割して結果を足し合わせる ・クエリによる分類  ・クエリから質問の難易度を想定して、処理を変更する(CRAG) 【検索時】 ・ベクトル検索以外の手法も含めて比較検討(キーワード検索・SQLなど) ・再帰的、階層的に検索 ・複数クエリに基づき検索して結果を足し合わせて再評価(Re-Ranking) ・検索結果が質問に対して適切か評価する(Self-RAG) 【検索後】 ・プロンプトチューニング ・複数結果がある場合は別手法でスコアづけして再評価(Re-Ranking) ・生成した回答が与えた文章と異なることを言っていないか評価(Self-RAG) ・生成した回答が、質問に対して有効か評価(Self-RAG) ・検索結果の評価指標を入れてPDCAを回す(RAGAS,ROUGE、BLEU、METEOR)
  5. 28 RAGの課題 まずは各処理のどこにボトルネックがあるのか特定するのが重要 【検索前】 ・データ前処理  ・無関係な文章を取り除く(生成AI / 予測AI / ルールベース)

     ・可能ならデータを構造化する(生成AI / 予測AI / ルールベース)  ・データのチャンクの長さを最適化する(文章単位?ページ単位?章単位?)  ・メタ情報を入れる(ファイル名、ファイルパス、日付、など)  ・PDFなどのデータの場合にはOCRで文字起こしするがこの文字起こしの精度もかなり重要 ・クエリ変換  ・クエリを適切な回答が得られるように変換する(Hyde)  ・クエリに複数内容が含まれている場合はクエリを分割して結果を足し合わせる ・クエリによる分類  ・クエリから質問の難易度を想定して、処理を変更する(CRAG) 【検索時】 ・ベクトル検索以外の手法も含めて比較検討(キーワード検索・SQLなど) ・再帰的、階層的に検索 ・複数クエリに基づき検索して結果を足し合わせて再評価(Re-Ranking) ・検索結果が質問に対して適切か評価する(Self-RAG) 【検索後】 ・プロンプトチューニング ・複数結果がある場合は別手法でスコアづけして再評価(Re-Ranking) ・生成した回答が与えた文章と異なることを言っていないか評価(Self-RAG) ・生成した回答が、質問に対して有効か評価(Self-RAG) ・検索結果の評価指標を入れてPDCAを回す(RAGAS,ROUGE、BLEU、METEOR)
  6. 36 プレゼント 受け取りかた 1. スマホを手にとって
 
 2. LINEを開いて
 
 3.

    QRコード読み取って
 
 4. 友達登録
 
 5. 「RAG」と送信
 
 6. 運営の励みになりますので
 アンケートをお願いします
 
 7. 明日の朝までに届けます