DALL-E3のAPIで知育絵LINEBot作成【Make×LINE】

## DALL-E3の絵を使って知育できそう
ものづくり小児科医のうえだです。
あまり画像生成AIは触ってこなかったんですが、DALL-E3がリリースされてから簡単にクオリィテー高い絵が得られておもしろいのでよく遊んでいます。

https://twitter.com/ped_yi/status/1730458445529407853

使っていく中で思ったのが、この絵で親子が会話すれば知育になるんじゃ？ってことです。
早速作ってみました。
画像はDALL-E3、その画像を使って[Canva](https://www.canva.com/)でスライドを作成しています。![1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/e949b78a-fb54-b2fc-a310-a395849848df.jpeg)
![2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/f97516bb-a2b2-4ae5-7af6-d2689b396bb6.jpeg)
![3.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/8018d490-cec1-1dc6-298a-ae2c5ebef945.jpeg)
![4.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/4600a10c-ffc4-d9f7-f28d-7ebc57e54ffd.jpeg)

実際はひらがなが読めないくらいの年齢の子の知育をイメージしているので文章は不要かもしれませんが、知育のイメージがわくように入れています。

## これを使う層の中に課金勢ってそんないるのか？
実際このスライドを2歳の娘に見せると、こちらの質問に一生懸命答えてくれたり、娘から何か発見したものを教えてくれたり、活用できました。
ここで問題は、DALL-E3はChatGPTPlusへの加入が必要であることです。
私は元々AIに興味がありChatGPTPlusに課金していますが、同じくらいの年齢のお子さんがいるご家庭の中にそこまで課金勢は多くないのでは？と考えました。正直普段あまりChatGPTを使っていなくてこの絵のためだけに課金するのは割高かなと...。

## じゃぁLINEBotにしちゃおう
でもみんながそれぞれ絵を生成して、それをお子さんと共有して会話して、・・・って姿を想像すると何か楽しそうだなって思って、DALL-E3 APIを使ったLINE Botを作成しました。
まずベースの参考記事はおきなかさんのこちらの記事。

https://qiita.com/okinakamasayoshi/items/478c9df40b608bc9ac09

これで作ってみたところ、絵は完成するし全然ダメなわけじゃないけど、普段ChatGPTからDALL-E3で絵を作成する時ほどいい絵が得られず、原因を考えてみたところ・・・
この時やっていたのは、自分の欲しい絵をDALL-E3に直接指示している状態だったんです。
ChatGPTから入力する時はこちらの曖昧な入力からChatGPT内でプロンプトが作成された上でDALL-E3が絵を作成します（と認識しています）。
なので、なるべくそれに近づけられるよう試行錯誤した結果、

>[usermessage]の絵をユーザーが希望しています。子どもの教育に使います。スタイルは優しい。これに適したDALL-E3へのプロンプトを作成してください。イメージに合うように内容を書き足しても構いません。作成は英語で。プロンプトのみを回答してください。
例：A charming and cute illustration of a parent and a young child, about 2 years old, having a delightful conversation while looking at a colorful painting. The scene is more whimsical and playful. The parent is squatting down, smiling warmly at the child, who is pointing at the painting with excitement and joy. The child has a bright, animated expression, showing eagerness and happiness. The painting they are looking at is whimsical, with vibrant colors and imaginative shapes, appealing to a child's sense of wonder. The room is cozy and filled with soft, pastel colors, creating a playful and nurturing environment for the parent and child.

という風に1つプロンプト例（これはChatGPTから絵を作成した時のプロンプトが公開されるのでそれをコピー）を入れてみると、同様のプロンプトが作成されるようになりました。

Makeの中の設定で重要な部分としては下記のDALL-E3設定と受け取る際のLINEの設定です。
受け取る時にType:Imageにすることも可能ですが、DALL-E3の種類をHDにするとLINE上で画像が表示されなかったので、URLをtextベースで返すようにしました。

![スクリーンショット 2023-12-22 9.08.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/75fe8240-5cc4-6bf9-2ece-ea16693d0215.png)

![スクリーンショット 2023-12-22 9.08.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/ed45f73d-f9e9-b608-a1b3-00ae67292717.png)

最終フローは、

![スクリーンショット 2023-12-22 9.14.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2653579/8efa3e2a-e5fb-8b8d-70b4-431e4413903d.png)


プロンプトなど保存できるように途中スプレッドシートを挟んでいますが、そこは省いても機能します。

是非かわいい絵・知育に便利な絵を作成して、もしよければ共有してください！
LINEのQRコードについては、下記の記事に書いています。使用の上での注意事項も含めて、こちらもぜひご覧ください。

https://note.com/nice_alpaca828/n/n693f5524bccb