Blog
ChatGPT mit firmeneigenen Dokumenten
Von Gerd Frasch am 25. Juni 2024
ChatGPT als fertige Anwendung (über die Website chatgpt.com von OpenAI) ist sehr nützlich als Alltagshelfer für so manche Aufgaben im Job und in der Freizeit. Wirklich große Anwendungsfälle für ChatGPT in Unternehmen zu finden, war jedoch nicht so einfach. Dies lässt sich durch folgende Punkte begründen:
- Webanwendung: Der Datenschutz ist nicht gewährleistet bei der Nutzung von chatgpt.com, da die Daten in den USA gespeichert werden (dies gilt auch für die Premium-Version). In der kostenfreien Version können die eingegeben Daten (Prompts) sogar zum Training der Modelle benutzt werden.
- Finetuning: Wenn Sie Ihr umfangreiches firmeneigenes Wissen im Rahmen von ChatGPT verwenden wollten, dann war dies via MS Azure Backend-API zwar möglich, aber nur mit Hilfe von Finetuning (die Modelle werden nachtrainiert). Das Ergebnis erfüllt meist nur bei spezifischen Anwendungsfällen die gewünschten Anforderungen. Dies ist mit hohem einmaligen und laufenden Aufwand verbunden. Es werden eine große Menge an Frage-Antwort-Paaren für das initiale Finetuning benötigt. Wenn Sie später weitere Informationen hinzufügen möchten, dann können Sie nicht einfach neue Frage-Antwort-Paare hinzufügen, sondern müssen ein komplettes Finetuning mit allen Frage-Antwort-Paaren durchführen. Dies ist aufwändig und teuer (GPU-Ressourcen). Das fertig trainierte Modell wird gesondert gehostet und die Anfragen sowie die Antworten sind teurer als beim normalen ChatGPT-Modell. https://azure.microsoft.com/en-us/pricing/details/cognitive-services/openai-service/
Was hat sich getan?
In diesem Bereich hat sich einiges getan. In den letzten Monaten hat sich ein Standard herauskristallisiert, um eine Reihe von Anwendungsfällen mit Wettbewerbsvorteilen unter Verwendung von ChatGPT zu lösen. Grundlage hierfür ist eine Kombination der folgenden beiden Entwicklungen:
- Microsoft bietet eine API-Schnittstelle an, mit der aus jedem Programm heraus eine Frage an ChatGPT gesendet werden kann (und man erhält natürlich auch eine Antwort). Die Daten werden nicht an OpenAI weitergegeben, nicht für das Training eines Modells verwendet und werden innerhalb der EU gespeichert (wenn gewünscht).
- Ein Lösungsansatz für die Verwendung von firmeneigenen Dokumenten im großen Stil hat sich etabliert. Unter dem Begriff RAG (Retrieval Augmented Generation) wurden Methoden entwickelt, die sich aktuell rasch verbreiten. Das Ziel dabei ist es, externe Quellen als Input in die Anfrage an Sprachmodelle mitzugeben. Die Grundidee von RAG ist es, zunächst die wichtigsten Informationen, passend zu einem Prompt, aus den externen Quellen zu identifizieren und eben nur diese Textabschnitte aus einer ggf. großen Menge an PDF-Dokumenten o.ä. an ChatGPT mitzusenden. Die Verwaltung dieser externen Quellen geschieht häufig mittels einer Vektordatenbank.
Vektordatenbank für firmeninterne Dokumente (RAG)
Für viele Anwendungsfälle ist es sinnvoll, wenn ChatGPT Zugang zu firmeninternem Wissen hat, um eine Frage zu beantworten. Es ist in der Regel keine Option, einfach alle Dokumente der Wissensdatenbank als Kontext für eine Anfrage an ChatGPT mitzuschicken (viel zu großer Input). Meistens ist auch ein Finetuning von ChatGPT kein lohnenswerter Ansatz. (Siehe einleitender Absatz zum Thema Finetuning)
Daher folgender Trick aus dem Forschungsgebiet RAG (Retrieval Augmented Generation):
- Sie nehmen Ihre internen Dokumente (ggf. in Absätze zerlegt) und lassen die Texte von einem Modell in Embeddings umwandeln. Embeddings sind einfach gesagt mathematische Etiketten für die jeweiligen Textstücke mit denen sich diese leicht vergleichen lassen. Sie können ohne eigenen Entwicklungsaufwand auf die von OpenAI entwickelten und über Azure bereitgestellten Embedding-Modelle zugreifen.
- Eine Frage an ChatGPT schicken Sie nun nicht mehr direkt an ChatGPT, sondern Sie suchen erst in der Vektordatenbank nach den Texten, die am ehesten etwas mit der Frage zu tun haben.
- Nun schicken Sie an ChatGPT gleichzeitig die eigentliche Frage und die relevantesten Textabschnitte aus Ihrer Vektordatenbank als Kontext.
- Et voilà, Sie erhalten eine Antwort, welche die Mächtigkeit von ChatGPT mit Ihrem firmeneigenen Wissen verbindet. Ohne Finetuning.
Vorteile:
- Verwendung einer großen Menge an unternehmensinternen Dokumenten als Basis für eine Anfrage
- Kein Training von KI-Modellen notwendig
- Hoher Datenschutz durch die Speicherung der Daten innerhalb der EU
Anwendungsgebiete
Wissensmanagement: Insbesondere, wenn internes Wissen in Form von Dokumenten vorliegt (z.B. PDF oder Excel) und wenn diese Dokumente nicht in einer sehr klaren hierarchischen Struktur abgelegt sind, dann ist dieses Wissen schwer auffindbar. Der oben beschriebene Ansatz ist geeignet, um Wissen in diesen Dokumenten schnell verfügbar zu machen.
Chatbot: Sie können einen Chatbot auf Basis von ChatGPT auf Ihrer Website hosten und dabei bestimmen, welche internen Dokumente Sie dem Chatbot zur Verfügung stellen wollen. Sie können mit dem Kontext außerdem bestimmen, welche öffentlich vorhandenen Informationen besonders wichtig sind (inkl. Ihrer Website).
Referenzfälle: Anhand eines Dokuments (eingehende Mail) oder Freitext möchten Sie ähnliche historische Fälle finden, um zu sehen, was damals gemacht wurde. Optimalerweise kann darauf eine Logik aufgebaut werden, um Fälle (halb)automatisiert zu bearbeiten.
Unternehmensspezifische Anwendungsfälle: Es gibt eine Reihe an spezifischen Anwendungsfällen, die wir mit unseren Kunden lösen. Dabei handelt es sich um interne Prozessschritte für die gilt: Es muss ein Text erstellt werden und für die Erstellung des Textes möchte ich internes Wissen verwenden.
OpenAI, Copilot oder Azure Service?
Nun stellt sich die Frage, wie Sie ChatGPT mit firmeneigenen Dokumenten in Ihrem Unternehmen einsetzen können.
OpenAI: Über die Website von OpenAI können Sie ChatGPT benutzen. Dies ist aber aufgrund des mangelhaften Datenschutzes mit Vorsicht zu genießen (siehe Absatz 9 der Datenschutzerklärung von OpenAI)
Copilot: Wenn Sie bereits Microsoft 365 im Unternehmen einsetzen, dann ist der Einsatz von Copilot naheliegend. Copilot bietet Zugang zu ChatGPT und laut Microsoft sind die Daten geschützt (innerhalb der EU gespeichert und nicht zum Training genutzt). Bei einem Prompt über Copilot werden (wenn gewünscht) erstmal alle Dokumente durchsucht, auf die Sie via SharePoint und OneDrive Zugriff haben, sowie auf ihre TEAMS-Chats. Entsprechend dem beschriebenen RAG-Ansatz werden dann die passendsten Textabschnitte aus dieser Suche zusammen mit Ihrem Prompt an ChatGPT geschickt und sie erhalten eine möglichst fundierte Antwort. https://learn.microsoft.com/de-de/copilot/microsoft-365/microsoft-365-copilot-overview
Bei spezifischen Anwendungsfällen (z.B. Verwendung von ChatGPT in einem Prozesschritt der sich häufig wiederholt) ist dieser generalistische Ansatz ggf. nicht der Beste.
Individuelle ChatGPT-Integration via Azure: Wenn Sie sich noch nicht im Microsoft-Universum befinden, oder wenn die Verwendung von firmeneigenen Dokumenten nicht einfach und individuell genug über den Microsoft Graph gesteuert werden können, dann empfiehlt sich eine Individuelle ChatGPT-Integration.
Dabei wird zwar auf den standardisierten OpenAI-Service von Azure zugegriffen. Allerdings wird die Verwaltung der internen Dokumente und die Logik zur Verwendung dieser Dokumente durch ChatGPT individuell für Ihr Unternehmen gesteuert. Dies kann, muss aber nicht in Azure passieren.
Limitationen
ChatGPT war und ist keine “Artificial General Intelligence”. Das bedeutet, dass die Anwendungsgebiete von RAG bzw. von ChatGPT mit firmeneigenen Dokumenten sich direkt oder indirekt auf Sprache beziehen sollten (Ausnahmen bestätigen die Regel). Viele Ziele lassen sich besser mit anderen KI-basierten Ansätzen lösen (z.B. Bildbasierte Qualitätskontrolle in der Fertigung). Außerdem sind die Potentiale regelbasierter Ansätze (ohne KI bzw. Machinellem Lernen) auch noch nicht überall ausgeschöpft.
Was können wir für Sie tun?
Wir können Ihnen dabei helfen, Einsatzmöglichkeiten von KI-Anwendung auf Basis von ChatGPT oder auch auf Basis anderer Verfahren des Maschinellen Lernens zu entdecken und zu beurteilen.
Wenn Sie ChatGPT unter Verwendung von internen Dokumenten einsetzen möchten, entwickeln wir gerne eine maßgeschneiderte Anwendung für Sie.
Sie möchten mehr über die individuelle Entwicklung von KI-Projekten erfahren und interessieren sich dafür wie auch Ihr Unternehmen von Künstlicher Intelligenz profitieren kann?
Kontaktieren Sie uns gerne für eine unverbindliche Beratung.