はじめに
昨晩は100回目のみんなのPython勉強会にご参加いただきありがとうございました。
nikkieです。
いやー、からあげさんと辻さんのトークにLT3本と濃密でしたねー。
そんな中からこのエントリではからあげさんのトークを取り上げます。
紹介されたプロンプトをこの目で確かめたく、ChatGPT(GPT-4)とたわむれました。
目次
からあげさんによる『新刊「面倒なことはChatGPTにやらせよう」 の内容だいぶ公開』
発表資料はこちら。
ご発表いただき、ありがとうございました!
からあげさんによるレポートです
Pythonに絡めつつ、主に新刊書籍の紹介をさせていただきました!
紹介されたプロンプト
「こんなことできるのか!」と、私が友達料を支払っているChatGPTでどれも試したくなりました1。
Docswellから資料(PDF)をダウンロードすれば、写経は不要。
コピペでプロンプトを真似できます!
からあげさん謹製のプロンプトをお試し
(勉強会中に試していた)指数関数のグラフ
ChatGPTを使うと、指数的に効率化できると思うので、早く使うほど便利だと思うんですよね。 そんなイメージが伝わるグラフを、横軸を時間(年数)、縦軸を効率で早く使った人を青色、遅く使った人を赤色のグラフで差をアピールするように描いてください。
#stapy わーい、グラフできたー!
— nikkie / にっきー (@ftnext) 2024年1月25日
「ChatGPTを使うと、指数的に効率化できると思うので、早く使うほど便利だと思うんですよね。 そんなイメージが伝わるグラフを、横軸を時間(年数)、縦軸を効率で、早く使った人を青色、遅く使った人を赤色のグラフで差をアピールするように描いてください。」 pic.twitter.com/Au8Es1w1ci
顔認識
画像に対してdlibライブラリを使った顔検出をしてください。 「import dlib」でdlibライブラリを使用できます。
合わせて以下の画像もアップロード
今回試した範囲では、Advanced Data Analysisにより顔を囲んだ長方形を返してきたので
rectangles[[(304, 98) (489, 284)]]
「検出した顔を赤い四角で囲った画像を作ってください。それをダウンロードして手元で確認したいです」と伝え、以下を得ました。
dlibは初めて知りましたが、Advanced Data Analysisが書いたコードから使い方も分かりますね。
detector = dlib.get_frontal_face_detector() # 画像はPILで開き、NumPy arrayに変換してある detected_faces = detector(image_array, 1) # 宿題:1ってなんだろう?
ブログのアイキャッチ画像生成
以下のWebサイトの文章をもとに画像を生成してください。 フラットデザイン、クレヨン風テクスチャ、ピクセルアートなど、かわいらしく万人に受け入れやすいテーマで横長の画像を生成してください。 <URL>
映画についての記事を渡します。
生成されたのはこちら
おー!!👏
画像には、アニメ映画のスクリーン、映画館のシーン、映画に魅了される観客、そして希望というテーマを表現したカラフルで楽しい要素を含めます。
URLを含めたら、記事の内容を取得してプロンプトに応答してくれるというのは便利すぎますね!
似顔絵を描く
画像を説明して、その説明をもとにアニメ調の画像を生成してください。
こちらをアニメ調に変換してみました
ばーん!
いや怖ぇよ!
眉めっちゃつり上がってるし、眉間の皺すごいし!
何より手に指6本ありますからね、立派な人外です
かわいくしていきます
クレヨン風テクスチャのようなかわいらしく万人に受け入れやすいテーマで再度アニメ調の画像を生成してください。
ほのぼのした感じになりました(なぜかこの向き)
感想
からあげさんの新刊『面倒なことはChatGPTにやらせよう』の内容公開トークで紹介されたプロンプトを試しました。
画像に関してできることの整理が分かりやすかったですし、「こんなことができるならもしかしたらこれも」とアイデアが膨らみます。
プロンプトは試行錯誤されたという話でしたが(スライド30)、OpenAIが公開しているChatGPTのプロンプトのガイドに従っているように思います
https://platform.openai.com/docs/guides/prompt-engineering
- Write clear instructions(明瞭な指示を書く)
- 使ってほしいライブラリの指定
- 「クレヨン風テクスチャ」のように例示して、かなり具体的
- Split complex tasks into simpler subtasks(複雑なタスクを単純なサブタスクに分割)
- 似顔絵では、まず説明させ、それを元にアニメ調のイラストを生成している
からあげさんやカレーちゃんさんのプロンプトの真似から始めることで、筋のよいプロンプトが自然と身につくかもと期待されます。
もう1つ、紹介されたプロンプトはいずれもGPTs2にすると便利そうです。
公開しなくても自分用のGPTsでいいと思います。
GPTsは特定のタスクに特化しますが、ユーザのプロンプト入力が省けるんですよね
- 画像をアップロードしたら、顔を検出して、画像内に書き込んで返すGPTs
- URLを渡したら、その内容に基づいてアイキャッチ用の画像を生成するGPTs
- 画像をアップロードしたら、アニメ調に変換した画像を生成するGPTs
からあげさんがすでに公開されているかもしれませんね
みんなのPython勉強会での内容公開から、『面倒なことはChatGPTにやらせよう』はプロンプトを真似するだけでも面倒なことをやらなくて済んで嬉しいですし、ChatGPTをもっと使いこなすための武器(筋のよいプロンプトや、GPTs)も手に入れられそうな本という印象を持ちました。
発売が楽しみです