使用 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:添加语音聊天: