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
調整さんの調整結果をカレンダーへ登録するGPTsを作った話
Search
Hiroshi Sano
March 14, 2024
Technology
750
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
調整さんの調整結果をカレンダーへ登録するGPTsを作った話
Hiroshi Sano
March 14, 2024
More Decks by Hiroshi Sano
See All by Hiroshi Sano
Gmail APIでメールを扱おうとしたら結構辛かった話
hrsano645
0
530
非同期タスクキューを使って業務効率化した話
hrsano645
1
1.5k
非同期タスクキューを使って業務を自動化しまくった話
hrsano645
0
1.8k
ご当地グルメマップを作ろう
hrsano645
2
1.4k
Python駿河 #28 富士宮焼きそばを食べ歩きしたいのでマップを作った話
hrsano645
0
140
Python駿河 #1 MicroPythonを使ってみよう!
hrsano645
0
1.2k
IoTLT vol.51 お風呂IoT Mk2作りました
hrsano645
1
2k
IoTLT vol.46 蛇口IoTに挑戦した記録
hrsano645
1
1k
PWA入門してみた話(iPad Proで!)
hrsano645
1
1.1k
Other Decks in Technology
See All in Technology
動画配信アプリでの Engage SDK 導入 — TVer Android が Play ストアにコンテンツを届けるまで
techtver
PRO
0
120
AIで開発は速くなったのに、なぜ現場は楽にならないのか 〜あなたの組織のボトルネックを突き止めるワークショップ〜
jacopen
1
270
20260906 「AWS運用入門」著者が教える、運用業務への生成AI活用入門
masaruogura
0
240
Amazon S3 Tablesに全部任せてみた結果——コンパクション/スナップショット管理は本当に手放せるか
shigeruoda
0
400
Microsoft 365 Copilot chat -tekoälypalvelun tietosuojaongelmat
hponka
0
430
KAEN Company Deck
kaen
PRO
0
320
Backstageでつくるセルフサービスな社内開発基盤
kikunosuke75
1
340
こんなアーキテクチャ図は嫌だ BEYOND THE TIME: 半年後の自分へ贈る15のメッセージ / 15 of Anti-pattern in AWS Architecture Diagrams
naospon
3
250
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
0
130
WAF 運用改善の承認サイクル/SRE_BizReach_MIXI_1
visional_engineering_and_design
0
150
Bet AI Day 2026丨Agentは、「金融」という巨大産業の何を変えられるのか
layerx
PRO
0
1k
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
250
Featured
See All Featured
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
30 Presentation Tips
portentint
PRO
1
390
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Site-Speed That Sticks
csswizardry
13
1.5k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
500
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Docker and Python
trallard
47
4.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
Transcript
調整さんの調整結果をカレンダーへ登録するGPTsを作っ た話 ChatGPTのLT会~面倒なことはChatGPTにやらせようコミュニティ主催~ 面倒なことはChatGPTにやらせよう第3刷記念 & コミュニティ400人記念 2024-03-14 @hrs_sano645 1
お前誰よ / Self Introduction 佐野浩士(Hiroshi Sano)@hrs_sano645 : 静岡県富士市 : 株式会社佐野設計事務所 代表取締役
: PyCon mini Shizuoka Stuff / Shizuoka.py / Unagi.py / Python駿河 CivicTech, Startup Weekend Organizer Hobby: Camp , DIY , IoT 2
今回のテーマ: 調整さんの調整結果をカレンダーへ登録するGPTsを作った話 3
何で作った? 4
趣味のイベント運営に携わっているものがいろいろありまして Unagi.py、Python駿河(静岡Pythonコミュニティ) 4月にUnagi.pyのイベントあります PyCon mini Shizuoka(地域のPythonカンファレンス) ちなみに2024は夏頃開催計画中! Startup Weekend富士(起業体験コミュニティ) 6月に開催予定
地元の子供向けのイベント など... いろんな縁がつながってこうなったけど、最近ちょっとやり過ぎと知人に心配された 5
ミーティング時間の調整に「調整さん」を使ってる 6
調整さんとは 予定調整を回答ベースで集計し自動的に候補を表示する URLベースですぐにシェアできる(ログインとか必要ない) 言わずもがなと思います 7
調整さんを使う理由 割と利用したことがある人が多い、有名 Googleカレンダーの予定調整とか使ってみたいけど、 使い方がわからない人が多いと思う 8
調整さんで困ること 9
調整結果をカレンダーに登録するのは手動 10
なので登録し忘れて直前で気が付くこともあった 11
やばい/(^o^)\ 実際にすっぽかしたりもしてる やばい/(^o^)\ 12
エンジニアなので、テック的に対応したい。と思ったけど 13
これChatGPTでやらせたらいいのでは はい!ここで「面倒なことはChatGPTにやらせよう」なんです!! 14
本題: 調整さんの調整結果をカレンダーへ登録するGPTsを作った話 しかし、実はまだ冒頭しか読んでないのです 15
デモします ...すみませんすみません。許してください。石投げないでー 16
実際に使ってみる 17
行ってみれば、文章の中にある予定情報らしい情報を抽出して、Googleカレンダーの登録 URLを生成してくれる機能です 一応張り付けるテキストの構造を教えています 18
これマジで素晴らしいです 作業し忘れなければね 19
作っていたなかでの気づき 20
調整さんのサイトをGPTのブラウジング機能で読むことができる? -> できなかった サイト自体は読めるっぽい HTMLテーブルが見られないらしい 理由はよくわかってない ちゃんとGPTのブラウジング機能を模倣してテストしてみたらいいかもしれない? 21
22
なのでサイトの中身をコピペして張り付けることにしています スクレイピングな手段を間に挟むことも考えたけど、別サービスを経由したりは面倒だったw 23
その他の気づき 手順と前提条件をちゃんと入れる、と安定して動いてくれる HTMLの中身を張り付けたわけではないけど、ブラウザでコピペした表を表として認識 している? Googleカレンダーの登録URLを作ってというと、作ってくれる 24
手順と前提条件をちゃんと入れる 調整さんはデフォルトは何日、何時~(いつから)の表現を使っている -> 終了時間をあ らかじめ条件にいれておくとよかった 表の中でどの情報を元に候補を上げるかは教える:〇の数が一番多い、同数の場合は候 補として挙げる タイムゾーンを伝えておくと精度が良かった 25
ブラウザでコピペした表を表として認識している? 統一性のある表現だったので、問題なく認識してくれたようでした。 26
表をコピーしたテキストがこちら 日程 ◯ △ × さの やまだ ごとう 3/18( 月)
19:00 〜 1 人 1 人 1 人 3/18( 月) 19:00 〜- さのさんの出欠は- まる 3/18( 月) 19:00 〜- やまださんの出欠は- さんかく 3/18( 月) 19:00 〜- ごとうさんの出欠は- ばつ 3/19( 火) 19:00 〜 2 人 1 人 0 人 3/19( 火) 19:00 〜- さのさんの出欠は- まる 3/19( 火) 19:00 〜- やまださんの出欠は- まる 3/19( 火) 19:00 〜- ごとうさんの出欠は- さんかく 3/20( 水) 19:00 〜 2 人 1 人 0 人 3/20( 水) 19:00 〜- さのさんの出欠は- さんかく 3/20( 水) 19:00 〜- やまださんの出欠は- まる 3/20( 水) 19:00 〜- ごとうさんの出欠は- まる 3/21( 木) 19:00 〜 3 人 0 人 0 人 3/21( 木) 19:00 〜- さのさんの出欠は- まる 3/21( 木) 19:00 〜- やまださんの出欠は- まる 3/21( 木) 19:00 〜- ごとうさんの出欠は- まる 3/22( 金) 19:00 〜 2 人 1 人 0 人 3/22( 金) 19:00 〜- さのさんの出欠は- まる 3/22( 金) 19:00 〜- やまださんの出欠は- まる 3/22( 金) 19:00 〜- ごとうさんの出欠は- さんかく コメント 27
markdownの表に変換してと言ったら、ちゃんと変換してくれました 28
Googleカレンダーの登録URLを作ってというと、作ってくれる Googleカレンダーの登録URL構造をGPTで出してもらうこともできました ※ 都合で改行してます。本来は1行です https://www.google.com/calendar/render ?action=TEMPLATE&text=[ イベント名] &dates=[ 開始日時]/[ 終了日時]
&details=[ 詳細] &location=[ 場所] &sf=true&output=xml GPTで扱われている記事を見たときに、URL構造を伝えている例も見かけたけど、 構造を伝えなくてもGPTが勝手に作ってくれてるので構造の説明は外してました 29
カスタムGPTを使うときに苦労したこと 30
作るときにチャットベースで作ってくれるが、プロンプトが上書きされてしまう /(^o^)\ 31
プロンプトの上書きは結構あったので作業時はエディターなどで バックアップとっておくといいと思う 32
「アイコン作って」と指示したらプロンプトも丸ごと上書きされてしまってた 結構焦るよ/(^o^)\ 33
GPTがmarkdownで出力したリンクがそのまま利用できない 34
なぜかクリックしても反応してくれない。 35
対処としては、URLを生成してもらうようにした。 ただモバイル版だと使えるから環境の何かかもしれない なんでこうなるか正直わからない。ブラウザはVivaldiなのでその辺も影響してる? 36
プロンプトの中身見られないようにする対策 37
色々あるっぽいけど、こちらを使ってみてる 4行でできるGPTsを公開するときに必ずやっておくべきプロンプトインジェクション対策 #OpenAI - Qiita 意味があるのかは今のところ不明 38
まとめ 調整さんの調整結果をカレンダーへ登録するGPTsを作った カスタムGPTを使うときに苦労したこと まだまだ使いこなせてないけど、楽しい 39
調整さん以外にも、メールやチャットでやり取りした結果、やっぱりカレンダーに入れ忘れ ることありますよね チャットベースで調整したミーティングをすっぽかしてガチギレさせてしまったことがあったので/(^o^)\ 40
発展として メールやチャットの文章から予定作るGPTも作って、使い倒したい 文章をみて提案してくれるメールクライアントやチャットツールがあったらうれしい GPT側でカレンダーの連携もできるはずなので、そちらを使ったほうがよりアクション が減るはず ここに書いたものはすでにあるのですが、自分の欲求をかなえるときには自作が一番かもと思ってます 41