Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AIハッカソン 発表資料
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Jo Hattori
May 29, 2023
Technology
1.1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AIハッカソン 発表資料
以下のイベントの発表資料
https://kobe-engr-lab.connpass.com/event/280327/
Jo Hattori
May 29, 2023
More Decks by Jo Hattori
See All by Jo Hattori
Laravel×DDDやってみた
jh_178bz
1
51
ADRを書こう
jh_178bz
1
57
Other Decks in Technology
See All in Technology
現場を動かすAIエージェント#2_製造業現場でのAI活用から見た、ハマる罠と実践知
kintotechdev
2
190
AI時代のエンジニアの情報発信〜個人の発信を組織の力に変える〜
ryo_kawamata
1
7.4k
企画からFlutter実装まで、1つの機能を一貫して開発したプロセスと成果物
khiroyuki1003
1
160
SLOを阻む不安
sraku2159
0
230
なぜ東京にいる私が、新潟の技術コミュニティを運営するのか by 八雲慎之助
yakumo
0
220
試験勉強はGrokBotでやれ
maigo999
0
110
Metadata - Section 3 : Dublin Core Standard · DC
mohab1
0
110
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
170
Kiro Crew の Bot (続く役目を任せる窓口) | 目指せ Kiro マスター 12
inariku
PRO
2
290
"AWSはちょっと苦手"でも大丈夫。AWS Blocks で手軽に作る Flutter のバックエンド #FlutterKaigi
tacck
PRO
0
160
[JAWS Festa 2026]一番いい仕事は、請求書に現れない / jawsfesta2026
sh_fk2
2
340
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
280
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
4
1.2k
For a Future-Friendly Web
brad_frost
184
11k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Bash Introduction
62gerente
615
220k
Docker and Python
trallard
47
4.3k
Odyssey Design
rkendrick25
PRO
2
930
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
760
Reality Check: Gamification 10 Years Later
codingconduct
0
2.4k
Facilitating Awesome Meetings
lara
57
7.2k
My Coaching Mixtape
mlcsv
0
380
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
470
Transcript
AI Hackathon データ可視化ツール sAIneria 株式会社SceneLive Jou Hattori・Daigo Hiroi
制作背景・ユースケース 2 ▰ 非エンジニア社員が時々SQLでデータ抽出する機会 がありSQLを学習したが挫折したことがある ▰ 営業シーンにおける様々なデータを活用していくた め、データ感度を上げていきたい ▰ 探索的なデータ分析を素早く行う上で、非エンジニア
が「プログラミングを覚える」というハードルを下げたい
sAIneria 使用技術・機能紹介
技術構成 ▰ Backend: FastAPI(Python) ▰ Frontend: React, MUI, SWR, Recoil…
▰ LLM: OpenAI gpt-3.5-turbo, text-davinci-003 ▰ LLM Library: LangChain 弊社メインスタックはVue.js, Laravel 技術的な挑戦も含めた 4
主要機能 ▰ 自然言語から各プロダクトSQL生成 ▰ 自然言語からデータ可視化グラフの生成 ▰ 生成されたSQLの実行可否判定 ▰ 生成したSQLの編集 ▰
生成したSQLのコピー ▰ 生成したSQLを各プロダクトへ実行しCSV出 力 5
sAIneria AI活用の仕組み ~~~ SQL生成 ~~~
Chainとは? LLMとプロンプトテンプレートを組み合わせ、複数の処理を 行う一つのコンポーネントのようなもの。 LangChain SQL Database Chain (結果→自然言語) ユーザー入力+プロンプトテンプレ→LLM LLMからSQL→データベース実行結果→LLM
LLMから結果を自然言語にして返却 自社データの実行結果をLLMへ渡せない! 各プロダクトのデータ構造に合わせたSQL 生成 7
指示→結果ではなく、指示→SQL生成に特化させる 各プロダクトのデータ構造に合わせたSQL 生成 8 1. 事前に配置したDDLファイルからSQLiteで一時DB作成 2. 入力プロンプトから使用するテーブル選択(LLM) 3. 使用するテーブル情報+プロンプト+テンプレでLLMへ
4. SQLiteを対象とするがプロダクトDBに合わせた方言を指 定する(MySQL, Postgreなど) 5. 生成したSQLでは実行しない、しても空 →実行エラーを渡すことでクエリチェックできる 6. ユーザーへレスポンス
sAIneria AI活用の仕組み ~~~ 可視化グラフ生成 ~~~
LangChain Agentとは? プロンプトから手段・実行順番を解決しツールを組み合わ せて結果を導くもの。 LangChain Pandas DataFrame Agent CSV・JSONなどからDF+プロンプト→LLMへ LLMで実行コード生成・実行結果→LLMへ
プロンプトと実行結果を比較・検討→LLMへ LLMから最終的な結果を出力 自社データの実行結果をLLMへ渡せない!2回目 CSVから可視化グラフを生成 10
指示→結果ではなく、指示→可視化コード生成に特化させる CSVから可視化グラフを生成 11 DF操作・可視化のコード生成において実データのDFは不要→ ダミーデータフレームを作成 DFのカラム名、各カラムの型情報、値の範囲などで十分可視 化グラフを生成できる プロンプトにdf.head(), df.dtypes, df.describe()の情報を含める
と実データはLLMへ流さなくて良い ※カラム名などに重要な情報が含まれる場合は注意!!
CSVから可視化グラフを生成 12 1. ツールを用いて生成したコードを実行 2. 実行コードとその結果を合わせてLLMへ 3. 実行エラーがない状態のコードを生成 4. 生成したコードを利用し、実際のDFで実行
→現在はタイムアウトのみ、今後は一時コンテナなどで制 限する 5. 実行した結果グラフをユーザーへレスポンス
sAIneria デモ動画
おまけ プロンプト 14
15 ご清聴ありがとうございました Presentation template by SlidesCarnival