Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
BigQuery と LangChainで実現するRAGパイプライン
Search
Kotaro
July 26, 2024
Technology
0
190
BigQuery と LangChainで実現するRAGパイプライン
機械学習の社会実装勉強会第37回の発表内容です。
https://machine-learning-workshop.connpass.com/event/324630/
Kotaro
July 26, 2024
Tweet
Share
Other Decks in Technology
See All in Technology
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.4k
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
420
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
350
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
150
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
今日から始めるAmazon Bedrock AgentCore
har1101
4
420
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
190
猫でもわかるKiro CLI(セキュリティ編)
kentapapa
0
110
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
450
Featured
See All Featured
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
280
Automating Front-end Workflow
addyosmani
1371
200k
Building AI with AI
inesmontani
PRO
1
710
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Crafting Experiences
bethany
1
52
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
4 Signs Your Business is Dying
shpigford
187
22k
Building an army of robots
kneath
306
46k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Transcript
BigQuery と LangChain で実現する RAG パイプライン 2024/07/27 機械学習の社会実装勉強会 第37回
LLMの課題 Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMs https://arxiv.org/abs/2312.05934
不正確な回答 トレーニングデータにない情報は知らない - 最新情報 - 機密情報 - … LLM ? RAG 追加の情報を外部ソースから与える ファインチューニング LLMを再学習させる LLMの知識を拡張させる方法 「昨日の東京の天気は?」
RAGとは RAG (Retrieval-Augmented Generation) - 外部データベースから関連する情報を検索(Retrieval) - 質問文を拡張(Augument) - それを基に回答を生成(Generation)
RAGの基本構造 社内文書等 Vector DB Embedding Embedding LLM 4. 質問文: 有給休暇は何日?
+ 参考情報: 有給休暇は20日 1. 質問文: 有給休暇は何日? 5. 回答文: 有給休暇は20日です 0. Vector DBに保存 3. 参考情報取得 2. ベクトル検索
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
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. 参考情報として取得
RAGの基本構造 入力プロンプト (質問文+参考情報 ) 有給休暇は年間何日ですか? 参考情報:有給休暇は年間 20日 LLMの回答 有給休暇は年間20日です。 4.
拡張した質問文を生成し 5.LLMの回答を得る
効率的な情報検索 必要な情報を外部データベースから検索し、最新の情報を提供する 計算リソースの節約 必要な情報を都度検索するため、すべての知識をモデルに持たせる必要がない RAGの利点 比較的低コストで信頼性の高い回答が期待できる
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 ↑少しライブラリの情報が古いです
DEMO
課題 ベクトル検索の精度が回答品質に直結 - ドキュメントの適切な分割単位 - 誤字脱字・表記揺れ - 継続的なメンテナンス
まとめ - RAG は LLM の回答の精度を向上させる有用な手法 - ベクトル検索の精度を高めることが重要 - Langchain
で BigQuery を Vector DB として利用できる - RAG パイプラインを実現できる
Tutorial: ChatGPT Over Your Data (langchain) 検索拡張生成(RAG)とは (Google Cloud) 元論文
https://arxiv.org/pdf/2005.11401 サーベイ論文 https://arxiv.org/pdf/2312.10997v5 参考文献