Make×ChatGPTでLINE公式アカウントを作ってみる


<br/>
はじめまして、こんにちは。<br/>
この記事ではMAKE(旧integromat)とChatGPTを使って自身でLINE公式アカウントを作成するところまで行います。<br/>
ぜひ最後までご覧ください。

## MAKEとは
ものすごく簡潔に説明すると`コードを一切必要とせずに自動化を実現できる`サービスです。
そのためいつも手動で行なっている作業を自動化してくれます。
細かい説明は[こちら](https://www.nadja.biz/integromat-info/#:~:text=%E3%81%B0%E5%AC%89%E3%81%97%E3%81%84%E3%81%A7%E3%81%99%E3%80%82-,%E2%97%86make(integromat)%E3%81%A8%E3%81%AF,-make(integromat)%E3%81%AF)でご確認ください。


## 1. ChatGPTの登録
今勢いのあるChatGPTの説明については[こちら](https://koneko3.com/how-to-use-chatgpt/)を参照してください。
登録後にOpenAIにログインをして下記必要事項を残しておきましょう。
- [Organization ID](https://beta.openai.com/account/org-settings)
- [API Keys](https://beta.openai.com/account/api-keys)

## 2. LINE公式アカウントの登録
次にLINE公式アカウントを作成します。
手順は<a href="https://qiita.com/yuki0716/items/92a78795ccdcf6c9926f" target="_blank">こちら</a>を参考に登録をお願いします。
設定後に`MessagingAPI設定`で下記を追加して必要事項を記録しましょう。
- WebhookURL
    - Webhookを有効化すると発行されます。
    - 応答メッセージはOFFにしましょう。
- チャネルアクセストークン

## 3. MAKEの登録
メインであるMAKEの登録は[こちら](https://www.make.com/en)を参照してください。

## 4. MAKEでLINE公式アカウントとChatGPTの連携
いよいよ本題の連携を行なっていきます。
各モジュールの設定を画像付きで行なっていきますので確認の上実装していきましょう。
1. まずはMAKEにログインしましょう。
2. ログイン後、左サイドバーにある`Scenarios`（シナリオ）をクリックしてください。（MAKEで自動化を行うときはシナリオを使用します。シナリオについては本記事の`"MAKEとは"`からご確認ください。）
3. MAKEでシナリオ設定、使用する連携モジュールの作成（下記画像のようにシナリオを配置し設定を行います。）
    - 使用モジュール
        - `LINE Watch Events`
        - `OpenAI GPT3`
        - `LINE Send a Reply Message`
![スクリーンショット 2023-03-02 17.44.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/a3162e2b-d155-cc85-bd2f-bb4dfdde775c.png)


#### `LINE Watch Events` の設定
こちらではLINE公式アカウントのメッセージの受け手を設定します。
- Connection name
    - こちらは名前になります。（使用モジュールだとわかりやすい名前を設定しましょう。）
- Channel Access Token
    - `"2. LINE公式アカウントの登録"`で作成したチャネルアクセストークンを設定します。
![スクリーンショット 2023-03-09 3.19.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/c497d023-c3c2-3f81-92d7-d1c225f21e5d.png)

#### `OpenAI GPT3` の設定
次にChatGPTを使用するための設定になります。
まずはConnectionの設定をします。
- Connection name
    - こちらは名前になります。（使用モジュールだとわかりやすい名前を設定しましょう。）
- API Key
    - `"1. ChatGPTの登録"`で作成した際に発行される[API Keys](https://beta.openai.com/account/api-keys)を入力しましょう。
- Organization ID
    - 上記同様に発行される[Organization ID](https://beta.openai.com/account/org-settings)を入力しましょう。
![スクリーンショット 2023-03-09 3.25.10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/3593e179-3f75-2c77-35fe-7046b7ac585c.png)
次に下記の設定を行います。
- Select Method
    - `Create a Prompt Completion` を選択してください。
- Model
    - `text-davinci-003` を選択してください。
- Prompt
    - こちらはChatGPTから取得したい値を選択します。
    - `1. Events[` `]:Message.Text` を選択してください。
![スクリーンショット 2023-03-09 3.29.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/eade33f3-fccf-4ec7-f6ad-48582cca270f.png)

#### `LINE Send a Reply Message`
最後に公式アカウントが返す値を設定します。
- まずは`Add`で`Watch Events`同様の設定を行います。
- Reply Token
    - `1. Events[` `]: Reply Token` を設定してください。
- Message
    - Type
        - `Text` を選択してください。
    - Text
        - `3. Choices[` `]: Text` を設定してください。
- Notification Disabled
    - `No` を選択してください。
![スクリーンショット 2023-03-09 3.37.17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/a2aa2a54-c642-ddad-a423-ca0f9dbf642a.png)

上記設定で以上になります。

## 出来上がり
作成した公式アカウントを友達追加してメッセージしてみましょう。
トーク画面での使用した感じがこちらです。(ChatGPTからのテキストに含まれてしまっている関係で'ください'と1行の改行が入ってしまっています)
![IMG_0267.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2607495/dd1a97bc-760c-fc23-003f-5c29be236d6e.jpeg)


## 最後に
今回MAKEについて取り上げて実際自分で使用したところ、色々なことが自動化できるのではと感じました。
ChatGPT×Slackとかもできますね。
実際の開発でも使用できそうですし、最後のLINE公式アカウントも一つの検索ツールとして使用できると感じました。

この記事を読んで少しでも何かのプラスになっていただけたら幸いです。

そして是非弊社で一緒に働いていただける方を募集しております。
下記URLから応募できますので少しでも興味を持っていただけたら応募してください。


https://sportsbull.jp/about/#recruit