In unserem vorherigen Artikel haben wir die Vorgehensweise zur Entwicklung eines KI-Chatbots mithilfe der ChatGPT-API erläutert und aufgezeigt, wie man ihm eine spezifische Rolle zuweist, um ihn zu personalisieren. Doch was ist, wenn Sie die KI mit Ihren individuellen Daten trainieren möchten? Nehmen wir an, Sie verfügen über ein Buch, Finanzdaten oder eine umfassende Sammlung von Datenbanken und möchten diese mühelos durchsuchen. In diesem Leitfaden präsentieren wir Ihnen eine leicht verständliche Anleitung, wie Sie einen KI-Chatbot mit Ihrer eigenen Wissensdatenbank mithilfe von LangChain und der ChatGPT-API trainieren können. Wir nutzen LangChain, GPT Index sowie weitere leistungsstarke Bibliotheken, um den KI-Chatbot mit dem Large Language Model (LLM) von OpenAI zu trainieren. Werfen wir einen Blick darauf, wie Sie einen KI-Chatbot mit Ihrem eigenen Datensatz erstellen und trainieren können.
Entwicklung eines KI-Chatbots mit einer benutzerdefinierten Wissensdatenbank unter Verwendung der ChatGPT-API, LangChain und GPT Index (2023)
In diesem Artikel haben wir die einzelnen Schritte zur Schulung eines KI-Chatbots mit Ihren eigenen Daten detailliert beschrieben. Von der Einrichtung der notwendigen Tools und Software bis hin zum Training des KI-Modells haben wir alle Anweisungen in leicht verständlicher Sprache formuliert. Es wird dringend empfohlen, die Anweisungen von oben nach unten zu befolgen und keinen Schritt zu überspringen.
Wichtige Hinweise, bevor Sie Ihre KI mit Ihren eigenen Daten trainieren
1. Sie können den KI-Chatbot auf jeder Plattform schulen, sei es Windows, macOS, Linux oder ChromeOS. In diesem Artikel verwende ich Windows 11, die Vorgehensweise ist jedoch auf anderen Plattformen nahezu identisch.
2. Diese Anleitung ist für allgemeine Nutzer konzipiert, und die Anweisungen sind in einer unkomplizierten Sprache verfasst. Selbst wenn Sie über grundlegende Computerkenntnisse verfügen und keine Programmiererfahrung haben, können Sie in wenigen Minuten einen KI-Chatbot für Fragen und Antworten erstellen und trainieren. Wenn Sie unseren vorherigen Artikel zum ChatGPT-Bot bereits gelesen haben, wird es Ihnen noch leichter fallen, den Prozess zu verstehen.
3. Da wir einen KI-Chatbot auf der Grundlage Ihrer eigenen Daten trainieren werden, ist es ratsam, einen leistungsstarken Computer mit einer guten CPU und GPU zu verwenden. Für Testzwecke können Sie jedoch auch jeden Low-End-Computer verwenden, der ohne Probleme funktioniert. Ich habe ein Chromebook verwendet, um das KI-Modell mit einem Buch von 100 Seiten (~100 MB) zu trainieren. Sollten Sie jedoch einen umfangreichen Datensatz mit Tausenden von Seiten verarbeiten wollen, wird die Verwendung eines leistungsstarken Computers dringend empfohlen.
4. Um optimale Ergebnisse zu erzielen, sollte der Datensatz auf Englisch verfasst sein. Laut OpenAI funktioniert dies jedoch auch mit gängigen internationalen Sprachen wie Französisch, Spanisch, Deutsch usw. Sie können es also einfach selbst in Ihrer Sprache ausprobieren.
Einrichtung der Softwareumgebung zum Training eines KI-Chatbots
Wie bereits in unserem vorherigen Artikel erwähnt, sollten Sie Python und Pip sowie eine Reihe von Bibliotheken installieren. In dieser Anleitung werden wir alles von Grund auf neu einrichten, um sicherzustellen, dass auch neue Benutzer den Installationsprozess verstehen können. Um Ihnen einen kurzen Überblick zu geben: Wir installieren Python und Pip. Anschließend werden wir Python-Bibliotheken installieren, einschließlich OpenAI, GPT Index, Gradio und PyPDF2. Im Laufe des Prozesses werden Sie erfahren, wofür jede Bibliothek verwendet wird. Machen Sie sich keine Sorgen über den Installationsprozess, er ist relativ einfach. Lassen Sie uns direkt loslegen.
Python installieren
1. Zunächst müssen Sie Python (mit Pip) auf Ihrem Computer installieren. Öffnen Sie diesen Link und laden Sie die Installationsdatei für Ihre Plattform herunter.
2. Führen Sie anschließend die Installationsdatei aus und stellen Sie sicher, dass das Kontrollkästchen „Python.exe zu PATH hinzufügen“ aktiviert ist. Dieser Schritt ist entscheidend. Klicken Sie danach auf „Jetzt installieren“ und folgen Sie den herkömmlichen Schritten zur Installation von Python.
3. Um zu überprüfen, ob Python korrekt installiert wurde, öffnen Sie das Terminal auf Ihrem Computer. Ich verwende das Windows Terminal unter Windows, Sie können aber auch die Eingabeaufforderung verwenden. Führen Sie dort den folgenden Befehl aus, um die Python-Version anzeigen zu lassen. Unter Linux und macOS müssen Sie möglicherweise `python3 –version` anstelle von `python –version` verwenden.
python --version
Pip aktualisieren
Mit der Installation von Python wird gleichzeitig Pip auf Ihrem System eingerichtet. Wir werden es also auf die neueste Version aktualisieren. Für diejenigen, die es nicht wissen: Pip ist der Paketmanager für Python. Im Wesentlichen können Sie Tausende von Python-Bibliotheken über das Terminal installieren. Wir werden Pip verwenden, um die Bibliotheken OpenAI, gpt_index, Gradio und PyPDF2 zu installieren. Hier sind die Schritte, die Sie befolgen müssen.
1. Öffnen Sie das Terminal Ihrer Wahl auf Ihrem Computer. Ich verwende das Windows-Terminal, Sie können jedoch auch die Eingabeaufforderung verwenden. Führen Sie nun den folgenden Befehl aus, um Pip zu aktualisieren. Auch hier müssen Sie unter Linux und macOS möglicherweise `python3` und `pip3` verwenden.
python -m pip install -U pip
2. Um zu überprüfen, ob Pip korrekt installiert wurde, führen Sie den folgenden Befehl aus. Die Versionsnummer wird angezeigt. Wenn Fehler auftreten, folgen Sie unserer speziellen Anleitung zur Installation von Pip unter Windows, um Probleme im Zusammenhang mit dem Pfad zu beheben.
pip --version
Installation der Bibliotheken OpenAI, GPT Index, PyPDF2 und Gradio
Sobald Python und Pip eingerichtet sind, ist es an der Zeit, die grundlegenden Bibliotheken zu installieren, die uns bei der Entwicklung eines KI-Chatbots mit einer benutzerdefinierten Wissensdatenbank helfen werden. Hier sind die Schritte, die Sie befolgen müssen.
1. Öffnen Sie das Terminal und führen Sie den folgenden Befehl aus, um die OpenAI-Bibliothek zu installieren. Wir verwenden diese als LLM (Large Language Model), um einen KI-Chatbot zu trainieren und zu erstellen. Außerdem importieren wir das LangChain-Framework von OpenAI. Beachten Sie, dass Benutzer von Linux und MacOS möglicherweise `pip3` anstelle von `pip` verwenden müssen.
pip install openai
2. Als nächstes installieren wir GPT Index, auch bekannt als LlamaIndex. Dies ermöglicht dem LLM, sich mit den externen Daten zu verbinden, die unsere Wissensdatenbank bilden.
pip install gpt_index
3. Installieren Sie anschließend PyPDF2, um PDF-Dateien zu analysieren. Wenn Sie Ihre Daten im PDF-Format bereitstellen möchten, hilft diese Bibliothek dem Programm, die Daten problemlos zu lesen.
pip install PyPDF2
4. Zum Schluss installieren wir die Gradio-Bibliothek. Dies dient der Erstellung einer einfachen Benutzeroberfläche zur Interaktion mit dem trainierten KI-Chatbot. Damit haben wir alle erforderlichen Bibliotheken zur Schulung eines KI-Chatbots installiert.
pip install gradio
Download eines Code-Editors
Schließlich benötigen wir einen Code-Editor, um einen Teil des Codes zu ändern. Unter Windows empfehle ich Notepad++ (Herunterladen). Laden Sie das Programm einfach über den bereitgestellten Link herunter und installieren Sie es. Sie können auch VS Code auf jeder Plattform verwenden, wenn Sie mit leistungsstarken IDEs vertraut sind. Abgesehen von VS Code können Sie Sublime Text (Herunterladen) unter macOS und Linux verwenden.
Für ChromeOS können Sie die ausgezeichnete Caret-App verwenden (Herunterladen), um den Code zu bearbeiten. Wir sind fast fertig mit der Einrichtung der Softwareumgebung und es ist an der Zeit, den OpenAI-API-Schlüssel zu erhalten.
Kostenloser Erhalt des OpenAI-API-Schlüssels
Um nun einen KI-Chatbot auf der Grundlage einer benutzerdefinierten Wissensdatenbank zu entwickeln und zu trainieren, benötigen wir einen API-Schlüssel von OpenAI. Mit dem API-Schlüssel können Sie das OpenAI-Modell als LLM verwenden, um Ihre benutzerdefinierten Daten zu untersuchen und Rückschlüsse zu ziehen. Derzeit bietet OpenAI neuen Nutzern kostenlose API-Schlüssel mit einem kostenlosen Guthaben im Wert von 5 USD für die ersten drei Monate an. Wenn Sie Ihr OpenAI-Konto bereits zuvor erstellt haben, haben Sie möglicherweise ein kostenloses Guthaben von 18 USD auf Ihrem Konto. Sobald das kostenlose Guthaben aufgebraucht ist, müssen Sie für den API-Zugang bezahlen. Momentan ist er jedoch für alle Nutzer kostenlos verfügbar.
1. Besuchen Sie platform.openai.com/signup und erstellen Sie ein kostenloses Konto. Wenn Sie bereits ein OpenAI-Konto haben, melden Sie sich einfach an.
2. Klicken Sie anschließend oben rechts auf Ihr Profil und wählen Sie im Dropdown-Menü „API-Schlüssel anzeigen“.
3. Klicken Sie hier auf „Neuen geheimen Schlüssel erstellen“ und kopieren Sie den API-Schlüssel. Beachten Sie, dass Sie später nicht mehr den vollständigen API-Schlüssel kopieren oder anzeigen können. Daher wird dringend empfohlen, den API-Schlüssel sofort zu kopieren und in eine Textdatei einzufügen.
4. Geben Sie den API-Schlüssel auch nicht öffentlich weiter oder zeigen Sie ihn nicht. Es handelt sich um einen privaten Schlüssel, der ausschließlich dem Zugriff auf Ihr Konto dient. Sie können API-Schlüssel auch löschen und mehrere private Schlüssel erstellen (bis zu fünf).
Training und Entwicklung eines KI-Chatbots mit benutzerdefinierter Wissensdatenbank
Nachdem wir nun die Softwareumgebung eingerichtet und den API-Schlüssel von OpenAI erhalten haben, können wir mit dem Training des KI-Chatbots beginnen. Wir verwenden hier das Modell „text-davinci-003“ anstelle des neueren Modells „gpt-3.5-turbo“, da Davinci für die Textvervollständigung viel besser geeignet ist. Sie können das Modell aber auch problemlos auf Turbo umstellen, um die Kosten zu senken. Gehen wir nun zu den Anweisungen über.
Hinzufügen Ihrer Dokumente zum Trainieren des KI-Chatbots
1. Erstellen Sie zunächst einen neuen Ordner mit dem Namen „docs“ an einem leicht zugänglichen Ort, z. B. auf dem Desktop. Sie können auch einen anderen Ort nach Belieben auswählen. Behalten Sie jedoch den Ordnernamen „docs“ bei.
2. Verschieben Sie als Nächstes die Dokumente, die Sie zum Trainieren der KI verwenden möchten, in den Ordner „docs“. Sie können mehrere Text- oder PDF-Dateien (auch gescannte) hinzufügen. Wenn Sie eine umfangreiche Tabelle in Excel haben, können Sie diese als CSV- oder PDF-Datei importieren und dann dem Ordner „docs“ hinzufügen. Sie können sogar SQL-Datenbankdateien hinzufügen, wie hier erklärt Langchain-KI-Tweet. Ich habe nicht viele andere Dateiformate außer den genannten getestet, aber Sie können sie gerne selbst hinzufügen und überprüfen. Für diesen Artikel füge ich einen meiner Artikel über NFT im PDF-Format hinzu.
Hinweis: Wenn Sie ein großes Dokument haben, dauert die Verarbeitung der Daten je nach CPU und GPU länger. Außerdem werden Ihre kostenlosen OpenAI-Token schnell aufgebraucht. Beginnen Sie daher zu Beginn mit einem kleinen Dokument (30-50 Seiten oder <100 MB Dateien), um den Prozess zu verstehen.
Den Code vorbereiten
1. Starten Sie nun Notepad++ (oder den Code-Editor Ihrer Wahl) und fügen Sie den folgenden Code in eine neue Datei ein. Auch hier habe ich großartige Hilfe von armrrs auf Google Colab erhalten und den Code optimiert, um ihn mit PDF-Dateien kompatibel zu machen und eine Gradio-Oberfläche dafür zu erstellen.
from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper from langchain import OpenAI import gradio as gr import sys import os os.environ["OPENAI_API_KEY"] = 'Your API Key' def construct_index(directory_path): max_input_size = 4096 num_outputs = 512 max_chunk_overlap = 20 chunk_size_limit = 600 prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit) llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.7, model_name="text-davinci-003", max_tokens=num_outputs)) documents = SimpleDirectoryReader(directory_path).load_data() index = GPTSimpleVectorIndex(documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper) index.save_to_disk('index.json') return index def chatbot(input_text): index = GPTSimpleVectorIndex.load_from_disk('index.json') response = index.query(input_text, response_mode="compact") return response.response iface = gr.Interface(fn=chatbot, inputs=gr.inputs.Textbox(lines=7, label="Enter your text"), outputs="text", title="Custom-trained AI Chatbot") index = construct_index("docs") iface.launch(share=True)
2. So sieht der Code im Code-Editor aus.
3. Klicken Sie anschließend im oberen Menü auf „Datei“ und wählen Sie im Dropdown-Menü „Speichern unter…“.
4. Legen Sie anschließend den Dateinamen `app.py` fest und ändern Sie „Speichern als Typ“ im Dropdown-Menü auf „Alle Typen“. Speichern Sie die Datei dann an dem Ort, an dem Sie den Ordner „docs“ erstellt haben (in meinem Fall ist es der Desktop). Sie können den Namen nach Belieben ändern, aber stellen Sie sicher, dass `.py` angehängt wird.
5. Stellen Sie sicher, dass sich der Ordner „docs“ und die Datei „app.py“ am selben Speicherort befinden, wie im folgenden Screenshot gezeigt. Die Datei „app.py“ befindet sich außerhalb des Ordners „docs“ und nicht darin.
6. Kehren Sie in Notepad++ erneut zum Code zurück. Ersetzen Sie dort Ihren API-Schlüssel durch den, den Sie oben auf der OpenAI-Website generiert haben.
7. Drücken Sie abschließend „Strg + S“, um den Code zu speichern. Sie können den Code nun ausführen.
Entwicklung eines ChatGPT-KI-Bots mit benutzerdefinierter Wissensdatenbank
1. Öffnen Sie zunächst das Terminal und führen Sie den folgenden Befehl aus, um zum Desktop zu wechseln. Dort habe ich den Ordner „docs“ und die Datei „app.py“ gespeichert. Wenn Sie beide Elemente an einem anderen Ort gespeichert haben, wechseln Sie über das Terminal zu diesem Ort.
cd Desktop
2. Führen Sie nun den folgenden Befehl aus. Benutzer von Linux und macOS müssen möglicherweise `python3` verwenden.
python app.py
3. Das System beginnt nun mit der Analyse des Dokuments unter Verwendung des OpenAI-LLM-Modells und beginnt mit der Indizierung der Informationen. Je nach Dateigröße und Leistungsfähigkeit Ihres Computers kann die Verarbeitung des Dokuments einige Zeit in Anspruch nehmen. Nach Abschluss wird eine Datei mit dem Namen „index.json“ auf dem Desktop erstellt. Wenn das Terminal keine Ausgabe anzeigt, machen Sie sich keine Sorgen, da es möglicherweise immer noch die Daten verarbeitet. Zur Information: Die Verarbeitung eines 30-MB-Dokuments dauert etwa 10 Sekunden.
4. Sobald das LLM die Daten verarbeitet hat, erhalten Sie einige Warnmeldungen, die Sie ignorieren können. Schließlich finden Sie ganz unten eine lokale URL. Kopieren Sie diese.
5. Fügen Sie nun die kopierte URL in den Webbrowser ein, und schon ist es soweit. Ihr individuell trainierter ChatGPT-basierter KI-Chatbot ist einsatzbereit. Zu Beginn können Sie den KI-Chatbot fragen, worum es in dem Dokument geht.
6. Sie können weitere Fragen stellen, und der ChatGPT-Bot antwortet basierend auf den Daten, die Sie der KI zur Verfügung gestellt haben. So können Sie also einen individuell trainierten KI-Chatbot mit Ihren eigenen Datensätzen entwickeln. Sie können jetzt einen KI-Chatbot auf der Grundlage beliebiger Informationen entwickeln und trainieren. Die Möglichkeiten sind unendlich.
7. Sie können auch die öffentliche URL kopieren und mit Freunden und Familie teilen. Der Link ist 72 Stunden lang aktiv, Sie müssen jedoch Ihren Computer ebenfalls eingeschaltet lassen, da die Serverinstanz auf Ihrem Computer ausgeführt wird.
8. Um den speziell trainierten KI-Chatbot zu stoppen, drücken Sie im Terminalfenster „Strg + C“. Wenn es nicht funktioniert, drücken Sie erneut „Strg + C“.
9. Um den AI-Chatbot-Server neu zu starten, wechseln Sie einfach wieder zum Desktop-Speicherort und führen Sie den folgenden Befehl aus. Denken Sie daran, dass die lokale URL gleich bleibt, die öffentliche URL sich jedoch nach jedem Serverneustart ändert.
python app.py
10. Wenn Sie den KI-Chatbot mit neuen Daten trainieren möchten, löschen Sie die Dateien im Ordner „docs“ und fügen Sie neue hinzu. Sie können auch mehrere Dateien hinzufügen, aber Informationen zum gleichen Thema bereitstellen, da Sie sonst möglicherweise eine inkonsistente Antwort erhalten.
11. Führen Sie nun den Code erneut im Terminal aus, und es wird eine neue Datei `index.json` erstellt. Dabei wird die alte Datei `index.json` automatisch ersetzt.
python app.py
12. Um Ihre Token im Auge zu behalten, gehen Sie online zu OpenAI Dashboard und überprüfen Sie, wie viel kostenloses Guthaben noch vorhanden ist.
13. Schließlich müssen Sie den Code nicht anfassen, es sei denn, Sie möchten den API-Schlüssel oder das OpenAI-Modell für weitere Anpassungen ändern.
Entwicklung eines benutzerdefinierten KI-Chatbots mit Ihren eigenen Daten
So können Sie einen KI-Chatbot mit einer benutzerdefinierten Wissensdatenbank entwickeln. Ich habe diesen Code verwendet, um die KI mit medizinischen Büchern, Artikeln, Datentabellen und Berichten aus alten Archiven zu trainieren, und es hat einwandfrei funktioniert. Entwickeln Sie also Ihren eigenen KI-Chatbot mit dem Large Language Model von OpenAI und ChatGPY. Das war es von unserer Seite. Wenn Sie nach den besten ChatGPT-Alternativen suchen, lesen Sie unseren verlinkten Artikel. Um ChatGPT auf Ihrer Apple Watch zu verwenden, folgen Sie unserem ausführlichen Tutorial. Wenn Sie auf Probleme stoßen, teilen Sie uns dies bitte im Kommentarbereich mit. Wir werden unser Bestes tun, um Ihnen zu helfen.