Interne Daten in KI-Modelle integrieren
Produktion, Logistik, Außendienst oder HR: In fast jedem Bereich Ihres Unternehmens entstehen täglich wertvolle Datenmengen unterschiedlichster Art.
Aber wie können Sie diese Informationen zu Ihrem Vorteil aufbereiten und schnell, effizient, ohne manuellen Mehraufwand nutzen? Die Antwort ist künstliche Intelligenz!
Wir zeigen im folgenden Artikel, wie Sie mit dem Einsatz von KI-Modellen interne Daten optimal verarbeiten und zur Optimierung Ihrer Prozesse nutzen können.
Das Artificial Intelligence Tool ChatGPT
Experten gehen davon aus, dass bis 2030 mehr als zwei Drittel der Unternehmen KI-Lösungen einsetzen werden und bereits jetzt sind AI-Anwendungen wie ChatGPT zu integralen Werkzeugen geworden, um die Automatisierung von verschiedensten Aufgaben im Arbeitsalltag zu vereinfachen.
ChatGPT (Chatbot Generative Pre-trained Transformer) ist ein sprach- und textbasierter Chatbot, mit dem der Benutzer über Texteingabe mit dem Computer menschenähnlich kommunizieren kann. Während der Unterhaltung antwortet der Bot auf Basis des Kontextes und kann so insbesondere für Unternehmen bereits jetzt in verschiedenen Tätigkeitsfeldern genutzt werden, wie z.B. als virtueller Assistent, Chatbot, zur Content-Generierung, als Übersetzer uvm..
ChatGPT richtig anwenden
Die KI wurde mit Millionen von Texten aus dem Internet, Büchern, Online-Foren und Artikeln trainiert, jedoch zeigt die Qualität der Antworten in manchen Fällen noch die Grenzen der künstlichen Intelligenz auf.
Dabei hat nicht nur die Datengrundlage Einfluss auf die generierte Antwort, sondern auch die Qualität der Eingabeaufforderungen, was man unter "Prompt Engineering" versteht. Prompt Engineering bedeutet präzise und klare Fragen oder Anweisungen zu formulieren, die den Textgenerator in die richtige Richtung lenken und es ihm ermöglichen, genaue und relevante Antworten zu generieren. Dazu müssen die Eingabeaufforderungen spezifisch, gut formuliert und auf das Ziel des Textgenerators ausgerichtet sein.
Außerdem basiert ChatGPT auf der Annahme, dass die zur Verfügung gestellten Daten korrekt sind und eine angemessene Qualität aufweisen. Gleichzeitig wird das textbasierte KI-System durch gerade diese Daten beeinflusst. Wenn die Daten also Verzerrungen beinhalten, übernimmt das Modell diese im Zweifel, wodurch die Antworten oder Vorhersagen maßgeblich beeinträchtigt werden. Hinzu kommt, dass die KI keine Kenntnisse über spezifische Details hat, die nicht öffentlich zugänglich sind und ihr Informationen zu aktuellen Ereignissen fehlen.
Die eigene Datengrundlage zur Integration von KI in interne Prozesse
Um ChatGPT als Mehrwert für unternehmensinterne Prozesse und Anwendungen zu verwenden, ist die Qualität der Datengrundlage also essentiell. Stellen Sie sich vor, Sie könnten hunderte eigene PDF-Dokumente oder sonstige Datenquellen als Kontext für das KI-Modell nutzen! Wir zeigen, wie das dank z.B. Llama Index technisch möglich ist!
Large Language Models (LLMs) sind eine faszinierende Technologie zur Generierung von Texten durch das Training mit umfangreichen Datensätzen. Doch um diese Modelle mit eigenen Daten zu erweitern, bedarf es spezieller Methoden wie dem sogenannten "in-context learning", bei dem der Kontext in die Eingabeaufforderung integriert wird. Bei Anwendungen wie ChatGPT besteht dabei jedoch das Problem, dass die Anzahl an Token pro Eingabeaufforderung (Prompt) limitiert ist. ChatGPT 3 hat zum Beispiel ein Limit von 4096 Token, GPT4 (8K) von 8000 Token und GPT4 (32K) hat ein Limit von 32000 Token pro Prompt. Man könnte daher auf die Idee kommen, die eigenen Daten in mehrere kleinere Prompts zu unterteilen und immer manuell einzufügen. Das ist jedoch keine optimale Lösung, da es nicht nur mühsam und zeitaufwendig wäre, sondern auch langfristig einen Kostenfaktor darstellt.
Um diesen Prozess also effizient und kostengünstig zu gestalten, müssen zwei Komponenten gelöst werden: die Datenannahme und die Datenindexierung.
Hier kommt Llama Index ins Spiel: eine benutzerfreundliche und flexible Schnittstelle zwischen externen Daten und LLMs. Llama Index ermöglicht Datenverbindungen zu unterschiedlichen Datenquellen und -formaten sowie die Indexierung von strukturierten und unstrukturierten Daten für den Einsatz in LLMs. Diese Datenquellen können beispielsweise YouTube, E-Mails, PDF-Dokumente, Wikipedia, Kalender und vieles mehr umfassen.
Die Indizes von Llama Index helfen dabei, häufig auftretende Probleme beim "in-context learning" zu umgehen, indem der Kontext in einem zugänglichen Format gespeichert wird und Einschränkungen wie Token-Begrenzungen oder Textaufteilungen berücksichtigt werden. Diese Lösung ermöglicht es, LLMs effektiv und kosteneffizient zu erweitern und bietet somit eine leistungsstarke Möglichkeit, um wertvolles Wissen aus verschiedenen Datenquellen zu generieren.
Die Umsetzung – technische Vorraussetzungen und Vorgehen
Um Llama Index nutzen zu können, muss zunächst Python in Version 3.7 oder höher installiert und ein OpenAI API Key vorhanden sein. Letzteren kann man sich auf der OpenAI Webseite generieren lassen.
1. Dokumente mit Llama Index laden
Um Dokumente zu laden, bietet LlamaIndex eine Vielzahl an Möglichkeiten. Es können Daten von verschiedenen Quellen wie WhatsApp, YouTube oder E-Mails geladen werden. Llama Index stellt mit Llama Hub eine Vielzahl an Schnittstellen für unterschiedliche Plattformen zur Verfügung.
Ein Beispiel für das Laden von lokalen Dateien sieht wie folgt aus:
1from llama_index import SimpleDirectoryReader
1documents = SimpleDirectoryReader('data').load_data()
2
2. Dokumente indexieren
Als nächstes müssen die Indizes erstellt werden. Dies kann mit den geladenen Dokumenten ganz einfach durchgeführt werden:
1from llama_index import GPTSimpleVectorIndex
1index = GPTSimpleVectorIndex.from_documents(documents)
3. Konfigurieren (Optional)
Standardmäßig wird das Modell text-davinci-003 verwendet. Es besteht jedoch auch die Möglichkeit, ein anderes LLM-Modell zu nutzen:
1from llama_index import LLMPredictor, GPTSimpleVectorIndex, PromptHelper, ServiceContext
2from langchain import OpenAI
3
4...
5
6# define LLM
7llm_predictor = LLMPredictor(llm=OpenAI(temperature=0, model_name="text-davinci-003"))
8
9# define prompt helper
10# set maximum input size
11max_input_size = 4096
12# set number of output tokens
13num_output = 256
14# set maximum chunk overlap
15max_chunk_overlap = 20
16prompt_helper = PromptHelper(max_input_size, num_output, max_chunk_overlap)
17
18service_context = ServiceContext.from_defaults(llm_predictor=llm_predictor, prompt_helper=prompt_helper)
19
20index = GPTSimpleVectorIndex.from_documents(
21 documents, service_context=service_context
22)
Eine genaue Anleitung zur Konfiguration gibt es hier!
4. Index abfragen
Nachdem der Index gebaut wurde, kann dieser nun abgefragt werden. Dazu gibt man einfach eine Frage als "Input" in das LLM-Modell ein:
1response = index.query("Was bietet newcubator an?")
5. Die Antwort
Als Antwort erhält man ein Response-Objekt, welches den Antwort-Text sowie die Quelle, auf welcher die Antwort beruht, enthält:
1# get response text
1print(response.response)
1# get sources
1print(response.source_nodes)
1# formatted sources
2print(response.get_formatted_sources())
Anwendungsbeispiel
Innerhalb von kurzer Zeit haben wir nach diesem Vorgehen mit Llama Index einen Chat-Bot gebaut. Diesen haben wir verschiedene Dokumente zur Verfügung gestellt, die interne Informationen über newcubator enthalten.
Fragt man ChatGPT z.B. nach unserem Dortmunder Standort, kann diese die Frage nicht beantworten und begründet dies anhand von fehlender, privater Informationen. Unserem eigenen Chatbot stehen diese Informationen jedoch zur Verfügung, weshalb er eine korrekte Antwort liefert.
Ausblick
KI-Modelle mit eigenen Daten haben ein sehr breites Anwendungsspektrum, da sie in verschiedensten Bereichen eingesetzt werden können, wo Fragen gegen eine große Menge an Daten gestellt werden.
Egal ob für den Kundensupport, als Chatbot, oder als interne Lösung für die Erklärung von unternehmensinternen Abläufen: Immer wenn Fragen gegen eine große Menge an Daten gestellt werden, kann künstliche Intelligenz Abhilfe schaffen und gleichzeitig eine menschliche Interaktion simulieren. So könnte man z.B. einen Chatbot in der eigenen Website integrieren und so Website-Besucher:innen interaktiv bei Fragen zur Verfügung stehen.
Sie wollen mehr erfahren?
Schreiben Sie uns eine Nachricht über das Kontaktformular oder machen sie gleich einen Termin für ein erstes Beratungsgespräch mit uns, um ihre Prozesse mit KI auf das nächste Level zu heben.