Skip to content
Bob: Die Open-Source-Plattform für KI-Agenten mit RAG und Mandantenfähigkeit
← ← Zurück zu Gedanken AI

Bob: Die Open-Source-Plattform für KI-Agenten mit RAG und Mandantenfähigkeit

Die Entwicklung KI-basierter Anwendungen bedeutet heute weit mehr als die bloße Anbindung eines Sprachmodells. Man braucht eine Konversationsschnittstelle mit persistentem Gedächtnis, ein System zur Dokumentensuche und -auswertung, Benutzerauthentifizierung und -verwaltung sowie die Flexibilität, den KI-Anbieter zu wechseln, ohne die Anwendung umschreiben zu müssen. Jede dieser Komponenten ist für sich genommen bereits ein erhebliches Projekt, und sie alle zu einem kohärenten System zusammenzufügen, kostet Monate an Entwicklungszeit.

Bob ist unsere Antwort auf diese Herausforderung. Entwickelt von Ten Invent und veröffentlicht unter der MIT-Lizenz, ist Bob eine Open-Source-Plattform für KI-Agenten, die intelligente Konversationen, eine vollständige RAG-Pipeline (Retrieval-Augmented Generation), ein mandantenfähiges System mit JWT-Authentifizierung und eine Abstraktionsschicht vereint, die den nahtlosen Wechsel zwischen Cloud-basierten und lokalen KI-Modellen ermöglicht — ohne jede Änderung am Anwendungscode.

Das Problem, das Bob löst

Ein großes Sprachmodell, so leistungsfähig es auch sein mag, ist noch keine Anwendung. Um etwas wirklich Nützliches zu bauen, braucht man persistenten Konversationskontext, damit Benutzer kohärente Dialoge über mehrere Nachrichten hinweg führen können. Man braucht Dokumentenverarbeitung und -abruf, damit das Modell auf Grundlage der eigenen Daten antwortet, statt Informationen zu erfinden. Man braucht Authentifizierung, Benutzerverwaltung und API-Token-Verwaltung, damit mehrere Personen oder Teams das System sicher nutzen können.

Und vielleicht am wichtigsten: Man braucht die Freiheit, den KI-Anbieter frei zu wählen. Vielleicht nutzt man heute Amazon Bedrock, möchte aber morgen ein lokales Modell auf Ollama oder LM Studio testen. Dieser Wechsel sollte kein Umschreiben des Backends erfordern.

Die meisten Teams enden damit, diese gesamte Infrastruktur von Grund auf selbst aufzubauen — oft mit suboptimalen Ergebnissen und immer mit erheblichem Zeitaufwand. Bob bündelt diese Fähigkeiten in einer kohärenten, gut durchdachten Plattform, die man installieren, erweitern und anpassen kann.

Architekturübersicht

Bob folgt einer klaren Trennung zwischen Backend und Frontend, verbunden durch eine RESTful-API mit Server-Sent Events (SSE) für das Echtzeit-Streaming von Antworten.

Das Backend basiert auf FastAPI und SQLAlchemy 2 mit Alembic für Datenbankmigrationen. Es verwaltet die gesamte Geschäftslogik: Konversationsmanagement, Agentenorchestrierung, Dokumentenverarbeitung, Benutzerauthentifizierung und LLM-Kommunikation. MariaDB (oder MySQL) dient als relationale Datenbank, während ChromaDB als Vektorspeicher für die RAG-Pipeline fungiert.

Das Frontend ist eine moderne React-Anwendung, erstellt mit Vite, TypeScript und Tailwind CSS. Es bietet eine responsive Chat-Oberfläche mit Echtzeit-Streaming, Dokumenten-Upload-Funktionen, Sitzungsverwaltung und ein Administrationspanel für die Benutzerfreigabe und Systemkonfiguration.

Die Infrastruktur wird über Docker für die lokale Entwicklung und AWS-CloudFormation-Templates für das Cloud-Deployment verwaltet, sodass der Übergang von einem lokalen Prototyp zu einer Produktionsumgebung unkompliziert gelingt.

Kernfunktionen

Konversations-KI mit persistentem Gedächtnis

Bob pflegt einen sitzungsbasierten Konversationsverlauf, der es Benutzern ermöglicht, natürliche Dialoge über mehrere Nachrichten hinweg zu führen. Jede Sitzung bewahrt den Kontext, sodass das Modell Bezüge zu früheren Teilen der Konversation versteht. Antworten werden in Echtzeit über SSE gestreamt, was ein flüssiges und responsives Benutzererlebnis bietet.

RAG-Pipeline mit ChromaDB

Eine der leistungsfähigsten Funktionen von Bob ist die Retrieval-Augmented-Generation-Pipeline. Benutzer können Dokumente hochladen, die über LangChains Dokumentenverarbeitungswerkzeuge verarbeitet, in Abschnitte zerlegt, in Embeddings umgewandelt und in ChromaDB gespeichert werden. Wenn ein Benutzer eine Frage stellt, ruft Bob die relevantesten Dokumentenabschnitte ab und stellt sie dem Sprachmodell als Kontext zur Verfügung — so entstehen Antworten, die in den eigenen Daten verankert sind.

Dies ist entscheidend für professionelle Anwendungsfälle und Unternehmensszenarien, in denen Genauigkeit zählt. Anstatt sich ausschließlich auf die Trainingsdaten des Modells zu verlassen, kann Bob auf interne Dokumentation, Forschungsarbeiten, Richtliniendokumente oder jeden anderen bereitgestellten Textkorpus zurückgreifen.

Agentenwerkzeuge über Strands Agents

Bob ist nicht nur eine Chat-Oberfläche — es ist eine Agentenplattform. Über Strands Agents orchestriert Bob eine Reihe von Werkzeugen, die die KI während der Konversation einsetzen kann: einen Taschenrechner für mathematische Operationen, Zeitabfragen für Datums- und Uhrzeitinformationen, Dokumentenabruf für RAG-gestützte Antworten und Zusammenfassung für die Verdichtung längerer Texte. Der Agent entscheidet eigenständig, wann und wie diese Werkzeuge eingesetzt werden — basierend auf der Anfrage des Benutzers.

Mandantenfähiges System mit JWT-Authentifizierung

Bob ist von Grund auf für Mehrbenutzerbetrieb konzipiert. Es umfasst ein vollständiges Authentifizierungssystem basierend auf JWT-Token, mit Benutzerregistrierung, die eine Administratorfreigabe erfordert, bevor der Zugang gewährt wird. Benutzer können ihre eigenen API-Token für den programmatischen Zugriff verwalten. Dies macht Bob geeignet für Team-Deployments, interne Werkzeuge und SaaS-artige Anwendungen, bei denen Benutzertrennung und Zugriffskontrolle wesentlich sind.

Flexible LLM-Unterstützung: Cloud oder lokal

Der vielleicht markanteste Aspekt von Bobs Architektur ist die Anbieter-Abstraktionsschicht. Bob unterstützt zwei LLM-Backends:

  • Amazon Bedrock für Cloud-basierte Inferenz mit Zugang zu Modellen wie Claude, Llama und weiteren über AWS verfügbaren Modellen.
  • OpenAI-kompatible Server wie LM Studio, Ollama oder vLLM für lokale oder selbst gehostete Inferenz.

Der Wechsel zwischen Anbietern ist eine Konfigurationsänderung, keine Codeänderung. Man kann lokal mit einem Modell auf Ollama entwickeln, mit einem anderen Modell auf LM Studio testen und in Produktion auf Amazon Bedrock deployen — alles ohne Anpassung der Anwendung. Für Organisationen mit Anforderungen an die Datensouveränität oder für alle, die mit verschiedenen Modellen experimentieren möchten, ist diese Flexibilität von unschätzbarem Wert.

Technologie-Stack im Überblick

Schicht Technologie
Backend-Framework FastAPI
ORM und Migrationen SQLAlchemy 2 + Alembic
Datenbank MariaDB / MySQL
Vektorspeicher ChromaDB
Dokumentenverarbeitung LangChain
Agentenorchestrierung Strands Agents
AWS-Integration boto3
Frontend-Framework React + Vite
Frontend-Sprache TypeScript
Styling Tailwind CSS
Authentifizierung JWT
Infrastruktur Docker, AWS CloudFormation

Erste Schritte

Bob in Betrieb zu nehmen ist bewusst einfach gestaltet. Das Repository enthält Docker-Compose-Konfigurationen für die lokale Entwicklung, sodass der gesamte Stack — Backend, Frontend, Datenbank und Vektorspeicher — mit wenigen Befehlen läuft.

  1. Das Repository klonen von https://github.com/ianghel/bob.
  2. Die Umgebungsvariablen für den gewählten LLM-Anbieter konfigurieren.
  3. docker compose up ausführen, um alle Dienste zu starten.
  4. Das Frontend aufrufen, einen Benutzer registrieren und loslegen.

Die README-Datei im Repository bietet detaillierte Anleitungen sowohl für die lokale Entwicklung als auch für das Deployment auf AWS mit den enthaltenen CloudFormation-Templates.

Warum Open Source wichtig ist

Wir haben Bob als Open-Source-Projekt entwickelt, weil wir davon überzeugt sind, dass KI-Infrastruktur transparent, auditierbar und anpassbar sein sollte. Proprietäre KI-Plattformen binden an bestimmte Anbieter, verbergen ihre Implementierungsdetails und verlangen Premiumpreise für Funktionen, die Standard sein sollten. Mit Bob erhält man den vollständigen Quellcode unter der MIT-Lizenz. Man kann jede Zeile prüfen, alles nach eigenen Bedürfnissen anpassen und die Plattform überall betreiben — auf eigenen Servern, im eigenen Cloud-Konto oder auf dem Laptop eines Entwicklers.

Die MIT-Lizenz bedeutet keinerlei Einschränkungen für die kommerzielle Nutzung. Man kann Produkte auf Basis von Bob entwickeln, ihn in bestehende Systeme integrieren oder als Lernressource nutzen, um zu verstehen, wie produktionsreife KI-Anwendungen strukturiert sind.

Beiträge und Community

Bob wird aktiv von Ten Invent entwickelt, und wir freuen uns über Beiträge aus der Community. Ob es um neue Agentenwerkzeuge, Verbesserungen der RAG-Pipeline, Unterstützung weiterer LLM-Anbieter, Verfeinerung des Frontends oder Fehlerbehebungen geht — jeder Pull Request und jeder Issue-Report ist willkommen.

Besucht das Repository unter https://github.com/ianghel/bob, um den Code zu erkunden, die Dokumentation zu lesen und mitzumachen. Wenn Bob euch nützlich ist, gebt dem Projekt einen Stern auf GitHub — das hilft auch anderen, es zu entdecken.

Wir sind gespannt, was ihr mit Bob bauen werdet.