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
ChatGPTの新機能「Function calling」を試してみた
Search
KMiura
June 18, 2023
Science
3
2.8k
ChatGPTの新機能「Function calling」を試してみた
2023/06/18【ブース出展もあるよ】IoT縛りの勉強会! IoTLT vol.100 @ #NT金沢
https://iotlt.connpass.com/event/285035/
KMiura
June 18, 2023
Tweet
Share
More Decks by KMiura
See All by KMiura
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
83
あのボタンでつながるSORACOM
miura55
0
73
Postman Flowsで作るAPI連携LINE Bot
miura55
0
260
Lambdaと共に歩んだAWS
miura55
3
590
Bedrock Knowledge baseを使って今年の上半期のニュースを聞いてみた(リベンジ編)
miura55
0
170
Is it wrong to use a web framework with Lambda?
miura55
0
150
Bedrock Knowledge baseを使って今年の上半期のニュースを聞いてみた
miura55
0
160
AWS×IoTについて語り合う会
miura55
0
100
クラウドを活用して家電をハックしてみた
miura55
0
110
Other Decks in Science
See All in Science
【人工衛星】座標変換についての説明
02hattori11sat03
0
130
Introduction to Graph Neural Networks
joisino
PRO
4
2.1k
ベイズのはなし
techmathproject
0
340
240510 COGNAC LabChat
kazh
0
160
科学で迫る勝敗の法則(名城大学公開講座.2024年10月) / The principle of victory discovered by science (Open lecture in Meijo Univ. 2024)
konakalab
0
230
学術講演会中央大学学員会八王子支部
tagtag
0
250
拡散モデルの概要 −§2. スコアベースモデルについて−
nearme_tech
PRO
0
700
機械学習を支える連続最適化
nearme_tech
PRO
1
180
WeMeet Group - 採用資料
wemeet
0
3.7k
ABEMAの効果検証事例〜効果の異質性を考える〜
s1ok69oo
4
2.1k
AI科学の何が“哲学”の問題になるのか ~問いマッピングの試み~
rmaruy
1
2.3k
白金鉱業Meetup Vol.16_【初学者向け発表】 数理最適化のはじめの一歩 〜身近な問題で学ぶ最適化の面白さ〜
brainpadpr
10
1.6k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Documentation Writing (for coders)
carmenintech
66
4.5k
The Pragmatic Product Professional
lauravandoore
32
6.3k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
Making Projects Easy
brettharned
116
5.9k
Speed Design
sergeychernyshev
25
670
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
810
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Transcript
ChatGPTの新機能「Function calling」 を試してみた KMiura(@k_miura_io)
自己紹介 • 三浦 耕生(こうき) • 自動運転のスタートアップのエ ンジニア • JAWS UG名古屋運営
@k_miura_io koki.miura05
祝・IoT LT 100回
ChatGPT使ってますか? • それまでのAIチャットと違ってテキスト以外 にもソースコードを生成することができる のでエンジニアにも重宝されている • リリースされてから半年たっても日々進化 し続けている • 無料でも割と精度高く返答される(無課金
なのでGPT-4は未検証)
ChatGPTにはAPIが存在する • APIを使えば自分のシステムに入れること で自前のアプリケーションに簡単に ChatGPTを導入できる • PythonやNode.jsのSDKも提供されている • 無料でトライアルから始めることができる
ベタな事例 やっぱりチャットといえばLINE
ChatGPT Plugin • いろんなサービスがサードパーティのプラ グインを提供している • スマートスピーカーで言うところのスキル みたいなもん? • ChatGPT
Plusのユーザーが優先的に使 える
自分でも機能拡張したい
Function calling • 6/13にリリースされた新機能 • メッセージの内容をもとに予め用意した関 数を呼び出すために必要な引数をJSON オブジェクトを生成する機能 • 関数を呼び出すために必要なデータ構造
を定義すると確実に関数を呼び出すため に必要なデータを取り出せる
LINE botに実装してみた • 指定した場所の天気を尋ねるLINE bot • 指定した都市の天気をAPIから取得している • 天気以外は普通にChatGPTが返答する
DEMO
1回目のAPIリクエスト • 入力のパラメータと型を指定することでそれを もとに入力されたメッセージを解析してくれる • 解析した内容を関数の入力に使用する • ある程度意味のあるプロパティー名を指定す ることで意図した名前が取得できる •
Enumも定義できる https://openai.com/blog/function- calling-and-other-api-updates
2回目のリクエスト • 1回目のリクエストによってfuncitonsに定義し た解析モデルにより取得した値をもとに関数を 実行した結果をリクエストに追加する • 関数の出力を ”role”: “function”の値として 入力することでその入力値をよしなにレスポン
スに変換してくれる https://openai.com/blog/function- calling-and-other-api-updates
まとめ • ChatGPTの新機能Function Callを使えば自前のアプリのための機能拡張を簡単に作 ることができる • 関数の入力、出力をJSONでやり取りすることであとはよしなに返答を作ってくれる • ある程度プログラミングセンスが問われる(AIに寄り添おう)
宣伝 https://machine-learning.connpass.com/event/284031/
ちょっとだけ展示物紹介 • IoTLTブースにてマスクをつけている人を識別 するシステムを展示中 • Vol.71のLTで発表した内容のイベント向けデモ • マスクを付けている人も付けてない人も是非お 試しを! https://bit.ly/42JrIEI
↑ ProtoPedia
END