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
59
n8nで定期成果報告の資料づくりを自動化する
aoikumadaki
0
160
LangGraphとFlaskを用いた社内資料検索ボットの実装④GithubRetriever構築編
aoikumadaki
0
79
LangGraphとFlaskを用いた社内資料検索ボットの実装③アプリケーション構築編
aoikumadaki
0
110
LangGraphとFlaskを用いた社内資料検索ボットの実装②Retriever構築編
aoikumadaki
0
200
LangGraphとFlaskを用いた社内資料検索ボットの実装①AIエージェント構築編
aoikumadaki
0
390
StreamlitとLangChainを使った表画像OCRアプリの実装
aoikumadaki
3
760
AWS LambdaとLangSmithを使った社内レポート添削システムMinervaの実装
aoikumadaki
0
330
Other Decks in Technology
See All in Technology
20251014_Pythonを実務で徹底的に使いこなした話
ippei0923
0
220
AIとともに歩んでいくデザイナーの役割の変化
lycorptech_jp
PRO
0
660
Oracle Autonomous AI Database:サービス概要のご紹介
oracle4engineer
PRO
2
15k
ニッポンの人に知ってもらいたいGISスポット
sakaik
0
190
Introduction to Bill One Development Engineer
sansan33
PRO
0
300
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3k
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
110
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
8.9k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
FinOps について (ちょっと) 本気出して考えてみた
skmkzyk
0
180
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
3
280
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
3
1.1k
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
115
20k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
We Have a Design System, Now What?
morganepeng
53
7.8k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
The Language of Interfaces
destraynor
162
25k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Being A Developer After 40
akosma
91
590k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Java REST API Framework Comparison - PWX 2021
mraible
34
8.9k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
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を使用
• 基本的なデータ分析の性能を確認 今後 • 性能の限界→是非試してみてください!(※性能向上も速い) • マルチモーダル性能の強化に期待