Ein Chatbot, der die API von OpenAI nutzt, um auf eingehende Text- und Sprachnachrichten von WhatsApp mit seinen GPT3-basierten Sprachmodellen (Davinci, Ada, Babbage, ...) zu antworten und Bilder mit DALL-E 2 zu generieren.
Erfordert einen gültigen Schlüssel für die OpenAI-API.
git clone https://github.com/simonsanvil/openai-whatsapp-chatbot
pip install -r requirements.txt
Sie müssen den OpenAI-API-Schlüssel als Umgebungsvariable festlegen oder ihn einer .env-Datei im Arbeitsverzeichnis hinzufügen, in dem die App ausgeführt wird:
export OPENAI_API_KEY=[YOUR OPENAI API ACCESS KEY]
/whatsapp/receive
-Endpunkt dieser App als Rückruf-URL und /whatsapp/status
als Status-Rückruf-URL einrichten (folgen Sie dem Tutorial von Twillio, um Anweisungen dazu zu erhalten, wie dies zu bewerkstelligen ist). nehmen Sie sich ein paar Minuten Zeit). 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
Das Bild unten zeigt, welche Felder Sie bei der Konfiguration Ihrer Twillio Sandbox für WhatsApp ausfüllen müssen:
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]
Die Umgebungsvariable ASSEMBLYAI_API_KEY
dient dazu, die API von AssemblyAI zu verwenden, um den Ton eingehender Sprachnachrichten zu analysieren und zu transkribieren, damit der Agent darauf antworten kann. Wenn Sie dies nicht benötigen oder möchten, können Sie diese Variable ignorieren.
# (Use --help to see all the options):
python3 -m app.whatsapp
Alternativ installiert der Docker-Container automatisch alle Anforderungen und führt die WhatsApp-Anwendung aus.
# 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
Nachdem Sie die Anweisungen im Twilio Sandbox für WhatsApp-Tutorial befolgt haben, sollten Sie in der Lage sein, Ihrer Sandbox beizutreten und sofort mit dem Chatten mit dem Agenten zu beginnen