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 上追蹤我們