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

検索拡張生成(RAG)をAWSで作る方法

 検索拡張生成(RAG)をAWSで作る方法

【connpass】
Fusic Tech Live Vol.19 機械学習~生成AI編(言語・音声)~
https://fusic.connpass.com/event/310627/

そのだ

April 24, 2024
Tweet

More Decks by そのだ

Other Decks in Technology

Transcript

  1. ©Fusic Co., Ltd. 2 苑⽥ 朝彰 Sonoda Tomotada - X:

    sonoda_mj - 2023 AWS Jr.Champions - 2024 Community Builders(ML & GenAI) コメント 最近AWS StepFunctionsにハマってる ⾃⼰紹介 はじめに 株式会社Fusic
  2. ©Fusic Co., Ltd. 5 Retrieval Augmented Generation(RAG) ⽣成系の⾔語 AI モデルに外部メモリをつけるというコンセプトのことを指す

    検索拡張⽣成(RAG)とは Vector Database LLM 質問 検索 返答 検索結果 引用:https://github.com/aws-samples/jp-rag-sample
  3. ©Fusic Co., Ltd. 13 RAGはどういう処理を⾏っているのか 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク

    トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる
  4. ©Fusic Co., Ltd. 14 今回の登場⼈物 User Embedding Model Vector DB

    LLM 質問をする⼈ テキストをベクトル にするモデル ベクトル⽤のDB テキストを⽣成する モデル
  5. ©Fusic Co., Ltd. 16 Vector DBにデータを⼊れる [0.1, 0.5, 0,3 …]

    Vector DB Embedding Model LLM データソース
  6. ©Fusic Co., Ltd. 17 Vector DBにデータを⼊れる ≈≈ { [0.1, 0.5,

    0,3 …] metadata: { text: AWSを業務で使っています。 dataSource: sonoda.md } } Vector DB Embedding Model LLM データソース
  7. ©Fusic Co., Ltd. 21 2. ベクトル化した質問を元に、Vector DBから似ているベクトルを探す { [0.1, 0.5,

    0,3 …] metadata: { text: AWSを業務で使っています。 dataSource: sonoda.md } } 似てるのあったわ Vector DB LLM
  8. ©Fusic Co., Ltd. 23 Embedding Model 4. LLMにプロンプトを投げる Vector DB

    LLM あなたはhogehogeです 以下の質問に答えてください # 情報 AWSを業務で使っています。 # 質問 苑⽥さんって誰ですか?
  9. ©Fusic Co., Ltd. 25 会話履歴も⼊れてみる 苑田とは誰ですか? AWSエンジニアです 詳細を教えてください 詳細とは何でしょうか? 苑田とは誰ですか?

    AWSエンジニアです 詳細を教えてください 彼はAWSだけではなく、Rubyも書ける ようです。緑のタイツを着ています。 会話履歴を使⽤しない場合 会話履歴を使⽤した場合
  10. ©Fusic Co., Ltd. 27 AI21 Labs、Anthropic、Cohere、Meta、Stability AI、Amazon などの⼤⼿ AI 企業が提供する⾼性

    能な基盤モデル (FM) を単⼀の API で選択できるフルマネージド型サービス Amazon Bedrockとは
  11. ©Fusic Co., Ltd. 28 RAGはどういう処理を⾏っているのか(再掲) 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク

    トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる
  12. ©Fusic Co., Ltd. 29 RAGはどういう処理を⾏っているのか(再掲) 1. 質問をベクトル化する 2. ベクトル化した質問を元に、Vector DBから似ているベク

    トル(上位n個)を探す 3. 検索結果と質問からプロンプトを作成 4. LLMにプロンプトを投げる 簡単に作成できる!!
  13. ©Fusic Co., Ltd. 30 Amazon Bedrock 内から基盤モデルをデータソースに接続して、検索拡張⽣成 (RAG) を⾏うことができる。 Knowledge

    Base for Amazon Bedrock Bedrock LLM Bedrock Embedding Model Vector DB Data Source or or or S3 様々なデータを⼊れる .txt, .md, .html, .doc/docx .csv, .xls/.xlsx, .pdf
  14. ©Fusic Co., Ltd. 40 実際の流れ or RAGの処理 会話ログの保存 RAGの処理 1.

    質問をベクトル化する 2. ベクトル化した質問を元に、 Vector DBから似ているベクトル (上位n個)を探す 3. 検索結果と質問からプロンプトを 作成 4. LLMにプロンプトを投げる 5. 回答を受け取る
  15. ©Fusic Co., Ltd. 43 まとめ 検索拡張⽣成(RAG)は、⾔語AIモデルに外部メモリを付けることで、未学習データにも対応可能にする技術。 Point 01 AWSではKnowledge Base

    for Amazon Bedrockを活⽤することでRAGを簡単に実装可能。 Point 02 サーバレスで構築することで、格安で検証可能。 Point 03
  16. ©Fusic Co., Ltd. 44 Thank You We are Hiring! https://recruit.fusic.co.jp/

    ご清聴いただきありがとうございました