Was macht carbolo-whatsapp-ai-agent?
Produktionsbereiter WhatsApp-KI-Autohändler-Assistent mit fundiertem RAG, Google Kalenderbuchung, APScheduler-Erinnerungen, FSM-Orchestrierung, Hinglish-Support und Anti-Halluzinations-Schutzmechanismen.
Übersicht
Dieser Skill implementiert einen WhatsApp-Chatbot für Autohändler. Der Agent:
- Fundiertes RAG (Retrieval Augmented Generation): Verwendet vektorbasierte Suche, um relevante Händlerdaten (Fahrzeugbestand, Preise, Öffnungszeiten) abzurufen und Antworten zu generieren, die auf Fakten basieren.
- Google Kalender-Integration: Ermöglicht Kunden, direkt über WhatsApp Testfahrten oder Beratungstermine zu buchen. Termine werden automatisch im Google Kalender des Händlers erstellt.
- APScheduler-Erinnerungen: Versendet automatische Erinnerungen an Kunden vor einem vereinbarten Termin.
- FSM-Orchestrierung (Endlicher Automat): Steuert den Dialogfluss über Zustände wie
WILLKOMMEN,FAHRZEUGSUCHE,TERMINVEREINBARUNG,BESTÄTIGUNGundENDE. - Hinglish-Unterstützung: Der Agent versteht und antwortet in einer Mischung aus Hindi und Englisch, was die Nutzerakzeptanz in Indien erhöht.
- Anti-Halluzinations-Schutzmechanismen: Vor der Ausgabe werden generierte Antworten gegen die abgerufenen Kontextdaten validiert. Wenn die Antwort nicht durch den Kontext gestützt wird, wird sie verworfen oder durch eine Standardantwort ersetzt.
Plattformen
- WhatsApp Business API (primär)
- Google Calendar API (für Terminbuchungen)
- Beliebige Vektordatenbank (z. B. Pinecone, Weaviate, Chroma) für RAG
- Python 3.9+ mit Bibliotheken wie
flask,twilio,openai,apscheduler,pydantic,langchain
Funktionsweise
- Empfang: Eine eingehende WhatsApp-Nachricht wird über die Twilio-API empfangen.
- Intent-Erkennung: Der Agent analysiert den Nachrichtentext (GPT-basiert oder regex) und bestimmt den aktuellen FSM-Zustand.
- RAG-Abfrage: Bei Fragen zu Fahrzeugen oder Händlerinformationen wird eine Vektorsuche ausgeführt, um die relevantesten Daten zu finden.
- Antwortgenerierung: Die abgerufenen Kontextdaten werden mit der Benutzeranfrage kombiniert und an das LLM geschickt. Die Antwort wird auf Kontextübereinstimmung validiert.
- Kalender-Aktion: Falls eine Terminbuchung erkannt wird, erstellt der Agent über die Google Calendar API ein Ereignis.
- Erinnerung: Der APScheduler plant eine Erinnerungsaufgabe für den gebuchten Termin.
- Ausgabe: Die Antwort wird über Twilio als WhatsApp-Nachricht zurückgesendet.
Einrichtung
- Repository klonen
- Umgebungsvariablen setzen (siehe
.env.example):TWILIO_ACCOUNT_SIDTWILIO_AUTH_TOKENOPENAI_API_KEYPINECONE_API_KEY(oder anderer Vektordatenbank-Key)GOOGLE_CALENDAR_CREDENTIALS(JSON-Pfad)GOOGLE_CALENDAR_ID
- Abhängigkeiten installieren:
pip install -r requirements.txt - Vektordatenbank initialisieren:
python seed.py(lädt Händlerdaten in die DB) - Server starten:
python app.py - WhatsApp-Webhook konfigurieren: Die Twilio-Webhook-URL auf Ihre öffentliche Endpoint-URL setzen (z. B. über ngrok).
Benutzung
Nach der Einrichtung können Benutzer dem Agenten über WhatsApp folgende Befehle senden:
- „Hi“ oder „Hello“ → Begrüßung und Menü
- „Ich suche ein Auto unter 10 Lakh“ → Fahrzeugsuche mit RAG
- „Ich möchte eine Testfahrt buchen“ → Einleitung der Terminbuchung (Google Calendar)
- „Erinnere mich morgen um 10 Uhr“ → Planung einer Erinnerung
- „Tschüss“ → Beendigung des Gesprächs
Lizenz
MIT