ChatGPT intern nutzen: So bauen Sie einen Chat-Bot für eigene Daten mit Microsoft Azure OpenAl
ChatGPT liefert Erkenntnisse in erstaunlich kreativer Textform, die Inhalte dafür stammen meist aus Internet-Quellen. Warum sollte man so einen intelligenten Sprachautomaten nicht zur Erschließung der eigenen Dokumente und Datenbestände nutzen? Tatsächlich liefert Microsoft mit Azure alle technischen Voraussetzungen, um Azure OpenAI-Dienste auf der Basis eigener Daten einzusetzen.
In Unternehmen mit größeren Datenbeständen liegt die Idee nahe, ein „ChatGPT für eigene Dokumente“ einzurichten. Tatsächlich stellt Microsoft die notwendigen Dienste bereit, um eine KI-Sprach-Engine für Daten aus der eigenen Organisation einzurichten. Alles, was Sie dafür benötigen, ist:
• Azure OpenAI
• Azure Cognitiv Search Index
Zum Aktuellen Zeitpunkt (Juli 2023) befindet sich Azure OpenAI noch in der Vorschauversion. Um es nutzen zu können, müssen Sie sich für die Preview anmelden. Azure Cognitiv Search ist bereits verfügbar.
1. Voraussetzung: Suche mit Azure Cognitiv Search einrichten
Die wichtigste Voraussetzung für eine KI-Lösung auf der Microsoft-Plattform ist die Einrichtung der Suchmaschinen-Dienste mit Index und Abfragefunktionen. Deshalb beginnt die Einrichtung bei Azure Cognitiv Search, wo Sie eine Instanz anlegen müssen. Eine Anleitung dafür finden Sie hier bei Microsoft: Create an Azure Cognitive Search service in the portal (de-de).
a) Zu indizierende Daten angeben
Im nächsten Schritt geben Sie an, wo die Daten liegen, die indiziert werden sollen. Dazu gibt es unterschiedliche Optionen, die alle zu einem Index in der neu angelegt Azure Cognitiv Search-Instanz führen. Auf der Überblicksseite finden Sie dazu den Punkt Connect your data -> Learn more, wie hier zu sehen ist:
b) Mit Demodaten von Microsoft testen
Um das Ganze zu testen, können Sie auch Demodaten verwenden, die Microsoft dafür bereitstellt. Über den Schaltfläche Import gelangen Sie zu den aktuell verfügbaren Optionen des Datenimports, in unserem Fall mit der Auswahl Samples:
Sofern Sie zu den Anwendern gehören, deren Daten in Microsoft 365, SharePoint Online und Teams liegen, ist die Option SharePoint Online interessant. Aktuell befindet sich diese Option noch in der Vorschauphase und kann nicht über die Konfigurationsoberfläche ausgewählt werden.
Falls Sie dennoch Azure Cognitiv Search verwenden wollen, um Daten in SharePoint Online zu indizieren, finden Sie hier die Beschreibung: Index data from SharePoint document libraries (de-de).
In meinem Beispiel verwende ich die Demodaten hotels-sample, die Microsoft zur Verfügung stellt:
Der Index von hotels-samples enthält folgende Felder:
Die ausgewählten Felder markieren die Daten, die nun in Azure OpenAI genutzt werden können.
2. Konfigurieren der KI-Komponente Azure OpenAI
Zum Start mit Azure OpenAI legen Sie eine Instanz an. Damit steht Ihnen das Azure OpenAI Studio zur Verfügung, inklusive der Option ChatGPT-Playground:
a) Im ChatGPT-Playground die Daten für die KI auswählen
Im ChatGPT-Playground können Sie nun auswählen, mit welchen Daten die KI arbeiten soll. Das können die sein, die das allgemeinen Language Model GPT kennt, oder aber Sie wählen dafür die eigenen Daten aus:
Sofern Sie die eigenen Daten verwenden wollen, die oben im Abschnitt Azure Cognitiv Search gewählt wurde, müssen Sie die entsprechenden Details auswählen:
b) Indexdatenfelder zuordnen
Das „Index data field mapping“ im nächsten Schritt ist nicht zwingend erforderlich. Allerdings empfiehlt sich die Auswahl, weil damit die Qualität der Antworten deutlich steigt. Im Beispiel mit den „hotels-sample“-Demo Daten sieht die Einrichtung dann so aus:
Sobald Sie das eingerichtet haben, können Sie Texte auf Basis des Large Language Modells GPT und den hinterlegten Daten generieren. Das sieht dann im Beispiel so aus:
Werden mit Azure OpenAI überhaupt noch Metadaten benötigt?
Die Frage liegt nahe, ist aber falsch gestellt. Denn entscheidend ist, ob die KI Zugriff wirklich alle relevanten Informationen hat. Dazu gehören auch Metadaten.
Das Beispiel im Bild veranschaulicht das Problem. Azure OpenAI kennt die Informationen nicht, obwohl sie in Form von Metadaten vorhanden wären.