🔥《ChatGPT 指令大全與創新應用》新書上架!👉 立即購買
ChatGPT 攻略/ChatGPT 串接教学

ChatGPT 串接到 LINE - 让 AI 成为个人助理

ChatGPT 是由 OpenAI 所开发的一个极具威力的语言模型。如果你正在寻找一个可以随时随地解决你生活中疑难杂症的工具,那么你来对地方了!本篇文章将带领你如何串接 LINE Bot,并教你如何将 ChatGPT 与 Text To Image 模型结合,现在就跟着我一起学习如何让 ChatGPT 成为你的好帮手吧!

介绍

在 Line 中导入 ChatGPT Bot,只要在输入框直接输入文字,即可与 ChatGPT 开始互动,除了 ChatGPT 以外,也直接串上了 Text to Image 的模型,输入 /imagine + 文字,就会回传相对应的图片,如下图所示:

ChatGPT line Bot
ChatGPT line Bot

安装步骤

Token 取得

  1. OpenAI Token

    1. OpenAI 平台中注册/登入帐号 → 首次注册需要填写基本资讯

    2. 右上方有一个头像,点入后选择  View API keys

      Get OpenAI Token Step1 and Step2
      Get OpenAI Token Step1 and Step2
    3. 点选中间的  Create new secret key

      Get OpenAI Token Step3
      Get OpenAI Token Step3
      Get OpenAI Token Step4
      Get OpenAI Token Step4

⚠️ 每只 API 有免费额度,也有其限制,详情请看  OpenAI Pricing

  1. 取得 Line Token:

    1. 登入 Line Developer

    2. 创建机器人:

      1. 创建  Provider -> 按下  Create

        Get Line Keys Step 1
        Get Line Keys Step 1
      2. 创建  Channel -> 选择  Create a Messaging API channel

        Get Line Keys Step 2
        Get Line Keys Step 2
      3. 输入完必填的基本资料

      4. 输入完成后,在  Basic Settings  下方,有一个  Channel Secret -> 按下  Issue,生成后即为  LINE_CHANNEL_SECRET (稍晚会用到)

        Get Line Keys Step 3
        Get Line Keys Step 3
      5. 在  Messaging API  下方,有一个  Channel access token -> 按下  Issue,生成后即为  LINE_CHANNEL_ACCESS_TOKEN (稍晚会用到)

        Get Line Keys Step 4
        Get Line Keys Step 4

专案设置

  1. Fork Github 专案

    1. 注册/登入  GitHub

    2. 进入 ChatGPT-Line-Bot

    3. 点选  Star  支持开发者

    4. 点选  Fork  复制全部的程式码到自己的仓库

      Fork Github Repository Step 1
      Fork Github Repository Step 1
      Fork Github Repository Step 2
      Fork Github Repository Step 2
  2. 部署(免费空间)

    1. 进入  replit

    2. 点选  Sign Up  直接用  Github  帐号登入并授权 -> 按下  Skip  跳过初始化设定

    3. 进入后中间主页的部分点选  Create -> 跳出框,点选右上角  Import from Github

      Replit Deploy Step 1
      Replit Deploy Step 1
    4. 若尚未加入 Github 仓库,则点选连结  Connect GitHub to import your private repos. -> 勾选  Only select repositories -> 选择  ChatGPT-LINE-Bot

      Replit Deploy Step 2
      Replit Deploy Step 2
      Replit Deploy Step 3
      Replit Deploy Step 3
    5. 回到第四步,此时  Github URL  可以选择  ChatGPT-LINE-Bot  专案 -> 点击  Import from Github

      Replit Deploy Step 4
      Replit Deploy Step 4

专案执行

  1. 环境变数设定

    1. 接续上一步  Import  完成后在  Replit  的专案管理页面左下方  Tools  点击  Secrets

    2. 右方按下  Got it  后,即可新增环境变数,需新增:

      • OpenAI API Token:
        • key: OPENAI_API
        • value: [由上方步骤一取得]
      • 欲选择的模型:
        • key: OPENAI_MODEL_ENGINE
        • value: gpt-3.5-turbo
      • ChatGPT 要讓助理扮演的角色詞(目前官方无释出更多的使用方法,由玩家自行测试
        • key: SYSTEM_MESSAGE
        • value: You are a helpful assistant.
      • Line Channel Secret:
        • key: LINE_CHANNEL_SECRET
        • value: [由步骤一取得]
      • Line Channel Access Token:
        • key: LINE_CHANNEL_ACCESS_TOKEN
        • value: [由步骤一取得]
      Replit Set Environment Variable
      Replit Set Environment Variable
  2. 开始执行

    1. 点击上方的  Run

    2. 成功后右边画面会显示  Hello World,并将画面中上方的网址复制下来,下一步骤会用到

      Replit Run
      Replit Run
    3. 回到 Line Developer,在  Messaging API  下方的  Webhook URL  江上方网址贴过来,并加上  /callback  例如:https://ChatGPT-Line-Bot.explainthis.repl.co/callback

      Line Webhook Setting
      Line Webhook Setting
    4. 打开下方的  Use webhook

    5. 将下方  Auto-reply messages  关闭

      Line Webhook Setting 2
      Line Webhook Setting 2

    ⚠️ 若一小时内没有任何请求,则程式会中断,因此需要下步骤

  3. CronJob 定时发送请求

    1. 注册/登入  cron-job.org

    2. 进入后面板右上方选择  CREATE CRONJOB

      CronJob Step 1
      CronJob Step 1
    3. Title  输入  ChatGPT-Line-Bot,网址输入上一步骤的网址

    4. 下方则每  5 分钟  打一次

    5. 按下  CREATE

      CronJob Step 2
      CronJob Step 2

指令

在文字输入框中直接输入文字,即可与 ChatGPT 开始对话,而其他指令如下:

指令说明
/imagine在输入框输入  /imagine + 文字,就会调用  Text to Image  模型,即可生成图像。

Q&A

  1. LINE 是否会收费?

    利用 reply_message 的方法,不在计价范围内,主动推播才会有限制。

  2. 如何看 Log 档?

    在 Replit 专案中左侧有一个 logs ,在专案当中的 logger 会记录在其中,可以自行添加 logger 在其中。

  3. 如何调整 Text To Image 输出的图片大小?

    修改 /src/models/OpenAIModel 里的 image_size 即可。

© 2023 explainthis.io
酉是數據科技股份有限公司