Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ChatGPTの新機能「Function calling」を試してみた
Search
KMiura
June 18, 2023
Science
3
3.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
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
1.1k
Amazon Rekognitionを使ったインターホンハック
miura55
0
94
Pythonでルンバをハックしてみた
miura55
0
180
あなたの知らないクラフトビールの世界
miura55
0
370
Storage Browser for Amazon S3を触ってみた + α
miura55
0
230
Cloudflare R2をトリガーにCloudflare Workersを動かしてみた
miura55
0
230
あのボタンでつながるSORACOM
miura55
0
150
Postman Flowsで作るAPI連携LINE Bot
miura55
0
390
Lambdaと共に歩んだAWS
miura55
3
870
Other Decks in Science
See All in Science
会社でMLモデルを作るとは @電気通信大学 データアントレプレナーフェロープログラム
yuto16
1
440
次代のデータサイエンティストへ~スキルチェックリスト、タスクリスト更新~
datascientistsociety
PRO
2
20k
データベース12: 正規化(2/2) - データ従属性に基づく正規化
trycycle
PRO
0
1k
ランサムウェア対策にも考慮したVMware、Hyper-V、Azure、AWS間のリアルタイムレプリケーション「Zerto」を徹底解説
climbteam
0
180
Hakonwa-Quaternion
hiranabe
1
160
機械学習 - K近傍法 & 機械学習のお作法
trycycle
PRO
0
1.3k
Celebrate UTIG: Staff and Student Awards 2025
utig
0
380
People who frequently use ChatGPT for writing tasks are accurate and robust detectors of AI-generated text
rudorudo11
0
170
データマイニング - コミュニティ発見
trycycle
PRO
0
180
サイコロで理解する原子核崩壊と拡散現象 〜単純化されたモデルで本質を理解する〜
syotasasaki593876
0
130
機械学習 - K-means & 階層的クラスタリング
trycycle
PRO
0
1.2k
データマイニング - ウェブとグラフ
trycycle
PRO
0
210
Featured
See All Featured
Visualization
eitanlees
150
16k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
How STYLIGHT went responsive
nonsquared
100
6k
RailsConf 2023
tenderlove
30
1.3k
Optimizing for Happiness
mojombo
379
70k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
It's Worth the Effort
3n
187
29k
For a Future-Friendly Web
brad_frost
180
10k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
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