Build Multi-Agent Systems with SmolAgents

LARRUZ shows how to build multi-agent systems with SmolAgents, covering proprietary and open models, custom tools, and Python implementation. The tutorial walks through creating agents that work together to solve complex tasks.
Chapters
Im vorherigen Video haben wir uns Small Agents angesehen, eine neue Bibliothek zum Erstellen leistungsstarker Agenten von Huggingface. In diesem Video möchte ich tiefer darauf eingehen. Wir werden uns ansehen, wie man sowohl proprietäre als auch offene Modelle mit Small Agents verwenden kann. Außerdem zeige ich dir, wie man mit dieser sehr kleinen Bibliothek leistungsstärke Multiagent Systeme erstellen kann. Eine kurze Zusammenfassung für den Fall, dass du mein vorheriges Video nicht gesehen hast, das ich dir wärmstens empfehlen kann. Dies ist ein relativ einfaches und kleines Paket, das in etwa tausend Zeilen Code passt. Dabei wird versucht, die Abstraktionen auf ein Minimum zu beschränken. Daher werden hauptsächlich API Aufrufe direkt verwendet, anstatt eine ganze Reihe von Abstraktionen hinzuzufügen. Das zweitwichtigste Feature ist die Einführung des Konzepts von Code Agenten. Alle Aktionen, die der Agent ausführt, erfolgen in Form von Code, den der Agent schreibt. Daher benötigt er Zugriff auf einen Python Interpreter, um diese Codes auszuführen. Dadurch sind die Ausgaben im Vergleich zu einem normalen Tool oder Funktionsaufruf Agenten viel genauer. Bevor wir uns eingehender mit kleinen Agenten befassen, müssen wir zunächst verstehen, dass dass man in den meisten Fällen nicht einmal einen Agenten benötigt. Man kann einfach ein LLM mit einigen Funktionsaufrufen oder Toolaufrufen verwenden. Mir gefällt diese Tabelle, die das Hugging Face Team bereitgestellt hat, sehr gut. Sie vermittelt eine Vorstellung davon, wann man Agenten im Vergleich zu einfachen Workflows verwenden sollte. Das Konzept der Workflows wurde von Entropic in diesem Blogbeitrag Effektive Agenten erstellen vorgestellt. Ich habe ein ausführliches Video zu diesem Thema. Ich werde den Link dazu in die Videobeschreibung einfügen. Google hat außerdem ein Whitepaper zu Agenten veröffentlicht. Darin werden verschiedene Szenarien aufgezeigt, in denen man keinen Agenten verwenden möchte. Darin wird der Unterschied zwischen einem Modell und Agenten aufgezeigt und wann man welche verwenden sollte. Diese Tabelle bietet gute Richtlinien. Wenn die LLM Ausgabe also keine Auswirkungen auf den Programmablauf hat, sollte man einfach einen LLM Aufruf verwenden. Wenn jedoch die Ausgabe des LLM bestimmt, welche Schritte auszuführen sind, z. B. Ob sie Pfad A oder Pfad B wählen können, dann benötigen Sie lediglich einen Router, bei dem es sich um ein weiteres LLM, einen einfachen Klassifikator oder ein regelbasiertes System handeln kann. Wenn die Ausgabe ihres LLM die Ausführung der Funktion oder die auszuführenden Schritte bestimmt. Möchten Sie einen Tool Aufruf oder einen Funktionsaufruf implementieren. Im Wesentlichen schreiben Sie eine Funktion, die den Zugriff auf eine API oder ein externes Tool implementiert. Wenn also das LLM eine bestimmte Funktion zum Aufrufen oder Verwenden auswählt, führen Sie diese Funktion einfach in ihrem Pythson Interpreter aus. In diesem Fall generieren die LLMs meist strukturierte JSON Ausgaben, um ein zu verwendendes Tool auszuwählen. Wenn die LLM Ausgabe die Iteration und die Programmfortsetzung steuert, also hier die Planungs und Entscheidungsschritte ins Spiel kommen, möchten Sie einen mehrstufigen Agenten verwenden. Insbesondere wenn Sie keine klar definierten Workflows oder konkreten Schritte haben, können Sie sich auf einen Agenten verlassen, der einen Plan erstellt und ausführt. Wenn Sie über einen Agenten Workflow verfügen, der einen anderen Agenten Workflow starten kann, sollten Sie ein Multi Agentensystem verwenden. Später im Video zeige ich Ihnen ein Beispiel für ein Multi Agentensystem. Um diese Bibliothek zu verstehen, müssen wir fünf verschiedene Klassen oder Implementierungen verstehen. Die wichtigste ist der Code Agent. Dies ist die Hauptimplementierung des Agenten, die Code verwendet, um ihre Aktionen zu generieren und diesen Code dann auszuführen. Wenn wir uns einen Funktionsaufruf ansehen, für den Sie keinen Code benötigen, können Sie diesen Toolaufruf Agenten verwenden, der im Grunde eine Implementierung des Toolaufrufs oder Funktionsaufrufs ist, genau wie die anderen Agenten Frameworks. Jetzt können Sie Ihre eigenen benutzerdefinierten Tools erstellen. Dazu verwenden wir die Toolbox. Falls Sie dann versuchen, ein System mit mehreren Agenten zu erstellen, dann das über einen Manager, Agenten und mehrere verwaltete Agenten in dieser Instanz verfügt, können wir die Klasse Managed Agent verwenden. Falls Vorgänge mit mehreren Hops oder Schritten ausgeführt werden müssen, verwenden Sie die Klasse Multistep Agent. Das Verhalten all dieser Vorgänge wird über eine Reihe von Systemaufforderungen gesteuert, die wir uns in diesem Video ansehen werden. Im Rest des Videos verwenden wir dieses Python Notebook. Es basiert hauptsächlich auf den Beispielen in der Dokumentation. Ich zeige Ihnen auch einige verschiedene Funktionen, die die Small Agents bieten. Sie sollten dieses Notebook also als Schnellkurs über Small Agents und ihre verschiedenen Möglichkeiten betrachten. Dazu müssen wir zunächst Small Agents installieren. Außerdem müssen wir Hugging Facehoop installieren. Falls Sie eines der LLMs verwenden, das auf Hugging Face gehostet wird, müssen wir auch Light LLM installieren. Dies ist insbesondere dann erforderlich, wenn Sie proprietäre Modelle wie GBD oder Claude verwenden möchten oder auch wenn Sie lokale Modelle mit OLAMA ausführen. Dafür benötigen Sie den Light LLM Proxy. Wie ich Ihnen in meinen vorherigen Videos gezeigt habe, müssen wir Code Agent importieren. Dies ist die Hauptklasse. Dann gibt es eine Reihe verschiedener Tools, die in Small Agents verfügbar sind. Wenn Sie eine Suche durchführen möchten, können Sie das Suchtool Doc Go verwenden und wenn Sie eines der LLMs verwenden möchten, die in Hugging Face verfügbar sind, können Sie das Hugging Face API Modell verwenden. Ich habe die Hugging Face API in meinem vorherigen Video behandelt. Wenn Sie jedoch damit beginnen möchten, gehen Sie wie folgt vor. Zuerst müssen Sie sich bei Ihrem Hugging Face Konto anmelden, Sie müssen also Ihren API Token angeben. Jetzt können Sie ein Modell auswählen, das in Hugging Phase verfügbar ist, das über deren Inferenz API gehostet wird. Wenn Sie beispielsweise das Llama Modell mit 3,370 Milliarden Anweisungen verwenden möchten, müssen Sie nur die Modell ID für das Hugging Face API Modell bereitstellen und diese dann als Modell an Ihren Code Agenten übergeben. In diesem Fall ermöglichen wir Ihnen nun den Zugriff auf die Basistools. Ich zeige Ihnen eine Liste der verfügbaren Tools. Beachten Sie, dass Sie ein Pro Abonnement für Hugging Face benötigen, wenn Sie die 70 Milliarden Anweisungsversion verwenden. Falls nicht, wird standardmäßig das Quincoda 32 Milliarden AnweisungSmodell verwendet, das für alle kostenlos verfügbar ist und die meisten Systemmeldungen oder Systemanweisungen sind auf dieses spezielle Modell zugeschnitten. Wir werden uns einige Beispiele für die Systemeigenschaften ansehen und Ihnen auch zeigen, wie Sie diese bei Bedarf ändern können. In diesem Tutorial verwende ich OpenAI GPD. Dafür verwenden wir den Light LLM Proxy. Also ich werde die Dokumentation oder den Link zur Dokumentation zu Light LLM bereitstellen. Aber du musst Light LLM installieren und dann kannst du innerhalb von Light LLM proprietäre Modelle wie OpenAI, Entropic oder sogar Google Vortex I verwenden. Oder wenn du ein Modell auf Olama auf deinem lokalen Rechner ausführst, kannst du es sogar direkt innerhalb des Light LLM Proxy verwenden. Da wir das OpenAI Modell verwenden, müssen wir uns zuerst unseren OpenAI API Schlüssel besorgen. Ich lege diesen als Umgebungsvariable fest. Ich verwende den Light LLM Proxy. Wir verwenden also die Light LLM Modellklasse. Du gibst deinen Modellnamen an, in diesem Fall GP, und dann erstelle ich den Agenten, genauso wie zuvor mit modellen, die auf Hugging Face gehostet werden. Die Eingabeaufforderung Könntest du mir die 118. Zahl in der Fibonacci Sequenz geben? Da verwendet GPT 40 und du wirst sehen, dass der Code Agent alle Aktionen in Form von Code ausführt. Das erste, was er tat, war Code zu schreiben, um diese spezifische Zahl zu erhalten. Dann führte er diesen Code aus und die endgültige Ausgabe ist diese Zahl. Es dauerte also weniger als eine Sekunde. Die Anzahl der Eingabetoken beträgt etwa, was eine ziemlich große Zahl ist, da er eine Reihe verschiedener Schritte durchlaufen muss. Außerdem müssen wir uns die verwendete Systemanweisung ansehen, aber die Ausgabeanzahl der Token beträgt 179 um genau zu sein. In diesem Fall verwendet er nur das LLM, keine externen Tools. Er hat Zugriff auf den Python Interpreter, Dort wurde der Code ausgeführt. Hier ist ein einfaches Wir haben einen Code Agenten erstellt. Wir haben keinerlei Tools bereitgestellt. Er hat also keinen Zugriff auf Tools und wir verwenden immer noch das GPT Modell. In diesem Fall fragen wir ihn nun, ob er mir den Titel der Seite unter dieser URL besorgen könnte. Er hat also einen Code geschrieben, um den Titel dieser URL abzurufen. Der Code scheint vollkommen in Ordnung zu sein, aber dann ist dieses Problem aufgetreten. Es wird eine Warnung an den Benutzer ausgegeben, dass die Ausführung des Codes aufgrund eines nicht autorisierten Imports fehlgeschlagen ist. Erwägen Sie, den Import unter zusätzlichen autorisierten Importen zu übergeben das Da es nun Python Code ausführen kann, könnten Probleme auftreten, insbesondere wenn es schädlichen Code ausführen kann. Daher ist tatsächlich eingeschränkt, welcher Code ausgeführt und welche Importe vorgenommen werden können. Standardmäßig ist die Anzahl der Importe, die vorgenommen werden können, wirklich begrenzt. Als Benutzer können sie jedoch die Berechtigung zur Verwendung bestimmter Tools oder Pakete erteilen, was eine wirklich clevere Implementierung ist. Als dies fehlschlug, wurde ein zweiter Versuch unternommen und es wurde ein Beispiel HTML Code angezeigt, den Sie mithilfe regulärer Ausdrücke übergeben haben. Für diesen Beispiel HTML Code wurde dieser Titel angezeigt, wenn wir nun den Zugriff auf Requests und Beautiful Soup aktivieren, sind dies die beiden Bibliotheken, die das Modell bei Bedarf verwenden soll. Da es in diesem Fall Zugriff auf Requests und Beautiful Soup hat, hat es sich entschieden, diese Bibliotheken zu verwenden, und wir können den Inhalt der Seite tatsächlich analysieren und erhalten den tatsächlichen Titel, der Hugging Face Blog lautet. Wenn Sie also möchten, dass der Agent bestimmte Bibliotheken verwendet, können Sie hier eine Liste dieser Bibliotheken angeben. Noch Wenn Sie diese Option aktivieren oder auf True setzen, fügen Sie Basistools hinzu. Dann hat der Agent Zugriff auf Standard Tools. Zu diesen Tools gehören die Websuche von DACT, der Python Code Interpreter, den wir bereits gesehen haben, und ein Transcriptor für die Speech Toxt Pipeline. Jetzt können Sie den Zugriff auf weitere Tools aktivieren, die ich Ihnen gleich zeige. Sie können aber auch Ihre eigenen benutzerdefinierten Tools schreiben. Als Nächstes schauen wir uns die Systemaufforderungen an. Wenn Sie also die Vorlage für die Systemaufforderung des Agenten ausführen, erhalten Sie die gesamte Systemaufforderung, die das Verhalten Ihres Code Agenten steuert. Hier wird dem LLM im Grunde mitgeteilt, dass Sie ein erfahrener Assistent sind, der mithilfe von Code Blob jede Aufgabe lösen. Kann. Wir teilen ihm also konkret mit, dass er Zugriff auf einen Code Interpreter hat und dass er Python Code schreiben muss, wenn er eine Aktion ausführen möchte. Dann haben wir noch ein paar kurze Beispiele. Hier ist die Aufgabe dann der Denkprozess, den er durchlaufen soll. Danach soll er den Python Code schreiben und dann basierend auf der Ausgabe des Python Codes einen weiteren Gedanken haben und bei Bedarf ein weiteres Segment des Python Codes neu schreiben. Wenn Sie die Systemeingabeaufforderung aktualisieren möchten, wird empfohlen, eine Einführung zu haben, die erläutert, wie sich der Agent verhalten soll und welche Tools es gibt. Außerdem sollte eine Beschreibung aller Tools vorhanden sein, die durch Toolbeschreibungen definiert sind. Dabei handelt es sich um spezielle Token, die zur Laufzeit dynamisch durch die vom Benutzer gewählte Tooldefinition ersetzt werden. Jedes Tool muss nun eine Beschreibung, einen Namen, die Eingaben, die Beschreibungen und die erwarteten Ausgaben haben. Wir werden uns später im Video konkretere Beispiele für Tools ansehen und dann das erwartete Ausgabeformat erläutern. Hier ist ein Beispiel für eine Systemeingabeaufforderung für das Tool, das den Agenten aufruft. Dies unterscheidet sich vom Code Agenten. Angenommen, Sie möchten die Systemeingabeaufforderung des Code Agenten durch dieses Tool ersetzen, das die Systemeingabeaufforderung aufruft, so würden Sie vorgehen. Wir haben also das Tool, das den Agenten aufruft, und dies könnte auch Ihr Code Agent sein. In diesem Fall übergeben Sie einen weiteren Parameter, nämlich die Systemeingabeaufforderung, und geben dann Ihre geänderte Systemeingabeaufforderung an. Dies ändert also das Verhalten Ihres Agenten. Als nächstes schauen wir uns an, wie die Protokollierung erfolgt. Mit Hilfe dieser Protokolle werden also alle Aktionen verfolgt, die der Agent ausgeführt hat. Wenn Sie sich die Protokolle ansehen, handelt es sich im Grunde genommen um die ursprüngliche Systemaufforderung. Später hat der Agent Zugriff auf alle Tool Argumente oder die Tool Verwendung und dann auf alle ausgeführten Schritte. Sie können auch die vorherigen Aktionen in den Speicher des Agenten schreiben. Auf diese Weise kann der Agent bei Problemen die zuvor generierten Ausgaben einsehen und einige der Fehler beheben, die gemacht hat. Als nächstes zeige ich Ihnen, wie Sie Ihre eigenen benutzerdefinierten Tools erstellen können, die der Agent verwenden kann. Um ein benutzerdefiniertes Tool zu erstellen, müssen Sie einen Namen für das Tool, eine Beschreibung des Zwecks des Tools, die verschiedenen Eingaben für das Tool, Ihre Typen und die entsprechenden Beschreibungen angeben. Um Ihnen ein kurzes Beispiel zu zeigen, betrachten wir ein Tool, das das verschiedene Tags oder verschiedene Typen von Modellen betrachtet. Für jede dieser Kategorien, z. B. Die Textklassifizierung, wird das am häufigsten heruntergeladene Modell ausgewählt. Dies können Sie in Python tun. Sie können dazu die Liste der Modelle aus dem Hugging Face Hoop importieren. Dann geben Sie die Aufgabe oder die Kategorie an und können die Sortierung nach der Anzahl der Downloads vornehmen. Da die Sortierung aufsteigend erfolgt, wählen Sie einfach die letzte Zahl oder das letzte Modell aus. Das ist dann das Modell, das am häufigsten heruntergeladen wurde. Bei der Textklassifizierung können wir dasselbe mit Text zu Video tun. Hier ist also das Modell. Dies ist ein reiner Python Code. Sie können ihn jedoch in ein Tool umwandeln, das Ihr Agent verwenden kann. Dazu müssen Sie ihn nur in eine Python Funktion mit einem Dekorator. Namens tools oder tool einbetten. Das sollte darin enthalten sein. Als erstes benötigen Sie einen DocString mit der Beschreibung. Sie benötigen also einen Namen für Ihr Tool, nämlich download model tool, dann die entsprechende Beschreibung, welche Eingabe es erhalten wird. Wir sagen einfach, dass dies die Aufgabe ist, für die wir das Modell herunterladen möchten. Die Ausgabe wird dann von diesem Funktionsaufruf generiert. Wir können dieses Tool, das wir gerade erstellt haben, einfach an unsere Tooliste übergeben. Wenn Sie nun eine Abfrage ausführen, können Sie mir den Namen des Modells nennen, das die meisten Downloads in der Text Video Aufgabe auf dem Hugging Face Hoop hat. Basierend auf dem verfügbaren Tool ist es intelligent genug, dass das Modell zuerst herausfinden muss, dass wir speziell nach Text zu Videomodellen suchen. Dies wird die Aufgabe sein, die an dieses Tool übergeben wird und das Tool soll das endgültige Ergebnis generieren. Es hat also einen Code geschrieben, der Aufgabe lautet. Das ist also die extrahierte Aufgabe. Dann wird dieses Tool aufgerufen und die Ausgabe gedruckt. Wenn Sie sich die endgültige Ausgabe ansehen, ist das das Modell By Dance Animated Deaf Lightning. Hier ist ein weiteres Sie können auch direkt Tools laden, die auf Hugging Face verfügbar sind, oder Sie können sogar ihre eigenen Tools erstellen und diese auf Hugging Face übertragen. Die Idee dabei ist, dass die Leute diese Tools nutzen können. Auf diese Weise wird die Community verschiedene Tools beisteuern. Man muss diese nicht wirklich neu schreiben. Hier ist nun ein Beispiel dafür, wie man eine Benutzeroberfläche für seinen Agenten erstellen kann. Es wird Gradio A verwendet. Im Grunde erstellt man also seinen Agenten, übergibt ihn dann an die Gradio Benutzeroberfläche und ruft dann die Launch Funktion auf. So sieht die Benutzeroberfläche tatsächlich aus, was ziemlich cool ist. Man fügt einfach diese einzelne Codezeile hinzu und schon hat man eine funktionierende Benutzeroberfläche für sein Agentensystem, was ziemlich genial ist. Im letzten Beispiel schauen wir uns an, wie man ein Multiagenten System mit kleinen Agenten erstellen kann. Dies ist also ein Beispiel für die Durchführung einer Websuche und das Extrahieren von Informationen von bestimmten Webseiten. Es wird also zwei verschiedene Ebenen geben. Erstens haben wir einen Manager Agenten, der mit dem Benutzer interagiert. Der Manager Agent erhält also eine Eingabe vom Benutzer. Es wird einen Code Interpreter geben, der alle Aktionen in Form von Code ausführt. Dann wird es einen Verwaltungsagenten geben, der Zugriff auf zwei verschiedene Tools hat. Zuerst muss er eine Websuche durchführen. Er erhält also die ersten Suchergebnisse, aber das sind hauptsächlich Weblinks plus eine kurze Zusammenfassung. Dann muss er jede Seite besuchen. Er benötigt also ein weiteres Tool, das die Inhalte dieser Webseiten lesen und diese Ergebnisse an diesen verwalteten Agenten zurückgeben kann, der die endgültigen Ergebnisse an unseren Verwaltungsagenten weiterleitet. Der Verwaltungsagent ist derjenige, der mit dem Benutzer interagiert. Wir haben uns bereits das Dr. Go Suchtool oder den Suchagenten angesehen. Jetzt müssen wir ein weiteres Tool erstellen, das zum Besuchen der Seiten verwendet wird. Wir verwenden also wieder den Tool Decorator. Die Beschreibung Besuche eine Webseite unter der angegebenen URL und gib ihren Inhalt zurück. Die Eingabe wird also eine URL sein. Die Rückgabewerte sind die Inhalte von in der Form von Mark Down. Hier ist eine einfache Implementierung. Wir verwenden also die Request Bibliothek, die die URL abruft. Wenn alles gut geht, konvertieren wir den Text dieser URL in Markdown Inhalte, die dann von diesem Tool zurückgegeben werden. Hier ist ein kurzes Wenn Sie dieses Tool direkt verwenden möchten möchte, müssen Sie nur die URL angeben. Wir lesen dann nur die ersten 500 Zeichen. So sieht die Wikipedia Seite mit dem umarmten Gesicht aus. Da es sich hierbei um eine sequenzielle Ausführung handelt, verwenden wir das Tool, das den Agenten aufruft. Wir stellen nun zwei verschiedene Tools bereit. Dies ist der verwaltete Agent. Für diesen Teil verwenden wir erneut das GPD Modell. Dies wird also zu unserem verwalteten Agenten und wir verwenden die Klasse des verwalteten Agenten. Der Name des Agenten ist search. Er führt eine Websuche durch und gibt das Ergebnis zurück, das Ergebnis bestimmter Webseiteninhalte. Dem verwalteten Agenten gewähren wir nun Zugriff auf zwei verschiedene Agenten oder Tools. Einer ist der Code Interpreter und der zweite ist der verwaltete Agent, den wir gerade erstellt haben. Dafür verwenden wir einen Code Agenten, da er Aktionen ausführen soll und der verwaltete Agent ist der, den wir gerade erstellt haben. Zusätzlich hat jeder Code Agent Zugriff auf die Python Schnittstelle. Wir möchten ihm aber auch Zugriff auf andere Python Bibliotheken für die Berechnung geben. Eine ist also time, die andere ist numpy und pandas. Jetzt müssen wir nur noch unsere Abfragen auf diesem verwalteten Agenten ausführen. Die Abfrage, die ich getestet habe, Welche Dynastie hat China zur Zeit des Falls von Konstantinopel ruiniert? Zuerst muss er also herausfinden, wann Konstantinopel gefallen ist, und dann muss er herausfinden, wer in diesem Zeitraum China regiert hat. Im ersten Schritt greift er direkt auf sein internes Wissen zu und ich denke, er denkt, dass der Fall von G. Consu im Jahr 53 war war, was tatsächlich richtig ist. Ich denke, er sollte aufgrund seines eigenen Wissens wissen, wer China im Jahr 1453 regiert hat, aber er entscheidet sich, unser Websuchtool zu verwenden. Die Suchanfrage lautet China herrschende Dynastie im Jahr 1453 es führt diese Suchanfrage durch. Hier sind nun die Suchergebnisse. Die meisten davon scheinen von Wikipedia zu stammen. Das ist tatsächlich nicht Wikipedia, das ist Wikipedia. Hier ist noch eins von Wikipedia. Bei jedem Suchergebnis sehen Sie nun die URL sowie eine entsprechende kurze Zusammenfassung. OK, es entscheidet sich also für diese spezifische URL. Es übergibt sie an das Tool Webseite besuchen und hier sehen Sie die tatsächlichen Inhalte dieser Webseite, die von unserem Tool Webseite besuchen abgerufen werden. Das ist jetzt ziemlich lang, Sie brauchen diese Informationen eigentlich nicht alle. Ich denke, eine Möglichkeit wäre, die Webseite abzurufen und dann auf dieser spezifischen Webseite zu suchen. Auf diese Weise verwenden Sie viel weniger Kontext, wenn Sie die endgültige Antwort generieren. Okay, es durchläuft also eine ganze Reihe von Suchergebnissen und am Ende lautet die Antwort, dass es sich um die Ming Dynastie handelte. Hier ist nun eine komplexere Suchanfrage, die auf Ihrem Beispiel basiert. Wenn also das LM Training im aktuellen Rhythmus bis 2030 weiter voranschreitet, wie viel elektrische Leistung in Gigawatt wäre dann erforderlich, um den größten Trainingslauf bis 2030 zu betreiben? Im Moment muss das Programm Prognosen erstellen, es muss also die aktuellen Trends berücksichtigen und stößt dabei auf einige Probleme, da es einige reguläre Ausdrücke nicht korrekt analysieren kann. Daher wird die Abfrage neu geschrieben und ein weiterer Durchlauf durchgeführt. Jetzt versucht es den aktuellen Stromverbrauch für das Training großer Sprachmodelle zu ermitteln. Hier sind verschiedene Webseiten, die es basierend auf den Suchergebnissen für relevant hält. Dann beginnt es die Inhalte dieser Webseiten zu lesen. Ich glaube, es ist nun auf ein Problem gestoßen, da es auf einige dieser Webseiten nicht zugreifen konnte. Aber es versucht trotzdem auf die anderen Webseiten zuzugreifen, die ziemlich klein sind. Und nach einigen Schritten ist dies die endgültige Antwort, die es ausgibt aber da es Prognosen erstellen muss, durchläuft es eine weitere Runde und ich denke, die endgültige Antwort, die es erwartet, wird bei etwa 56 Gigawatt liegen, was im Vergleich zu anderen Ländern eine beträchtliche Menge ist. Sie übertrifft beispielsweise die installierte Stromkapazität vieler mittelgroßer Länder und das ergibt auch irgendwie Sinn. In diesem Fall gibt es, wie Sie sehen können, mehrere verschiedene Agenten, die über diesen Manager Agenten verwaltet werden und es war ein einfaches Beispiel dafür, wie Sie mit Hilfe kleiner Agenten ein Multiagentensystem aufbauen können. Wie auch immer, das war ein kurzer Überblick über das neue Framework für kleine Agenten. Ich persönlich sehe viele verschiedene Anwendungen dieses Frameworks in meinen eigenen Anwendungen. Ich bin also wirklich gespannt, was die Leute bauen werden. Es gibt detaillierte Dokumentationen für alles, was wir behandelt haben. Ich werde also Links zu allem einfügen. Schauen Sie es sich also unbedingt an, wenn Sie interessiert sind. Wie auch immer, ich hoffe, Sie fanden dieses Video nützlich. Danke fürs Zuschauen und wie immer bis zum nächsten Mal.










