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
LangChainでデータ分析エージェントを作ってみる
Search
熊懐葵
September 29, 2024
Technology
390
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
LangChainでデータ分析エージェントを作ってみる
機械学習の社会実装勉強会 第39回 (
https://machine-learning-workshop.connpass.com/event/328440/
) の発表資料です。
熊懐葵
September 29, 2024
More Decks by 熊懐葵
See All by 熊懐葵
AI時代のインターン研修再設計 コーディング力から課題創出・業務遂行力へ
aoikumadaki
0
170
Claude Codeで進めるAWSリソースのTerraform移行
aoikumadaki
0
130
n8nで定期成果報告の資料づくりを自動化する
aoikumadaki
0
280
LangGraphとFlaskを用いた社内資料検索ボットの実装④GithubRetriever構築編
aoikumadaki
0
130
LangGraphとFlaskを用いた社内資料検索ボットの実装③アプリケーション構築編
aoikumadaki
0
180
LangGraphとFlaskを用いた社内資料検索ボットの実装②Retriever構築編
aoikumadaki
0
270
LangGraphとFlaskを用いた社内資料検索ボットの実装①AIエージェント構築編
aoikumadaki
0
500
StreamlitとLangChainを使った表画像OCRアプリの実装
aoikumadaki
3
970
AWS LambdaとLangSmithを使った社内レポート添削システムMinervaの実装
aoikumadaki
0
420
Other Decks in Technology
See All in Technology
サーバー常駐型の 簡易障害調査AI エージェントを作ってみた話
masayoshi
1
520
Master Dataグループ紹介資料
sansan33
PRO
1
4.9k
PM領域でのAI Agentの活用
lycorptech_jp
PRO
0
230
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
240
Benchmarking Vector Databases: pgvector vs. LanceDB
tsho
0
110
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
610
人気商品が「ちゃんと買える」をつくる ー ECの負荷改善
ykagano
1
190
魔法少女がClaude Codeを監視する / ccportal-deck
noriyukitakei
3
120
多摩川(.dev)ランニング入門 / Tamagawa.dev#3
fujiwara3
3
260
[RSJ26] NarrativeFlow: Flow-Based Vision-Language-Action Model Using Robot Velocity Fields
keio_smilab
PRO
0
140
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
210
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
1
150
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Believing is Seeing
oripsolob
1
200
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
550
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Six Lessons from altMBA
skipperchong
29
4.5k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
460
A better future with KSS
kneath
240
18k
Exploring anti-patterns in Rails
aemeredith
3
490
Transcript
LangChainで データ分析エージェントを作ってみる 2024/09/29 機械学習の社会実装勉強会 第39回 熊懐 葵
目次 • 背景: 商圏分析 • データ分析エージェント • イメージ • 実装(LangChain
> Pandas Dataframe) • 性能調査(サンプルデータ・実データ) • 処理プロセスの調査
背景: 商圏分析 商圏分析 • 商圏: 特定の店舗が顧客に影響を及ぼすエリア(コンビニ…半径500m以内→徒歩10分) • 商圏の人の属性や人流・競合の立地などから、新店舗の立地選定やマーケティング戦略に活用 既存サービスの課題 •
使用料金の高さ・機能の複雑さ モチベーション • 使いやすい商圏分析ツールを作れないか • LLMを用いたデータ分析エージェントを作りたい
既存サービスの例: MarketAnalyzer https://www.giken.co.jp/products/marketanalyzer/case/ より 多機能→複雑
データ分析エージェントのイメージ 駅別乗降客数データ + 「人がよく乗降する駅は?」 実行結果から回答を出力「〇〇駅で△人です」 コード類やソフトの複雑な操作などせずに データ分析をすることができる 質問とデータから、適切な データ分析プログラムを生成 ↓
プログラムを実行 ユーザー エージェント
LangChainライブラリを用いて実装した 実行例
データ分析エージェントの実装 • OpenAI API Key • LangChain v0.3 create_pandas_dataframe_agent 必要なもの
• データ読み込み • エージェント作成 • エージェント実行 処理内容 ▼ データの読み込み・エージェント作成 (公式) < エージェントが自動で コードを生成しデータを操作する ので、扱いには注意
データ分析エージェントの実装 • OpenAI API Key • LangChain v0.3 create_pandas_dataframe_agent 必要なもの
• データ読み込み • エージェント作成 • エージェント実行 処理内容 ▼ エージェント実行 終了と打つと会話が終了 会話履歴を保存
性能調査: サンプルデータ ▼ 従業員データ(Chat GPTが生成) ▼ 実行結果1 ID 名前 年齢
部門 給料
性能調査: サンプルデータ ※0.6895282023 ▼ 実行結果2 ▼ 従業員データ(Chat GPTが生成) ID 名前
年齢 部門 給料
性能調査: 実データ ▼ 大分県の中心部の駅乗降客数データ 国土数値情報ダウンロードサイト https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-S12-v3_1.html 駅名、駅コード、運営会社、路線名、 2011~2022年の乗降客数(年度別) …その他(35カラム)
性能調査: 実データ データ通りの回答ではある ▼ 実行結果 国土数値情報ダウンロードサイト https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-S12-v3_1.html ▼ データ(一部表示)
性能調査: 実データ ▼ 実行結果 国土数値情報ダウンロードサイト https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-S12-v3_1.html ▼ データ(一部表示) ←増加量(スプレッドシートで検算)
v0.3(9月中旬~)で性能が向上している? ▼ LangChain v0.2での実行結果 元データと異なる数値 v0.3 ではマルチモーダル機能が強化される予定らしい 図の出力機能などでもっと便利になりそう
処理プロセスの調査 ▼ verbose=Trueにする
処理プロセスの調査 ▼ 実行結果 分析に必要なコードを生成し、実行している →数値部分が決定的な出力になる
まとめ 背景 • 商圏分析ツールの高価さ・使いにくさ • LLMを用いて、安価で使いやすいデータ分析ツールは作れないか 今回 • LangChain Toolkitsのcreate_pandas_dataframe_agentを使用
• 基本的なデータ分析の性能を確認 今後 • 性能の限界→是非試してみてください!(※性能向上も速い) • マルチモーダル性能の強化に期待