Projektbericht:5-Day Gen AI Intensive Course with Google

Für unser Kaggle Capstone-Projekt haben wir uns der Herausforderung gestellt, etwas Reales zu bauen: einen Chatbot, der FAQs für unser eigenes Unternehmen mit GenAI-Tools beantworten kann. Das Ziel? Einen funktionierenden Prototyp erstellen, so viel wie möglich lernen und herausfinden, wie leistungsfähig und zugänglich heutige KI wirklich ist.

Projektbericht:

Warum dieses Projekt?

Jedes Unternehmen hat mit wiederkehrenden Fragen zu tun. Eine statische FAQ-Seite hilft, ist aber nicht immer nutzerfreundlich. Wir wollten etwas Besseres – einen Konversationsassistenten, der natürlich versteht und antwortet.

Die Technologie hinter dem Bot

Unser Projekt zielte genau darauf ab. Hier ist eine Aufschlüsselung dessen, was das System tut:

  • Knowledge Base: Eine Liste von 40 unternehmensspezifischen Q&A-Paaren.
  • Embeddings: Wir haben Googles embedding-001 Modell verwendet, um diese in Vektorrepräsentationen umzuwandeln — das Rückgrat für die Bedeutungsfindung in Texten.
  • User Input: Eine Chat-Schnittstelle (erstellt mit ipywidgets) lässt Benutzer Fragen stellen.
  • Semantic Search: Benutzeranfragen werden eingebettet und mit der FAQ-Liste anhand von Kosinus-Ähnlichkeit verglichen, um die beste Übereinstimmung zu finden.
  • RAG (Retrieval-Augmented Generation): Wenn die Übereinstimmung stark genug ist, generiert Gemini 1.5 Flash eine natürlich klingende Antwort basierend auf der relevanten FAQ.
  • Fallback: Keine gute Übereinstimmung? Der Bot gibt höflich zu, dass er die Information nicht hat und schlägt vor, mit einem Menschen zu sprechen.

All dies läuft in einem Kaggle Notebook, unter Verwendung der google.generativeai Bibliothek, mit Hilfe von KI-Assistenten für Brainstorming und Code-Bereinigung.

Soccer Strategy with Robot
Robot playing chess

Der Code (Ein Einblick)

Das gesamte Projekt lebt innerhalb eines Kaggle Notebooks.

Der Python-Code verwendet die google.generativeai Bibliothek, um mit der Gemini-API für Embedding-Erstellung und Antwortgenerierung zu interagieren. Wichtige Teile umfassen:

  • Eine cosine_similarity Funktion (mit numpy), um Embeddings zu vergleichen.
  • Eine Kernfunktion find_best_match, um die Vektorsuche durchzuführen.
  • Getrennte LLM Prompting-Funktionen: Eine für die Generierung von Antworten aus dem Kontext (RAG) und eine weitere für die "Low Confidence"-Fallback-Antwort.
  • Die Hauptfunktion smart_faq_bot_gemini, die den Prozess orchestriert: Die Abfrage einbetten, die Übereinstimmung finden und anhand des Ähnlichkeitswerts entscheiden, ob RAG oder das Fallback verwendet wird.
  • Eine einfache interaktive UI mit ipywidgets zur Demonstration innerhalb des Notebooks. Dies diente jedoch eher dem Demo-Zweck und bietet Optimierungspotenzial.

Ehrliche Reflexionen: Erfolge und Defizite

Nun zu den harten Fakten:

Kann der Code verbessert werden? Absolut. Er ist funktional, könnte aber robuster, modularer und optimierter sein. Die Fehlerbehandlung ist vorhanden, könnte aber ausgefeilter sein. Die Verwendung eines echten Vektorspeichers wäre für grössere Datensätze besser als eine einfache Liste.

Ist die Modellnutzung wirtschaftlich sinnvoll? In ihrem jetzigen Zustand wahrscheinlich nicht. Jede Anfrage erfordert Embedding-Aufrufe und einen Generierungsaufruf. Optimierungen (z.B. Caching, potenziell günstigere Modelle, Prompt-Tuning) wären für einen realen Einsatz entscheidend.

Löst es das reale Problem? Es demonstriert einen Proof-of-Concept und funktioniert für die definierten 40 FAQs. Für den tatsächlichen Einsatz bei Peak Pioneers bräuchte es jedoch eine erhebliche Überarbeitung, umfassendere Daten, bessere Evaluierung und Integrationsfähigkeiten. Es ist ein Startpunkt, kein fertiges Produkt.

Zeigt dieses Projekt, dass GenAI normale Menschen befähigt?

JA. 100% JA.

Dies ist die wichtigste Erkenntnis für uns. Ohne KI-Unterstützung (insbesondere Gemini für das Programmieren und für Ideen) hätten wir als Team, das nicht ausschliesslich aus Deep AI/ML Entwicklern besteht, nicht so einfach etwas Derartiges bauen können. Es demokratisiert die Entwicklung auf eine Weise, die wir zuvor nicht erlebt haben.

Robot looking through telescope

Noch offene Fragen?

Lassen Sie uns wissen, wenn Sie weitere Informationen zum Projekt oder Konzept wünschen. Wir teilen gerne weitere Details.

Jetzt informieren