In Progress

Chat with your Data - Chatte mit Deinen Daten!

Chat with your Data ist eine innovative Plattform, die es ermöglicht, Dateien (wie PDF, DOCX oder MSG) hochzuladen und mittels eines intelligenten Chatbots direkt Fragen zum Inhalt dieser Dokumente zu stellen. Das System extrahiert den Inhalt der Dokumente, verarbeitet ihn in einzelne, durchsuchbare Textabschnitte und liefert kontextbezogene Antworten auf Benutzeranfragen – ganz ohne manuelles Durchsuchen der Dokumente.

Sollte die Live Demo nicht funktionieren, dann klicke hier.

Problemstellung und Use Case

  • Informationsflut: Unternehmen und Organisationen verfügen oft über eine Vielzahl von Dokumenten (Verträge, Berichte, Ausschreibungen usw.), deren Inhalt zeitaufwendig manuell zu durchsuchen ist.
  • Schneller Zugriff auf Wissen: Die Notwendigkeit, relevante Informationen schnell zu extrahieren, ist von entscheidender Bedeutung. Klassische Suchfunktionen stoßen hier häufig an ihre Grenzen.
  • Natürliche Sprachinteraktion: Nutzer sollen die Möglichkeit erhalten, in natürlicher Sprache Fragen zu stellen, ohne sich mit komplexen Suchabfragen auseinandersetzen zu müssen.

Mit welchen Technologien haben wir gearbeitet?

Wir verwenden die folgenden Technologien, um unser Projekt zu betreiben:

  • LangChain als Framework
  • OpenAI für die LLM Schnittstelle
  • Chroma DB als Vektordatenbank
  • FastAPI für das Backend
  • NextJS für das Frontend
  • Azure Cloud für das Hosting

Produktschaubild

Architektur 1

Architektur - Cloud Deployment

Architektur 2

Architektur - On-Premise Deployment

Mitwirkende

MK
Mario Kellner

Projektleitung & Entwicklung

MM
Mergim Mustafa

Lead Developer

ST
Simon Thiemann

Entwicklung

YG
Yakup Güzel

Entwicklung

Erfahrungsberichte und Learnings

Standardisierung und Modularität - Entwicklung eines Best Practice Leitfadens für Standarisierung und Qualität.

Anbinden von verschiedenen Datenquellen - Jedes Dateiformat braucht eine separate Bearbeitung (Metadaten, Textsplitter)

Bestehende Frameworks zu starr - Eigene Entwicklung notwendig, um Anforderungen zu erfüllen.

Alle Chunks werden für Antwort verwendet - Prävention durch Zusammenfassung pro Chunk durch das LLM.

Chatbot versteht Kontext nicht - Rechtschreibprüfung und Kontext-kompression der Frage stabilisieren Antworten.

Halluzinationen vom LLM - Erneutes Filtern von Dokumenten und Aufbau von Alternativfragen erhöhen Qualität.

Chatbot Integration / Frontend - Welche Informationen kann der Chatbot erhalten und welche soll er wiedergeben.

Kundenfähigkeit

Status

Das Projekt Chat with your Data befindet sich in einem fortgeschrittenen Prototypenstadium. Es wurde bereits erfolgreich in internen Tests sowie in ersten Pilotprojekten validiert. Die Kernfunktionen – vom Upload und der Verarbeitung der Dokumente bis hin zur intelligenten Beantwortung von Nutzeranfragen – laufen stabil und können in einem realen Einsatzumfeld eingesetzt werden. Dennoch sind im Hinblick auf den produktiven Kundeneinsatz noch einige Optimierungen und Erweiterungen erforderlich, um eine hochskalierbare, sichere und benutzerfreundliche Lösung zu gewährleisten.

Einrichtung des Projekts beim Kunden

    Systeminstallation und Konfiguration

  • Deployment der Backend-Anwendung: Installation der FastAPI-basierten REST-API auf den gewünschten Servern (z. B. als Docker-Container, Kubernetes-Cluster oder in einer Cloud-Umgebung wie Azure).
  • Konfiguration der Vektor-Datenbank: Einrichtung von Chroma als Vektor-Datenbank inklusive der Persistenz für benutzerspezifische Dokumentenordner.
  • Einrichtung von LLM-Zugängen: Integration von Language Models (z. B. über OpenAI oder Azure Cognitive Services) mit entsprechendem API-Schlüssel-Management.
  • Integration in die bestehenden IT-Landschaft

  • Anbindung an Kundenportale oder Intranets: Über REST API oder Microservices können bestehende Systeme angebunden werden.
  • Sicherheits- und Authentifizierungskonzepte: Integration in das unternehmenseigene Identity-Management (z. B. SSO, OAuth) sowie Umsetzung von Datenschutz- und Compliance-Vorgaben (z. B. DSGVO-konforme Datenverschlüsselung).
  • Deployment und Monitoring

  • Kontinuierliche Überwachung: Implementierung von Monitoring- und Logging-Lösungen zur Beobachtung der Systemperformance und Sicherheit.
  • Skalierung: Anpassung der Infrastruktur an die erwarteten Nutzerzahlen und Lastanforderungen.

Beteiligte Positionen

    Projektleiter / Produktmanager

  • Gesamtkoordination des Projekts, Abstimmung zwischen internen Teams und Kunden sowie Planung und Umsetzung der Roadmap.
  • Softwareentwickler und DevOps-Ingenieure

  • Weiterentwicklung des Systems, Implementierung von Integrationen, Optimierung der Infrastruktur und Sicherstellung eines reibungslosen Deployments und Betriebs.
  • Support