14
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ChatGPT,GPT-4を簡単に使いたい?ならLINEから使えばいいじゃない?(ChatGPT,GPT-4 for LINE)

Last updated at Posted at 2023-03-14

GPT-4の対応について

GPT-4の手順も大きく変わらないので、waitlistの方法やらなんやら筆者でgpt-4を使用できたら追記していきます。
(2023/03/17)

目的

LINEでChatGPTに質問を投げて返答を見れるようにします。

構成図

今回の構成図はこちら
image.png

作成手順

ざっくりこんな手順で作っていきます。
1. OpenAIでAPIkeyの発行
2. AWS上にAPIの作成
3. Line DevelopersでBot作成

では早速作っていきましょう。

1. OpenAIでAPIkeyの発行

アカウント作成/ログイン

  1. サイトにアクセスしアカウントを作成またはログイン
    [OpenAI]https://openai.com/product
    image.png

  2. APIkeyのページへ移動
    OpenAIページの右上にアカウントアイコンが表示されるので、クリックして「View API keys」を選択します。
    image.png

  3. APIkeyの発行
    「API keys」のページに遷移するので、「+ Create new sercret key」ボタンをクリックします。
    image.png

  4. APIkeyの確認
    APIキーが生成されるので、赤線→のコピーアイコンをクリックし、OpenAIのAPIキーを取得します。
    image.png

これが漏洩すると、他人に自身のお金でAPIを使用されてしまうので
取り扱いには十分注意しましょう。

2. AWS上にAPIの作成

  1. ソースのDL
    ここからをどうぞ(https://github.com/ShqnD/line_chatgpt_bot)
    src以下のファイルを全て選択してzip化しておいてください。
詳しい手順はこちら

◆cloneする場合
 コマンドラインで任意のフォルダに移動し下記を実行してください。

git clone https://github.com/ShqnD/line_chatgpt_bot.git

◆zipダウンロード
 下記からダウンロードしてください。
image.png

上記どちらかの方法でローカルにソースを用意できたら、
任意の方法でsrc配下の全ての資材を全選択しzip化します。
image.png
おそらくデフォルトでsrc.zipというzipファイルができたら成功です。
手順2.3ではこのファイルをアップロードしてください。
image.png

2.Lambdaで関数作成
Lambdaのコンソールから関数の作成
関数名は任意、ランタイムはPython3.9にします。
関数名はqiitafuncとしておきました。
image.png
image.png

3.ソースのアップロード
2.1で作成したzipファイルをアップロードしてください。
image.png
↓こんな感じになれば成功です。
image.png

4.環境変数の設定
この時点では下記の環境変数を設定します。
API_KEY:1.4で控えたOpenAIのAPIkey
image.png
image.png

5.タイムアウトの設定
ChatGPTからの返答に時間がかかる場合があるので伸ばしておきましょう。
image.png

6.API Gatewayの作成
API GatewayのコンソールからAPIの作成
image.png
REST APIを構築
image.png
API nameを任意で設定
今回はqiitagatewayとしました。
image.png
[Actions > CreateMethod]を選択。
image.png
POSTを選択してチェックマーク
image.png
[Use Lambda Proxy integration]にチェック、[Lambda Function]に2.2で設定した関数名を入力
image.png
すると、「API GatewayからLambdaにアクセスする権限追加するけどいいですか?」と聞かれるのでOKしておきましょう
image.png
ここまで出来たら[Actions > Deploy API]からデプロイします
image.png
適当にステージを作ってデプロイします。
image.png
ここまですると赤線部分にURLが記載されているのでこれも控えておきましょう。
image.png

これも漏洩すると、他人に自身のお金でAPIを使用されてしまうので
取り扱いには十分注意しましょう。

3. Line DevelopersでBot作成

アカウント作成/ログイン

  1. サイトにアクセスしコンソールからログイン画面へ
    LINE Developers
    image.png
  2. お好きな方法でログイン
    LINEアカウントは普段トークなどを使用するアカウント、
    ビジネスアカウントは普段使いのアカウントとは別にメールアドレスで発行することができるらしい。(参照)
    image.png

Botの作成

  1. プロバイダーの作成
    名称はお好みで。
    今回はChatGPTとしました。
    image.png

  2. チャネルの作成
    Messaging APIを選択し必要項目(チャネル名など)を入力しチャネルを作成します。
    チャネル名がBotの名称になるのでご注意ください。
    今回はQiitaGPTとしました。
    image.png

  3. Botの設定
    挨拶メッセージは任意、応答メッセージはLambdaから返答するので無効にしちゃいましょう。
    image.png
    Webhook URLを2.6で控えたURLに設定しましょう。
    image.png
    忘れずにWebhookを有効化しておいてください。
    これでメッセージが送られた際にAPI Gateway越しにLambdaがキックされます。
    image.png

  4. アクセストークンの取得
    Messaging API設定タブの下の方にチャネルアクセストークンがあるので発行して控えておきましょう。
    image.png
    合わせて、チャネル基本設定タブにチャネルシークレットがあるのでこちらも控えておきましょう。
    image.png

これも漏洩すると、他人に自身のチャネルを使用されてしまうので
取り扱いには十分注意しましょう。

5.lambdaの設定
あとは2で作成したlambdaの関数に下記二つの環境変数を追加します。
LINE_CHANNEL_ACCESS_TOKEN:3.4で発行したチャネルアクセストークン
LINE_CHANNEL_SECRET:3.4で控えたチャネルシークレット
image.png

6.友達追加
LINE DevelopersのMessaging API設定タブにQRコードあるので友達追加してください。
image.png

これで完成です。
お疲れ様でした。

14
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
17

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?