ChatGPTを搭載した「名言Bot2」

## はじめに
以前Qiitaでも紹介した「名言Bot」ですが、今回ChatGPTを搭載したver2をリリースしました。

以下のLineの友達追加ボタンからすぐに利用できるので、良かったら遊んでみて下さい。 

[Lineへの友達追加用リンク](https://lin.ee/KAcEokR)

## 機能一覧

ver1で実装したものも含め、機能の一覧は以下です。

1. 名言の自動配信
2. 名言のお気に入り登録
3. 名言のランダム通知
4. 名言の自動応答(ChatGPT) **★ver2にて実装**
5. 偉人による名言の発話 **★ver2にて実装**
6. 推薦書籍

以下、各機能について簡単に紹介して行きます。

## 機能1. 名言の自動配信
自動配信設定により、1日1回、自分の好きな時刻に偉人の名言を受け取る事ができます。

■ 名言の自動配信
![画像1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/d4b6104f-fabf-f449-ff6c-39d54344222e.png)


名言は歴史上の偉人を中心に、実存している人も含め約300の名言を登録しており、その中からランダムに配信されます(名言は今後も随時追加予定)。

デフォルトの配信設定は毎朝6時ですが、メニューの「配信設定変更」ボタンから、配信日(毎日/平日のみ/土日のみ等)と配信時刻(24H)の設定を変更できます。

■ 配信日時変更
![画像2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/91f13fd0-9972-fc53-a021-bf672b2067c9.png)

朝のアラーム代わりや、午後からやる気を出したい時、夕方にもう一踏ん張りするきっかけにしたい場合など、自分の好きなタイミングに設定してもらえればと思います。

## 機能2. 名言のお気に入り登録
配信された名言の下にある「お気に入りに登録」ボタンを押す事で、お気に入りの名言を最大10個まで登録できます。

■ 名言のお気に入り登録
![画像3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/a025394c-bbd8-67df-8f3c-b06dd0f18de7.png)


お気に入りに登録した名言は、メニュー左上の「お気に入り通知」から、いつでも見返す事ができます。

■ お気に入りの名言一覧
<img width="50%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/8b89e58b-1f0a-be40-7424-995a125af7d8.gif">

お気に入りの名言を入れ替えたい場合は、先に「お気に入り編集」から登録済みの名言を削除した後で、新しい名言をお気に入りに登録して下さい。

■ お気に入りに登録した名言の削除
<img width="40%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/e5fe3772-dfa0-3897-cf2e-6dec554adc5f.png">


## 機能3. 名言のランダム通知
自動配信は1日1回ですが、メニューの「名言ランダム通知」から任意のタイミングで、ランダムに名言を1つ取得する事ができます。

■ 名言のランダム通知
<img width="40%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/80a64219-a019-50aa-7e33-2fb5663a1207.png">

こちらもちょっとした気分転換や、少し元気を出したい時など、好きなタイミングで利用して下さい。

## 機能4. 名言の自動応答(ChatGPT)
この機能は裏でChatGPTに繋いでおり、今の気持ちをつぶやくと、ChatGPTが本サービスに登録された300近い名言の中からオススメの名言を1つ選び、選んだ理由付きで返してくれます。

■ ChatGPTによる対話型の名言応答
![画像6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/d1eefbe9-bbbe-43de-0260-67c046e8c4f8.png)

ランダム通知と異なり、どんな問いかけにも対話形式で返してくれるので、面白い挙動が体験できると思います。

GPT自体のバージョンアップや、プロンプトエンジニアリングも含め、こちらはまだまだ改良の余地ありですが、色々と遊んでみて下さい。

## 機能5. 偉人による名言の発話
テキストに加えて、名言の臨場感を出すために、偉人のアバターを生成AIで作成し、名言を発話する機能を作りました。

1日1回の自動配信の通知の際、ニーチェが選択された時のみ、以下のようにアバターで生成したニーチェが直接名言を発話してくれます。

<パターン1>
<img width="40%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/1525c5cc-268b-0bd7-875a-0aa56a9db162.gif">

<パターン2>
<img width="40%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/be63e8b4-a6a9-149b-18c0-2a5ff8fa31a7.gif">

※上記はGIF(音声なし)のため、実際の音声はサービスで確認して下さい。

ニーチェの名言は現在9パターン登録しており、出現確率としては3%程度のため(9/300)、月に一度程度、ニーチェが出てくるのを楽しみにしていて下さい。

## 機能6. 推薦書籍紹介
これまで実際に読んだ本の中で、いわゆるテクニックやノウハウ系ではなく、思考力やメタ認知力を高めるのにとても役立ったなと感じた本を推薦書籍として紹介しています。

メニューの「推薦書籍」を選択すると、200冊近い本の中からランダムで5冊が選ばれます。

■ 推薦書籍応答
<img width="50%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/431306/5e0f0b06-f744-8dbc-c952-586a343a1700.png">

本サービスの目的自体が、日々の忙しさの中で、偉人の名言をメタ認知のきっかけとし、内省のタイミングを作る事(本当に自分がやりたかった事をやるための後押しをする事)なので、新しい視点で何か良い本がないかなという時はこちらも参考にして下さい。

## まとめ
昨今のAIサービスの躍進により、想定していたコード量よりもはるかに少なく、前から実現したいなと思っていたアイディアを具現化できました。

AI系の機能は、またバージョンアップして行きたいと思いますので、楽しんでもらえると嬉しいです。

■参考記事
・[生成系AI・ARデモ](https://qiita.com/jw-automation/items/7c993f3f55c435dd574a)
・[AIで遊べるデモサイト「AI World3」](https://qiita.com/jw-automation/items/9f896c1dcb5d7b055374)
・[【AI】Deep Metric Learning](https://qiita.com/jw-automation/items/7bbe1c872fcec7fa6c1d)

■電子書籍
・[なぜ「コンサルタント」というキャリアはこれほど面白いのか？](https://amzn.to/3GtoY5X)