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
740
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.7k
ご当地グルメマップを作ろう
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
1k
Other Decks in Technology
See All in Technology
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
5k
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
280
実践!既存 Project への AI-Driven Development 適用〜 一ヶ月で Project 唯一のフロントエンドエンジニアを作り出せ〜
lycorptech_jp
PRO
0
180
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
450
AIが実装を自走する時代の認知負債との戦い
lycorptech_jp
PRO
0
110
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
330
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
270
Network Firewallやっていき!
news_it_enj
0
170
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
2
660
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
2
410
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
210
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
310
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.4k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Fireside Chat
paigeccino
42
4k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
The SEO Collaboration Effect
kristinabergwall1
1
500
Mobile First: as difficult as doing things right
swwweet
225
10k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
720
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