ChatGPT 串接 Tinder 教学,AI 自动回覆,再也不烦恼没话题漏讯息

2023年3月19日

ChatGPT 教學專書
不僅教你 ChatGPT 指令,更帶你實作出創新應用!前往了解

前阵子看到有网友分享 ChatGPT 男友养成计画,透过一些指令语句,让 ChatGPT 变得让人想恋爱。在国外的社群也看到有人把 ChatGPT 拿来当交友软件代打,查了一下发现还真的能把 ChatGPT 串接到 Tinder。想说这是个蛮有趣味的应用,就写了这篇教学串接文。不过在读者往下读之前,还是建议大家把这当成趣味应用就好,不要真的用 ChatGPT 来当交友软件代打,毕竟良好的交友关系,还是要自己投入心思与感情来经营。当然,假如你也想试试串接后会有什么结果,就继续往下读吧。

在这篇文章中,我们将会一步步教你如何把 ChatGPT 串接到 Tinder 上面去,让你即使忙碌不担心漏回讯息。透过我们已经做好的专案基底,你只需要简单的复制与修改,不会写程式也能轻松完成串接流程,让 ChatGPT 从过去的聊天记录去推测要帮你回覆什么。最后也会说明可以如何透过一些参数的设定,来客制化 ChatGPT 的回覆频率、回覆长度,以及满足什么条件时才帮你回覆。

如果你是会写程式的工程师,你可以进一步把使用者的背景资讯接入,甚至可以透过去图像相关的模型,去侦测图片,让 ChatGPT 提供更适切的回应。

先来看看 Demo

在开始串接前,我们先看 Demo,可以看到,程式会依照每一个聊天室过往聊天的内容,帮你直接回覆给你的聊天对象。举例来说,我这边预先下的指令语句为:

请你学习 [Sender] 的说话方式,试着在下面的对话中回覆 [Receiver] ,总回覆字数不要大于 50 个字,最后要用问题结尾。并且回覆的语言是 [Sender] 常用的语言

其中, [Sender] 为自己[Receiver] 为对方,因此要修改的人,可以修改这一段内容,可以新增一些双方的背景资讯、或者可以和 ChatGPT 说,你的回话风格像是怎么样子(例如:热情、体贴,或是高冷),让 ChatGPT 依照你的想要营造出的人设给予回覆。

ChatGPT Tinder Demo
ChatGPT Tinder Demo

串接步骤

如果在串接过程中遇到问题,可以在ChatGPT-Tinder-Bot 的 Issues 中回报,我们会定期在那边回覆问题

取得 Token

  1. OpenAI Token

    1. OpenAI 平台中注册/登入帐号 → 首次注册需要填写基本资讯
    2. 右上方有一个头像,点入后选择  View API keys
    Get OpenAI Token Step1 and Step2
    Get OpenAI Token Step1 and Step2
    1. 点选中间的  Create new secret key
    Get OpenAI Token Step3
    Get OpenAI Token Step3
    Get OpenAI Token Step4
    Get OpenAI Token Step4

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

  1. Tinder Token

    1. 登入 Tinder
    2. 按下右键 -> 检查 -> 网路 -> 挑选任一只 Request -> 寻找 Request 里的 x-auth-token
    Get Tinder Token
    Get Tinder Token

专案设置

  1. Fork Github 专案

    1. 注册/登入  GitHub
    2. 进入 ChatGPT-Tinder-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
    1. 若尚未加入 Github 仓库,则点选连结  Connect GitHub to import your private repos. -> 勾选  Only select repositories -> 选择  ChatGPT-Tinder-Bot
    Replit Deploy Step 2
    Replit Deploy Step 2
    Replit Deploy Step 3
    Replit Deploy Step 3
    1. 回到第四步,此时  Github URL  可以选择  ChatGPT-Tinder-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: [由上方步骤一取得] sk-FoXXXX
    • 欲选择的模型:
      • key: OPENAI_MODEL_ENGINE
      • value: gpt-3.5-turbo
    • ChatGPT 要让助理扮演的角色词(目前官方无释出更多的使用方法,由玩家自行测试)
      • key: SYSTEM_MESSAGE
      • value: You are a helpful assistant.
    • Tinder Token:
      • key: TINDER_TOKEN
      • value: [由上方步骤一取得] MTA3NXXX
    Replit Set Environment Variable
    Replit Set Environment Variable
  2. 开始执行

    1. 点击上方的  Run
    2. 成功后右边画面会显示  Hello. I am alive!,并将画面中上方的网址复制下来,下一步骤会用到
    Replit Run
    Replit Run
    Successful
    Successful

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

  1. CronJob 定时发送请求

    1. 注册/登入  cron-job.org
    2. 进入后面板右上方选择  CREATE CRONJOB
    CronJob Step 1
    CronJob Step 1
    1. Title  输入  ChatGPT-Tinder-Bot,网址输入上一步骤的网址
    2. 下方则每  5 分钟  打一次
    3. 按下  CREATE
    CronJob Step 2
    CronJob Step 2

常见问题与说明

回覆的时间点为?

  • 预设是每五分钟扫一次,若发现对方尚未回覆则会略过;若超过一天对方无回覆,则才会再次留言,但这可以透过调整参数来客制化

如何客制化调整?

  • main.py 中,27 行的 scheduled_job 可以调整多久回覆一次
  • main.py 中,34 行的 for 可以调整要回覆多少聊天室内容
  • main.py 中,47 行的 if 可以调整什么样的状况才会回应讯息

如何加入更多资讯?

  • /src/dialog.py 中,有一个prefix,可以将资讯加入其中,像是你可以训练机器人,说明你的回应风格是什么类型,因此希望他照着你的回应风格去做回应。
🧵 如果你想收到最即時的內容更新,可以在 FacebookInstagram 上追蹤我們