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
0
290
LangChainでデータ分析エージェントを作ってみる
機械学習の社会実装勉強会 第39回 (
https://machine-learning-workshop.connpass.com/event/328440/
) の発表資料です。
熊懐葵
September 29, 2024
Tweet
Share
More Decks by 熊懐葵
See All by 熊懐葵
Claude Codeで進めるAWSリソースのTerraform移行
aoikumadaki
0
63
n8nで定期成果報告の資料づくりを自動化する
aoikumadaki
0
170
LangGraphとFlaskを用いた社内資料検索ボットの実装④GithubRetriever構築編
aoikumadaki
0
80
LangGraphとFlaskを用いた社内資料検索ボットの実装③アプリケーション構築編
aoikumadaki
0
110
LangGraphとFlaskを用いた社内資料検索ボットの実装②Retriever構築編
aoikumadaki
0
200
LangGraphとFlaskを用いた社内資料検索ボットの実装①AIエージェント構築編
aoikumadaki
0
400
StreamlitとLangChainを使った表画像OCRアプリの実装
aoikumadaki
3
780
AWS LambdaとLangSmithを使った社内レポート添削システムMinervaの実装
aoikumadaki
0
330
Other Decks in Technology
See All in Technology
20251029_Cursor Meetup Tokyo #02_MK_「あなたのAI、私のシェル」 - プロンプトインジェクションによるエージェントのハイジャック
mk0721
PRO
6
2.2k
アノテーション作業書作成のGood Practice
cierpa0905
PRO
1
350
触れるけど壊れないWordPressの作り方
masakawai
0
600
SRE × マネジメントレイヤーが挑戦した組織・会社のオブザーバビリティ改革 ― ビジネス価値と信頼性を両立するリアルな挑戦
coconala_engineer
0
410
RemoteFunctionを使ったコロケーション
mkazutaka
1
170
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
760
データエンジニアとして生存するために 〜界隈を盛り上げる「お祭り」が必要な理由〜 / data_summit_findy_Session_1
sansan_randd
0
310
re:Inventに行くまでにやっておきたいこと
nagisa53
0
890
初海外がre:Inventだった人間の感じたこと
tommy0124
1
160
OpenCensusと歩んだ7年間
bgpat
0
300
AIがコードを書いてくれるなら、新米エンジニアは何をする? / komekaigi2025
nkzn
24
16k
Raycast AI APIを使ってちょっと便利なAI拡張機能を作ってみた
kawamataryo
0
230
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
76
5.1k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
RailsConf 2023
tenderlove
30
1.3k
Designing for humans not robots
tammielis
254
26k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Unsuck your backbone
ammeep
671
58k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
940
Building an army of robots
kneath
306
46k
Six Lessons from altMBA
skipperchong
29
4k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
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を使用
• 基本的なデータ分析の性能を確認 今後 • 性能の限界→是非試してみてください!(※性能向上も速い) • マルチモーダル性能の強化に期待