使用 Twilio 的 GPT3 SMS Bot 入門套件。基於本教程。
基於本教程。建立帳戶後,使用以下命令建立可以接收簡訊的電話號碼:
twilio phone-numbers:update PHONE_NUMBER --sms-url https://RANDOM_STRING.ngrok.io/messages
您需要安裝 Twilio CLI。如果您想從簡訊回覆中刪除 Twilio 品牌,您需要「升級」為付費模式。
安裝依賴項:
npm install
將.env.example
檔案複製到.env
:
cp .env.example .env
填寫您的 TWILIO 和 OPENAI 金鑰以及您的個人 PHONE_NUMBER。
編譯專案:
npm run build
請注意,這會執行 TypeScript 編譯器tsc
,您也可以執行npx tsc
來獲得相同的輸出。
TypeScript 專案將會被編譯到dist
目錄中。您也可以在專案變更時持續編譯專案:
npm run watch
使用下列命令啟動 Web 伺服器:
npm start
要回應傳入的 Webhook,您需要一個公開可用的 URL。 ngrok 是一個可以從公用 URL 到您的電腦的隧道工具。下載並安裝 ngrok 後,您可以像這樣運行它:
ngrok http 3000
ngrok 終端將向您顯示一個 URL,例如https://RANDOM_STRING.ngrok.io
。
使用上一部分中的 ngrok URL,您可以透過應用程式設定 Twilio 電話號碼。編輯您的電話號碼,然後在「訊息」部分中的「收到訊息」旁邊輸入您的 ngrok URL 以及路徑/messages
。
https://RANDOM_STRING.ngrok.io/messages
儲存電話號碼即可。向您的號碼發送訊息並接收回覆。輸入“重置”以重置聊天線程歷史記錄並再次開始。
fly launch (if it's the first time)
# update fly.toml internal port to 3000
fly deploy
# Set your secrets from .env
fly secrets set --app gpt3-chat TWILIO_ACCOUNT_SID= TWILIO_AUTH_TOKEN= TWILIO_PHONE_NUMBER= OPENAI_API_KEY=
const { Configuration , OpenAIApi } = require ( "openai" ) ;
const configuration = new Configuration ( {
apiKey : process . env . OPENAI_API_KEY ,
} ) ;
const openai = new OpenAIApi ( configuration ) ;
const response = await openai . createCompletion ( {
model : "text-davinci-003" ,
prompt : "Please reply to the chat below:n" ,
temperature : 0.7 ,
max_tokens : 256 ,
top_p : 1 ,
frequency_penalty : 0 ,
presence_penalty : 0 ,
} ) ;
要開始使用 Promptable 建立和取得提示,請造訪 https://promptable.ai!
然後,創建並部署提示並像這樣獲取它
const { data } = await axios.get(`https://promptable.ai/api/prompt/<YOUR PROMPT ID HERE>/deployment/active`);
const { text, configs } = data // get your prompt text and configs
//... now use it in the chat bot!
在您的 Mac 上接收簡訊。 https://support.apple.com/guide/messages/get-sms-texts-from-iphone-on-your-mac-icht8a28bb9a/mac
TODO:新增語音聊天: