openai whatsapp chatbot
v0.1 Whatsapp-Chatbot
一个聊天机器人,使用 OpenAI 的 API 通过基于 GPT3 的语言模型(Davinci、Ada、Babbage 等)回复来自 WhatsApp 的传入文本和语音消息,并使用 DALL-E 2 生成图像。
需要 OpenAI API 的有效密钥。
git clone https://github.com/simonsanvil/openai-whatsapp-chatbot
pip install -r requirements.txt
您需要将 OpenAI API 密钥设置为环境变量或将其添加到应用程序运行的工作目录中的 .env 文件中:
export OPENAI_API_KEY=[YOUR OPENAI API ACCESS KEY]
/whatsapp/receive
端点作为其回调 url,将/whatsapp/status
作为其状态回调 url(按照 Twillio 的教程获取有关如何完成此操作的说明,应该只需要几分钟)。 export TWILLIO_AUTH_TOKEN=[YOUR TWILIO AUTH TOKEN]
export TWILLIO_ACCOUNT_SID=[YOUR TWILIO ACCOUNT SID]
export FROM_WHATSAPP_NUMBER=[YOUR ASSIGNED TWILIO WHATSAPP NUMBER] # +14155238886
下图显示了为 Whatsapp 配置 Twillio Sandbox 时需要填写的框:
export MAX_TOKENS=[NUMBER OF MAX TOKENS IN EACH REPLY]
export CONVERSATION_EXPIRES_MINS=[N MINUTES UNTIL A CONVERSATION IS ERASED FROM MEMORY]
export ALLOWED_PHONE_NUMBERS=[+1234567890,+1987654321] # Default is any number
export START_TEMPLATE=[PATH TO A FILE WITH A TEMPLATE FOR THE START OF A CONVERSATION] # data/start_template.txt
export ASSEMBLYAI_API_KEY=[YOUR ASSEMBLY-AI API KEY]
ASSEMBLYAI_API_KEY
环境变量是使用AssemblyAI的API来解析和转录传入语音消息的音频,以便代理可以回复它们。如果您不需要或不想要这个,则可以忽略该变量。
# (Use --help to see all the options):
python3 -m app.whatsapp
或者,docker 容器将自动安装所有要求并运行 Whatsapp 应用程序。
# building the image
docker build -t openai-ws-chatbot .
# running the container
# It is expected that you have all the required environmental variables in a .env file
docker run -p 5000:5000 openai-ws-chatbot --env_file=.env
按照 Twilio Sandbox for Whatsapp 教程中的说明进行操作后,您应该能够加入您的沙箱并立即开始与代理聊天