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

BigQuery と LangChainで実現するRAGパイプライン

Avatar for Kotaro Kotaro
July 26, 2024

BigQuery と LangChainで実現するRAGパイプライン

機械学習の社会実装勉強会第37回の発表内容です。
https://machine-learning-workshop.connpass.com/event/324630/

Avatar for Kotaro

Kotaro

July 26, 2024
Tweet

Other Decks in Technology

Transcript

  1. LLMの課題 Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMs https://arxiv.org/abs/2312.05934

    不正確な回答 トレーニングデータにない情報は知らない - 最新情報 - 機密情報 - … LLM ? RAG 追加の情報を外部ソースから与える ファインチューニング LLMを再学習させる LLMの知識を拡張させる方法 「昨日の東京の天気は?」
  2. RAGの基本構造 社内文書等 Vector DB Embedding Embedding LLM 4. 質問文: 有給休暇は何日?

    + 参考情報: 有給休暇は20日 1. 質問文: 有給休暇は何日? 5. 回答文: 有給休暇は20日です 0. Vector DBに保存 3. 参考情報取得 2. ベクトル検索
  3. RAGの基本構造 外部情報 ベクトル 6月23日は創立記念日 [0.3, 0.23, …] 開発部署の内線番号は 57 [0.2,

    0.67, …] 有給休暇は年間20日 [0.4, 0.4, …] 社内文書等 Vector DB Embedding 0. Embedding した外部データをVector DBに保存 [0.3, 0.23, …] [0.1, 0.3, …] [0.3, 0.5, …] ... Store
  4. RAGの基本構造 入力プロンプト (質問文) ベクトル 有給休暇は年間何日ですか? [0.3, 0.23, …] VectorDBの情報 入力プロンプトとの類似度

    6月23日は創立記念日 [0.3, 0.23, …] 0.3 有給休暇は年間 20日 [0.2, 0.67, …] 0.8 開発部署の内線番号は57 [0.4, 0.4, …] 0.2 1. 質問文をEmbedding 2. ベクトル検索により類似度の高い文章を 3. 参考情報として取得
  5. RAGの実装 (今回のデモ ) 1. VertexAIEmbeddingsを使用してテキストデータをembeddingする https://api.python.langchain.com/en/latest/embeddings/langchain_google_vertexai.embeddings.VertexAIEmbeddings.html 2. BigQueryVectorStoreを用いてBigQueryに格納する https://api.python.langchain.com/en/latest/bq_storage_vectorstores/langchain_google_community.bq_storage_vectorstores.bigquer y.BigQueryVectorStore.html

    3. create_retrieval_chain で 一連のRetrieval の処理を実行する https://api.python.langchain.com/en/latest/chains/langchain.chains.retrieval.create_retrieval_chain.html 使用したNotebook: https://github.com/kootr/ml-study-session/tree/main/20240727_bq_rag_langchain 参考にした記事: https://cloud.google.com/blog/ja/products/ai-machine-learning/rag-with-bigquery-and-langchain-in-cloud ↑少しライブラリの情報が古いです
  6. まとめ - RAG は LLM の回答の精度を向上させる有用な手法 - ベクトル検索の精度を高めることが重要 - Langchain

    で BigQuery を Vector DB として利用できる - RAG パイプラインを実現できる
  7. Tutorial: ChatGPT Over Your Data (langchain) 検索拡張生成(RAG)とは (Google Cloud) 元論文

    https://arxiv.org/pdf/2005.11401 サーベイ論文 https://arxiv.org/pdf/2312.10997v5 参考文献