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
adk-samples に学ぶデータ分析 LLM エージェント開発
Search
na0
November 23, 2025
Technology
1.8k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
adk-samples に学ぶデータ分析 LLM エージェント開発
DevFest Tokyo 2025
https://gdg-tokyo.connpass.com/event/369416/
na0
November 23, 2025
More Decks by na0
See All by na0
AI Agent 最前線: Agent Development Kit (ADK) から見る AI Agent に必要なインフラ
na0
1
1.2k
データエージェントのためのナレッジカタログ
na0
4
4k
データ活用 3.0 with Socrates
na0
2
2.2k
AI 時代のデータ戦略
na0
8
6.6k
BigQuery でできること、人間がやるべきこと
na0
0
1.4k
データ分析エージェント Socrates の育て方
na0
10
7k
AI エージェントと考え直すデータ基盤
na0
26
13k
メルカリにおけるデータアナリティクス AI エージェント「Socrates」と ADK 活用事例
na0
29
37k
BigQuery リリースノート - 2023年上半期 #bq_sushi
na0
3
530
Other Decks in Technology
See All in Technology
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
2
140
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
25k
最新技術に積極チャレンジ!EKS共通基盤のこれまでとこれから
daitak
0
290
少人数データチームのDevin活用実践事例
runandy16
2
210
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
500
DMMブックスのNext.js化を加速させるAI活用 / Migrating DMM Books to Next.js with AI
kentarom
1
300
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
4
1.1k
アクセスキー流出時の対応で再認識した攻撃側と防御側の非対称性について
kazzpapa3
1
510
Introduction to Bill One Development Engineer
sansan33
PRO
0
490
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
1
790
全社に広がるMCPサーバーを、 どう安全に管理するか MCPass開発の舞台裏
mtpooh
3
240
本番に近いテストをもっと手軽に - Postmanで広がるAPIテストの世界 / Expanding the World of API Testing with Postman
yokawasa
1
220
Featured
See All Featured
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
640
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Darren the Foodie - Storyboard
khoart
PRO
3
3.8k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
230
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
GraphQLとの向き合い方2022年版
quramy
50
15k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
270
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
710
Chasing Engaging Ingredients in Design
codingconduct
0
290
Transcript
Editable Location Naofumi Yamada @na0fu3y Analytics Engineer, Mercari, Inc. adk-samples
に学ぶ データ分析 LLM Agent 開発
na0 メルカリでデータ分析 LLM Agent をつくっている人。 Google Developer Expert - Cloud。
LLM Agent 開発の課題意識 • PoC したいけど最小構成って? • どう育てればよい?
今日のゴール • adk-samples を開発の羅針盤だと理解する • データ分析を例として育て方を理解する • 「使える」データ分析エージェントを持ち帰る
github.com/google/ adk-samples
30+ のサンプルエージェント • 双方向対話 bidi-demo • データ分析 data-science • 調査
deep-search • などなど...!
bidi-demo Google 検索できる 音声応答 Agent
from google.adk.agents import Agent from google.adk.tools import google_search agent =
Agent( name="google_search_agent", model="gemini-live-2.5-flash-preview-native-audio-09-2025", tools=[google_search], instruction="You are a helpful assistant." ) adk-samples/python/agents/bidi-demo/
data-science BigQuery と Python を扱うデータ分析 Agent
data-science のツール • BigQuery クエリ実行 • AlloyDB クエリ実行 • BigQuery
ML に関する知識検索 • 自然言語 to SQL • Python 実行
私たちに必須なツールは ...? • BigQuery クエリ実行 • AlloyDB クエリ実行 • BigQuery
ML に関する知識検索 • 自然言語 to SQL • Python 実行
私たちの Agent v1 from google.adk.agents import Agent from google.adk.tools.bigquery import
BigQueryToolset bigquery_toolset = BigQueryToolset(tool_filter=["execute_sql"]) root_agent = Agent( model="gemini-3-pro-preview", name="sample", instruction="You are a data science agent", tools=[bigquery_toolset], )
私たちの Agent v1 BigQuery にクエリを 実行できる
次の私たちに必要なツールは ...? • BigQuery クエリ実行 • BigQuery のテーブルの詳細を確認する • BigQuery
のテーブルを一覧する
私たちの Agent v2 bigquery_toolset = BigQueryToolset( tool_filter=[ "get_table_info", "list_table_ids", "execute_sql",
] )
私たちの Agent v2 データを教えると勝 手に調べて分析して くれる
私たちが他に必要なツールは ...? • BigQuery クエリ実行 • BigQuery のテーブルの詳細を確認する • BigQuery
のテーブルを検索する 一覧する
私たちの Agent v3 def rag_response(query: str) -> str: response =
rag.retrieval_query( rag_resources=[rag.RagResource(rag_corpus=OUR_CORPUS)], text=query, ) return str(response) root_agent = Agent( tools=[bigquery_toolset, rag_response], // 変更のない引数略 )
私たちの Agent v3 データを教えなくても 勝手に調べて分析し てくれる
そろそろガードレールも? • 利用者権限の認可下で動かす ◦ BigQuery クエリ実行 ◦ BigQuery のテーブルの詳細を確認する •
BigQuery のテーブルを検索する
私たちの Agent v4 credentials_config = BigQueryCredentialsConfig( client_id=os.getenv("OAUTH_CLIENT_ID"), client_secret=os.getenv("OAUTH_CLIENT_SECRET"), ) bigquery_toolset
= BigQueryToolset( tool_filter=["get_table_info", "execute_sql"], credentials_config=credentials_config )
私たちがやるべきこと • 欲望を言語化する ◦ 利用者目線の欲望レベルを上げていく ◦ 管理者目線のガードレールも忘れずに • つくる •
くりかえす
欲望が見つからない時は? • Gemini や同僚と話す • adk-samples を眺める • (na0 と話す)
私たちがやるべきこと(再) • LLM と協力して、欲望を言語化する • LLM と協力して、つくる • くりかえす
deep-search Deep Research の 実装例
ん? • Google 検索ツールを BigQuery やドキュメントを 参照するツールに置き換えたら...?
私たちがやるべきこと(再々) • LLM と協力して、欲望を言語化する • LLM と協力して、つくる • くりかえす