Bei all dem Gerede über Chatbots wie ChatGPT vergisst man leicht, dass textbasierter Chat nur eine von vielen KI-Funktionen ist. Die ideale generative KI wäre in der Lage, je nach Bedarf über verschiedene Modelle hinweg zu arbeiten und Bilder, Audio und Video zu interpretieren und zu generieren.
Geben Sie Jarvis ein, ein neues Projekt von Microsoft, das verspricht, dass ein Bot sie alle beherrscht. Jarvis verwendet ChatGPT als Controller für ein System, in dem es je nach Bedarf eine Vielzahl anderer Modelle verwenden kann, um auf Ihre Eingabeaufforderung zu reagieren. In einem Papier (öffnet in neuem Tab) Herausgegeben von der Cornell University, erklären Microsoft-Forscher (Yongliang Shen, Kaitao Song, Xu Tan, Dongsheng Li, Weiming Lu und Yueting Zhuang), wie dieses Framework funktioniert. Ein Benutzer stellt eine Anfrage an den Bot, er plant die Aufgabe, wählt die benötigten Modelle aus, lässt diese Modelle die Aufgabe ausführen und generiert und gibt dann eine Antwort aus.
Das folgende Diagramm, das in der Forschungsarbeit bereitgestellt wird, zeigt, wie dieser Prozess in der realen Welt funktioniert. Ein Benutzer bittet den Bot, ein Bild zu erstellen, auf dem ein Mädchen ein Buch liest und sie genauso positioniert ist wie ein Junge in einem Beispielbild. Der Bot plant die Aufgabe, verwendet ein Modell, um die Pose des Jungen im Originalbild zu interpretieren, und setzt dann ein anderes Modell ein, um die Ausgabe zu zeichnen.
Microsoft hat eine Github-Seite (öffnet in neuem Tab) wo Sie Jarvis herunterladen und auf einem Linux-PC ausprobieren können. Das Unternehmen empfiehlt die Verwendung von Ubuntu (speziell die veraltete Version 16 LTS), aber ich konnte die Hauptfunktion davon – einen terminalbasierten Chatbot – zum Laufen auf Ubuntu 22.04 LTS und auf dem Windows-Subsystem für Linux bringen.
Allerdings, es sei denn, Sie mögen die Idee, mit Konfigurationsdateien herumzuspielen, ist der beste Weg, Jarvis auszuprobieren, die Verwendung UmarmenGPT (öffnet in neuem Tab)ein webbasierter Chatbot, den die Microsoft-Forscher bei Hugging Face eingerichtet haben, einer Online-KI-Community, die Tausende von Open-Source-Modellen hostet.
Wenn Sie die folgenden Schritte befolgen, haben Sie einen funktionierenden Chatbot, dem Sie Bilder oder andere Medien zeigen und ihn bitten können, auch Bilder auszugeben. Ich sollte anmerken, dass die Ergebnisse, wie bei anderen Bots, die ich ausprobiert habe, sehr gemischt waren.
So richten Sie Microsoft Jarvis / HuggingGPT ein und testen es
1. Erhalten Sie einen OpenAPI-API-Schlüssel falls du noch keine hast. Sie können es bekommen Die Website von OpenAPI (öffnet in neuem Tab) indem Sie sich anmelden und auf „Neuen geheimen Schlüssel erstellen“ klicken. Die Anmeldung ist kostenlos und Sie erhalten ein kostenloses Guthaben, aber Sie müssen mehr bezahlen, wenn Sie es aufbrauchen. Speichern Sie den Schlüssel irgendwo wie in einer Textdatei, wo Sie leicht darauf zugreifen können. Wenn Sie es einmal kopiert haben, können Sie es nie wieder bekommen.
2. Melden Sie sich für ein kostenloses Konto bei Hugging Face an falls du noch keins hast und Anmeldung zum Ort. Die Seite ist befindet sich unter huggingface.co (öffnet in neuem Tab) nicht huggingface.com.
3. Navigieren Sie zu Einstellungen -> Zugriffstoken indem Sie auf die Links in der linken Leiste klicken.
4. Klicken Sie auf Neues Token.
5. Benennen Sie das Token (überhaupt nichts), Wählen Sie “Schreiben” als Rolle u klicken Sie auf Generieren.
6. Kopieren Sie den API-Schlüssel und bewahren Sie es an einem Ort auf, an dem Sie leicht darauf zugreifen können.
7. Navigieren Sie zu HuggingGPT-Seite (öffnet in neuem Tab)
8. Fügen Sie Ihren OpenAPI-Schlüssel ein Und Umarmendes Gesichtstoken in die entsprechenden Felder. Dann Klicken Sie auf die Schaltfläche Senden neben jedem.
9. Geben Sie Ihre Eingabeaufforderung ein in das Abfragefeld und klicken Sie auf Senden.
So richten Sie Jarvis / Hugging GPT unter Linux ein
Es ist viel einfacher, HuggingGPT auf der Hugging Face-Website zu verwenden. Wenn Sie jedoch versuchen möchten, es auf Ihrem lokalen Ubuntu-PC zu installieren, gehen Sie wie folgt vor. Möglicherweise können Sie es auch ändern, um mehr Modelle zu verwenden.
1. Git installieren falls du es noch nicht hast.
sudo apt install git
2. Klonen Sie das Jarvis-Repository aus Ihrem Home-Verzeichnis.
git clone https://github.com/microsoft/JARVIS
3. Navigieren Sie zum Ordner Jarvis/server/configs.
cd JARVIS/server/configs
4. Bearbeiten Sie die Konfigurationsdateien und geben Sie gegebenenfalls Ihren OpenAI-API-Schlüssel und Hugging-Face-Token ein. Sie sind config.azure.yaml, config.default.yaml, config.gradio.yaml und config.lite.yaml. In dieser Anleitung verwenden wir nur die Gradio-Datei, für Sie ist es sinnvoll, sie alle zu bearbeiten. Sie können sie mit nano bearbeiten (z. B. nano config.gradio.yaml). Wenn Sie diese API-Schlüssel nicht haben, können Sie sie für bekommen frei von OpenAI (öffnet in neuem Tab)Und Gesicht umarmen (öffnet in neuem Tab).
5. Miniconda installieren falls du es noch nicht installiert hast. Sie müssen die neueste Version von herunterladen Miniconda-Site (öffnet in neuem Tab). Nachdem Sie das Installationsprogramm heruntergeladen haben, installieren Sie es, indem Sie zum Ordner Downloads gehen und dort eingeben bash gefolgt vom Namen des Installationsskripts.
bash Miniconda3-latest-Linux-x86_64.sh
Sie werden aufgefordert, einer Lizenzvereinbarung zuzustimmen und den Installationsort zu bestätigen. Nachdem Sie Miniconda installiert haben, schließen Sie alle Terminalfenster und öffnen Sie sie erneut, sodass sich der Befehl conda jetzt in Ihrem Dateipfad befindet. Wenn es nicht in Ihrem Pfad ist, versuchen Sie einen Neustart.
6. Navigieren Sie zurück zum JARVIS/Server Verzeichnis.
7. Erstellen und aktivieren Sie eine Jarvis-Conda-Umgebung.
conda create -n jarvis python=3.8
conda activate jarvis
8. Installieren Sie einige Abhängigkeiten und Modelle.
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
pip install -r requirements.txt
cd models
bash download.sh # required when `inference_mode` is `local` or `hybrid`.
9. Kehren Sie zum Ordner JARVIS/servers zurück.
10. Führen Sie den Befehl aus, um den lokalen HuggingGPT-Webserver zu starten mit Grado.
python run_gradio_demo.py --config configs/config.gradio.yaml
Sie erhalten dann eine lokale URL, die Sie in Ihrem Webbrowser aufrufen können. In meinem Fall war es http://127.0.0.1:7860.
11. Besuchen Sie die URL (z. B.: http://127.0.0.1:7860) in Ihrem Browser. Wenn Sie Ubuntu in einer VM verwenden, verwenden Sie den Browser innerhalb der VM.
12. Geben Sie Ihren OpenAPI-API-Schlüssel ein in das Feld oben auf der Webseite.
13. Geben Sie Ihre Aufforderung(en) ein in das Eingabeaufforderungsfeld und drücken Sie die Eingabetaste.
Die Nutzung des Gradio-Servers ist nur eine Möglichkeit, mit Jarvis unter Linux zu interagieren. Der Jarvis Github-Seite (öffnet in neuem Tab) hat mehr Auswahl. Dazu gehören die Verwendung des Modellservers oder das Starten eines befehlszeilenbasierten Chats.
Ich konnte die meisten dieser Methoden nicht zum Laufen bringen (der Befehlszeilen-Chat funktionierte gut, war aber keine so schöne Oberfläche wie die Web-Oberfläche). Außerdem können Sie möglicherweise weitere Modelle installieren und die Text-zu-Video-Generierung in Gang bringen (was ich nicht konnte).
Was Sie mit Jarvis / Hugging GPT versuchen sollten
Der Bot kann Standardtextfragen sowie Fragen zu Bildern, Audio und Video beantworten. Es kann möglicherweise auch Bilder, Ton oder Video für Sie generieren. Ich sage potenziell, weil, wenn Sie die Webversion verwenden, sie durch die kostenlosen Modelle eingeschränkt ist, auf die sie von Hugging Face zugreifen kann. In der Linux-Version können Sie möglicherweise einige zusätzliche Modelle hinzufügen.
Unterhalb der Eingabeaufforderung sind einige Beispielabfragen aufgeführt, die Sie anklicken und ausprobieren können. Dazu gehören das Füttern mit drei Beispielbildern und das Zählen der Anzahl von Zebras, die Aufforderung, einen Witz zu erzählen und ein Katzenbild zu zeigen, oder die Aufforderung, ein Bild zu erstellen, das wie das andere aussieht.
Da es webbasiert ist, können Sie es mit Bildern füttern, indem Sie ihm die URLs von Bildern senden, die online sind. Wenn Sie jedoch die Linux-Version verwenden können, können Sie Bilder lokal im Ordner JARVIS/server/public speichern und über relative URLs darauf verweisen (z. B.: /myimage.jpg wäre in der öffentlich Ordner und /examples/myimage.jpg wären im Beispiel-Unterordner von öffentlich).
Die meisten originellen Abfragen, die ich ausprobiert habe, waren nicht besonders gut. Die Bilderkennung war besonders schlecht. Als ich es mit Bildern von M.2-SSDs fütterte und fragte, wo ich eine kaufen könnte, sagte es, dass es die SSDs entweder als Koffer identifiziert und mir dann gesagt hatte, ich solle „einen Laden“ finden.
Als ich es mit einem Screenshot von Minecraft fütterte und es fragte, wo ich es kaufen könnte, behauptete es fälschlicherweise, es habe einen Drachen durch die Luft fliegen sehen. Es dachte, ein RTX 4070 sei ein Schwarz-Weiß-Foto eines Computers. Und als ich fragte, wo ich einen kaufen könnte, hieß es: “Sie können einen dieser Artikel in unserem Online-Shop oder bei einer Vielzahl von Einzelhändlern in Ihrer Nähe kaufen.” aber es gab keinen wirklichen Link zu einem echten Online-Shop.
Es war nicht sehr gut darin, Bilder auf Abruf zu erzeugen. Zum Beispiel bat ich es, Abraham Lincoln zu zeichnen, der ein Cabrio fährt, und es gab mir nur eine einfache Büste des ehemaligen Präsidenten.
Kurz gesagt, abgesehen von den spezifischen Beispielen, die Microsoft vorschlägt, waren die meisten Abfragen nicht besonders gut. Aber wie bei anderen KI-Frameworks wie Auto-GPT und BabyAGI liegt das Problem in den Modellen, die Sie verwenden, und wenn sich die Modelle verbessern, wird sich auch Ihre Ausgabe verbessern. Wenn Sie autonome Agenten ausprobieren möchten, sehen Sie sich unsere Tutorials zur Verwendung von Auto-GPT und zur Verwendung von BabyAGI an.