Veröffentlicht: 22. März 2025
von Wenwen Xie, Ivan Trusov und Andre Furlan Bueno
Databricks Apps bieten eine robuste Plattform zum Erstellen und Hosten interaktiver Anwendungen. React eignet sich hervorragend zum Erstellen moderner, dynamischer Webanwendungen, die sich reibungslos aktualisieren und poliert aussehen müssen. Durch die Kombination dieser Plattform mit einem React-basierten Frontend und dem Mosaic AI Agent Framework können Entwickler effiziente und intelligente Chat-Anwendungen erstellen. Dieser Blog konzentriert sich auf die technische Implementierung eines von Databricks gehosteten Chatbots und demonstriert sein Potenzial anhand eines branchenspezifischen Anwendungsfalls für Manufacturing Operations Management Chatbot.
Der Architekturüberblick:
Databricks Apps lassen sich nativ integrieren mit:
Databricks Apps machen externe Hosting-Infrastruktur überflüssig. Anwendungen erben die integrierten Sicherheits-, Compliance- und Ressourcenmanagementfunktionen der Plattform, was Bereitstellung und Wartung vereinfacht.
Databricks Apps unterstützen eine breite Palette von Frameworks wie Dash, Streamlit, Gradio, Flask und FastAPI. Diese Flexibilität ermöglicht sowohl datenreiche als auch visuell ansprechende Anwendungen.
Das Mosaic AI Agent Framework ist eine Sammlung von Tools auf Databricks, die Entwicklern hilft, KI-Agenten zu erstellen, bereitzustellen und zu verwalten, wie sie beispielsweise bei Retrieval-Augmented Generation (RAG) verwendet werden. Es integriert sich mit Frameworks wie LangChain und LlamaIndex und nutzt Databricks-Funktionen wie Unity Catalog für die Datenverwaltung und Tool-Aufrufe.
Entwickler können Agenten mit MLflow protokollieren und testen, ihr Verhalten debuggen und die Leistung verbessern. Funktionen wie Request-Logging, Response-Token-Streaming und Review-Apps erleichtern die Erstellung und Bereitstellung von KI-Agenten für reale Anwendungsfälle.
Manufacturing Operations Management (MOM) ist entscheidend für die Optimierung von Produktionsprozessen, die Verbesserung der Effizienz und die Aufrechterhaltung der Wettbewerbsfähigkeit in der sich heute schnell entwickelnden Industrielandschaft.
Die Nachfrage nach Betriebsmanagement mit KI-Agenten mit natürlichen Sprachschnittstellen wächst rasant, angetrieben durch den Bedarf an erhöhter Effizienz, verbesserter Entscheidungsfindung und optimierter Benutzererlebnisse.
Laut der neuesten Veröffentlichung von Meticulous Research® (Quelle) wird der KI-Markt im verarbeitenden Gewerbe bis 2031 voraussichtlich 84,5 Milliarden US-Dollar erreichen, bei einer durchschnittlichen jährlichen Wachstumsrate (CAGR) von 32,6 % im Prognosezeitraum 2024–2031 [1]. Dieses signifikante Wachstum unterstreicht die zunehmende Anerkennung der Bedeutung von KI-gesteuertem Betriebsmanagement in verschiedenen Branchen.
Ein produzierendes Unternehmen, das den Mosaic AI Chatbot mit Tool-Calling implementiert, kann Produktionsmanagern bei Folgendem helfen:
identify_bottleneck_station ab, um die Station zu ermitteln, die die meisten Verzögerungen verursacht.check_inventory_levels auf, um Echtzeit-Bestandsdaten für eine bestimmte Station abzurufen.Diese Abfragen können einfach als Funktionen implementiert werden, die in Unity Catalog gespeichert sind, entweder mit SQL oder Python. Dann kann ein KI-Agent Aufgaben wie Datenabruf, Codeausführung und kontextbezogene Entscheidungsfindung durch Nutzung der Funktionsaufrufe durchführen. Obwohl wir hier nicht auf die Details der Einrichtung des Agenten für Tool-Calling eingehen, können Sie das Databricks Generative AI Cookbook hier für detaillierte Anleitungen konsultieren.
Sobald der Mosaic AI Agent eingerichtet und für die Handhabung verschiedener Tools konfiguriert ist, kann er als Model-Serving-Endpunkt auf Databricks bereitgestellt werden. Dieser Endpunkt fungiert als Backend-Schnittstelle und ermöglicht es Frontend-Anwendungen wie Chatbots, Abfragen zu senden und Echtzeit-Einblicke zu erhalten.
Hier ist die Chatbot-Oberfläche, die lokal ausgeführt wird; später werden wir sie nach der Bereitstellung für Databricks Apps demonstrieren.
Das React-Frontend bietet eine interaktive und benutzerfreundliche Oberfläche zum Abfragen des Chatbots und zur Visualisierung von Antworten. Kernfunktionen umfassen die Echtzeit-Nachrichtenanzeige, Abfrageübermittlung und Bot-Antwortverarbeitung, eine interaktive Benutzeroberfläche mit Feedback und Markdown-Unterstützung.
Frontend-Code zum Senden von Nachrichten an das Backend
API-Client: Axios wird verwendet, um HTTP-Anfragen zu stellen. Die baseURL wird dynamisch basierend auf der Umgebung (Entwicklung oder Produktion) festgelegt.
HandleSendMessage: Erfasst die Benutzereingabe, sendet die Nachricht an den API-Endpunkt /api/chat und aktualisiert den Chatverlauf mit Nachrichten des Benutzers und des Bots.
Das FastAPI-Backend dient als Brücke zwischen dem React-Frontend und den Mosaic AI-Agenten. Es leitet Benutzeranfragen an den Model-Serving-Endpunkt des Agenten weiter, um eine Antwort zu erhalten.
Backend-Code zur Verarbeitung von Benutzeranfragen
Dieser API-Endpunkt empfängt Benutzernachrichten, interagiert mit dem Model-Serving-Endpunkt des Mosaic AI-Agenten und gibt aufgabenbezogene Antworten zurück.
In FastAPI ist die Reihenfolge der Einbindung von Unteranwendungen entscheidend, da sie bestimmt, wie eingehende Anfragen weitergeleitet werden.
app.mount("/api", api_app):
api_app) unter der Route /api ein./api beginnt (z. B. /api/chat), wird an diese Unteranwendung weitergeleitet.api_app-Instanz verarbeitet werden.app.mount("/", ui_app):
client/build unter der Stammroute (/) ein.index.html, JavaScript, CSS und andere statische Assets enthält. Die meisten großen UI-Frameworks (z. B. React, Vue und Svelte) unterstützen die Kompilierung in eine solche Sammlung von Assets über verschiedene Bundler (z. B. Vite, Webpack oder esbuild)./api beginnt, wird an die ui_app weitergeleitet./chat) unter der api_app-Instanz, der auf den Modell-Serving-Endpunkt des Mosaic AI-Agenten auf Databricks verweist.Depends), um einen WorkspaceClient zu injizieren, der für die Interaktion mit Databricks-APIs zuständig ist. Die Funktion chat_with_llm nimmt eine ChatRequest mit der Nachricht des Benutzers entgegen, formatiert sie als ChatMessage mit der Rolle USER und sendet sie mithilfe der Methode client.serving_endpoints.query an den Serving-Endpunkt.ChatResponse an den Client zurückgegeben.app.py.requirements.txt:
app.yaml:
Der Abschnitt command beschreibt die Konfiguration des Gunicorn-Servers mit den folgenden Spezifikationen:
Der Abschnitt env gibt Schlüssel-Wert-Paare an, die Umgebungsvariablen definieren, die an die App übergeben werden [2]:
Ich ordne die Umgebungsvariable SERVING_ENDPOINT_NAME dem Modell-Serving-Endpunkt agent_MODEL_NAME_FQN von Databricks zu, wobei MODEL_NAME_FQN den dreistufigen Namespace von Unity Catalog für catalog.db.model_name darstellt.
npm run build und legen Sie die statischen Dateien in den Ordner /client/build.Hier ist die Dateistruktur:
env-Abschnitt der Datei app.yaml definierten Funktionen übereinstimmen. Dazu gehört die Konfiguration von Ressourcen wie dem Modell-Serving-Endpunkt (agent_MODEL_NAME_FQN).Nach Ausführung dieses Befehls dauert der Bereitstellungsprozess einige Minuten. Sobald die Bereitstellung erfolgreich war, wird die URL der Databricks App angezeigt, was bedeutet, dass sie betriebsbereit ist.
Und Sie können damit chatten. Zum Beispiel: Unsere Produktionseffizienz ist niedrig. Finden Sie den Engpass, überprüfen Sie seine Effizienz und erstellen Sie einen detaillierten Bericht. Senden Sie eine E-Mail mit dem Bericht an [email protected]. Analysieren Sie auch die Stimmung des Berichts.
Die Integration von Databricks Apps mit React und dem Mosaic AI Agent Framework bietet eine leistungsstarke Lösung zur Erstellung dynamischer, interaktiver Chat-Anwendungen. Durch die Nutzung der integrierten Datenverarbeitungsfunktionen von Databricks, des sicheren Modell-Servings und der optimierten Bereitstellungsinfrastruktur können Entwickler robuste Systeme erstellen, die komplexe Anfragen bearbeiten.
Die Verwendung von FastAPI als Brücke zwischen dem React-Frontend und den Mosaic AI-Agenten gewährleistet eine nahtlose Kommunikation. Während Databricks Apps verschiedene Python-Backend-Frameworks wie Flask und Django unterstützt, wurde FastAPI aufgrund seiner prägnanten und entwicklerfreundlichen API gewählt.
Dieses Setup zeigt, wie fortschrittliche KI-Funktionen in praktische Branchenlösungen wie Fertigungs-Chatbots integriert werden können, um Effizienz und Entscheidungsfindung zu fördern. Da Databricks seine Plattform weiterentwickelt, können diese Integrationen auf breitere Anwendungsfälle ausgeweitet werden, was sie zu einem unverzichtbaren Werkzeug für Unternehmen macht, die mit KI-gesteuerten Lösungen innovieren wollen.
Den Quellcode finden Sie im GitHub-Repository hier.
[1] KI im produzierenden Gewerbe wird voraussichtlich 84,5 Milliarden US-Dollar bis 2031 erreichen. Quelle:
https://www.meticulousresearch.com/pressrelease/294/ai-in-manufacturing-market
[2] Databricks Apps-Konfiguration. Quelle:
https://docs.databricks.com/en/dev-tools/databricks-apps/configuration.html#databricks-apps-configuration
Die Integration von Databricks Apps mit React und dem Mosaic AI Agent Framework bietet eine leistungsstarke Lösung zur Erstellung dynamischer, interaktiver Chat-Anwendungen. Durch die Nutzung der integrierten Datenverarbeitungsfunktionen von Databricks, des sicheren Modell-Servings und der optimierten Bereitstellungsinfrastruktur können Entwickler robuste Systeme erstellen, die komplexe Anfragen bearbeiten.
Probieren Sie die Databricks Apps Produkt-Tour aus, um die schnellsten und sichersten Daten- und KI-Anwendungen auf der Databricks Data Intelligence Platform zu erstellen.
(Dieser Blogbeitrag wurde mit KI-gestützten Tools übersetzt.) Originalbeitrag
