Transcription
Pidantic AI ist seit langem mein bevorzugtes Framework für KI-Agenten. Ich erstelle seit Januar letzten Jahres Inhalte dazu. Sie sind immer führend in der Branche und machen es wirklich einfach, KI-Agenten zu bauen, geben Ihnen aber gleichzeitig die volle Anpassbarkeit und Kontrolle, die Sie wirklich benötigen, um Produktionsagenten auszuliefern. Und das ist es, was sie meiner Meinung nach von anderen Frameworks wie Langchain und Crew AI abhebt. Und Pideantic AI hat es wieder einmal geschafft. Sie haben gerade ihre 2.0.0-Version veröffentlicht, und dies ist eine große Weiterentwicklung der Art und Weise, wie wir KI-Agenten bauen. Diese Version des Frameworks konzentriert sich auf ein einziges Primitiv namens "Capability" (Fähigkeit). Dies ist die Hauptsache, die wir jetzt beim Erstellen unserer KI-Agenten entwickeln. Und das liebe ich einfach. Es ist eine wunderschöne Vereinfachung, die gleichzeitig alles kapselt, was man für einen Agenten braucht. Und sie berücksichtigt alles, worauf die Branche in letzter Zeit bei den verschiedenen Komponenten für den Bau von Agenten wie unseren Hooks, Guardrails und Skills sowie MCP-Servern hingearbeitet hat. Und das liebe ich so sehr, dass ich ein Video machen wollte, das sich der Idee der Capability und der 2.0-Version widmet. Nun, Pyantkai, sie sponsern dieses Video nicht. Und normalerweise mache ich kein Video nur über ein Update eines Frameworks, aber das hier ist gut genug, dass es sich anfühlt, als würden wir jetzt diesen Wandel sehen, diese mächtige Entwicklung, wie wir unsere Agenten bauen. Also, legen wir los. Eine Capability bündelt die Anweisungen, Tools, Lifecycle-Hooks und Modelleinstellungen eines Agenten in einer einzigen komponierbaren Einheit. Eine ganze Erweiterung kann also jede Ebene des Agenten über ein einziges Konzept erreichen, was ehrlich gesagt ein bisschen Wortsalat ist. Im Grunde sagen sie hier, dass, egal welche Verantwortung Ihr Agent haben soll, er aus einer Reihe von Tools bestehen wird, damit er die Außenwelt erreichen kann, sowie aus Anweisungen und Guardrails, um ihn zu leiten. Und was auch immer das ist, wir können alles zusammen als eine einzige Capability verpacken, die eine einzige Eingabe für die Definition unseres Agenten darstellt. Und so können unsere KI-Agenten ganz einfach als eine Reihe dieser komponierbaren Einheiten, dieser Capabilities, betrachtet werden. Wir kombinieren sie alle, um dem Agenten alle Verantwortlichkeiten zu geben, die wir für ihn wünschen. Und das Beste daran ist, weil es so komponierbar ist und wirklich wie das Zusammensetzen von Legosteinen ist, können wir diese Capabilities sehr einfach zwischen den KI-Agenten wiederverwenden, die wir für uns selbst oder unser Unternehmen haben. Und es ist auch nützlich, Capabilities als die Ebene über den MCP-Servern zu betrachten. Wenn man darüber nachdenkt, ist MCP ähnlich. Es ist eine Verpackung von Tools, die man seinem KI-Agenten übergeben kann. Und es ist auch sehr einfach, sie zwischen KI-Agenten zu teilen. Das ist einer der Hauptvorteile von MCP. Und MCP-Server sind eine Teilmenge dessen, was Sie in eine Capability aufgenommen haben, wie wir hier im Beispiel sehen. Aber Capabilities sind auch viel mehr als nur der Arm des Agenten, also die Tools. Es sind auch die Anweisungen und Einstellungen und die Hooks und die Guardrails, wie wir wollen, dass der Mensch mit dem Agenten interagiert und Dinge einbringt. All das ist hier zusammengepackt. Und das andere, was ich sagen möchte, ist, dass nichts davon neu ist, richtig? Unter der Capability sind all die Dinge, aus denen die Capability besteht, Dinge, mit denen Sie wahrscheinlich bereits arbeiten, insbesondere mit Ihrem KI-Coding-Assistenten, wie Ihre Skills und Hooks und ähnliche Dinge. Aber es ist nur die Art und Weise, wie wir sie in einem KI-Agenten-Framework vereinfachen, die meiner Meinung nach so schön ist. Mit dieser neuen Version und der Idee der Capability fühlt es sich an, als hätte Pantic AI von einem leichten Rückstand wieder die Führung in der Branche übernommen. Und der Grund, warum ich sage, dass sie ein wenig zurückgefallen sind, liegt wirklich nur am Aufkommen der Coding-Agent-SDKs. Es ist jetzt unglaublich einfach, seine KI-Agenten, insbesondere die persönlicheren, auf etwas wie dem Clawed Agent SDK oder dem Codeex SDK aufzubauen. Sie sind langsamer und tokenintensiver als ein traditionelles Framework wie Pideant AI. Es gibt also definitiv Kompromisse. Das habe ich auch kürzlich auf meinem Kanal behandelt, aber besonders für persönlichere Anwendungsfälle. Im Allgemeinen werden Sie beim Erstellen eines KI-Agenten etwas wie dieses verwenden oder vielleicht etwas direkt in Ihr Hermes oder OpenClaw einbauen. Und so gab es nur eine kleinere Teilmenge von Agenten, die für Pyantic AI noch nützlich sind, insbesondere weil diese Agenten-Frameworks so gut mit den verschiedenen Primitiven integriert sind, über die wir bereits gesprochen haben, wie Hooks und Sub-Agenten und MCP-Server. Es ist so einfach, diese Dinge einzubauen. Ich meine, man sieht hier die Beispiele, wie es den Capabilities sehr ähnlich sieht, wo es nur ein paar Zeilen sind, um einen MCP-Server hinzuzufügen, oder wenn wir zum Beispiel einen Hook hinzufügen wollen. Und so hat Pantai das aufgeholt, richtig? Es ist jetzt sehr einfach, diese Capabilities hinzuzufügen. Und ich würde argumentieren, es ist sogar noch einfacher. PantiAI ist meiner Meinung nach im Moment der Gewinner. Der Sponsor des heutigen Videos ist Nimbleist, ein kostenloser Open-Source-Visual-Workspace zum Erstellen mit Cloud-Code oder Codecs. Wenn Sie genauso viel Zeit im Terminal verbringen wie ich, kennen Sie den Schmerz, wenn Ihr Agent eine Menge Änderungen in Ihrem Projekt vornimmt und es schnell schwierig wird, nachzuvollziehen, was tatsächlich passiert. Nimble wickelt Ihren Coding-Agenten in einen echten Workspace ein. Und während Ihr Agent Änderungen vornimmt, sehen Sie diese als rote und grüne Diffs. Und das gilt für Code, Markdown, sogar Diagramme, alles visuell gerendert. Außerdem können Sie Änderungen an Ihren Dateien rückgängig machen und akzeptieren und sogar Dinge kommentieren. So wird Ihr Agent Ihr Feedback direkt berücksichtigen. Und mein Lieblingsteil an Nimble ist der Agent Manager. Hier kann ich viele Coding-Agent-Sitzungen parallel verwalten, die alle isoliert arbeiten. Ich habe auch ein Kanban-Board, so dass ich den Status jedes Agenten sehen kann. Klicken Sie darauf, um auch das Gespräch anzuzeigen und dann auch für alle Änderungen, die er vornimmt, kann ich in jede dieser Dateien klicken. So kann ich die einzelnen Diffs sehen, während der Agent an meiner Codebasis arbeitet. Es ist einfach so einfach, zwischen den Sitzungen und allen Änderungen, die in meinem Projekt stattfinden, zu navigieren. und all die Verbindungen, die unter der Haube zwischen den verschiedenen Dateien und laufenden Agenten hergestellt werden, all die Aufgaben, die erledigt werden. All das ist nicht nur für mich, sondern auch für den Agenten. Er kann durch einen Graphen navigieren, den er intern aufbaut, um ein ganzheitliches Bild von allem zu bekommen, was in meinem Projekt passiert. Und wissen Sie, ich liebe es immer, Open-Source-Projekte zu behandeln, und Nimbleist ist wirklich beeindruckend. Definitiv einen Versuch wert. Und es ist zu 100 % lokal. Alles liegt als einfacher Markdown auf der Festplatte. Es gibt kein Lock-in, nichts, wofür man sich anmelden muss. Ich werde einen Link dazu in die Beschreibung aufnehmen. Okay, um die Idee der Capabilities wirklich konkret und schnell für Sie zu machen, habe ich dieses Beispiel. Ich habe dieses GitHub-Repo, das ich natürlich in der Beschreibung verlinken werde, in dem ich einen pyantic AI Agenten sowohl mit 2.0 als auch mit 1.0 erstellt habe. Wir werden also beide durchgehen und dann werde ich den neueren vorführen. Und Sie können dieses GitHub-Repo als Vorlage oder Ausgangspunkt für Ihren Coding-Agenten verwenden, um Ihren eigenen podanti 2.0 Agenten zu erstellen. Oder das andere, was Sie tun können, was ich Ihnen sehr empfehlen würde, ist, Ihrem Coding-Agenten einfach die Capability-Dokumentation direkt zu geben. Im 2.0-Launch-Artikel sagen sie buchstäblich hier: Zeigen Sie Ihrem Coding-Agenten einfach auf die Capabilities-Docs, was wir uns gerade ansehen. Ich werde das auch in der Beschreibung verlinken. Und es ist interessant. Man sieht, Mann, das ist eine sehr lange Dokumentationsseite. Wie, heilige Kuh. Und das zeigt nur, wie viel Anpassbarkeit und Kontrolle wir mit Pinantic AI haben. Aber ja, ich sage das, weil dies nicht für einen Menschen bestimmt ist. Zumindest glaube ich das nicht wirklich. Das ist eher für einen Coding-Agenten gedacht, der Ihnen beim Aufbau hilft. Ich glaube wirklich nicht, dass Sie den Pantic AI Agent-Code noch von Hand schreiben sollten. Das mache ich seit über einem Jahr nicht mehr. Bitte verschwenden Sie Ihre Zeit nicht damit. Und so werden wir uns gleich den Code ansehen, um einige der Ideen zu erklären, aber ich werde nicht technisch oder ins Detail gehen, weil ich nicht erwarte, dass Sie ihn zu 100 % verstehen oder den Code selbst schreiben. Ich möchte nur die Punkte veranschaulichen, wie wir die Capabilities weiterentwickelt haben und woraus sie wirklich bestehen. Okay, was Sie hier sehen, ist ein Pantic AI 1.0 Agent. Es war schon immer ein fantastisches Framework. Es gibt also nicht viele Kritikpunkte. Ich würde meine KI-Agenten immer noch gerne auf diese Weise bauen. Es ist relativ einfach, Ihre Tools zu definieren, sie in Ihren Agenten einzufügen, die Systemaufforderung und die Modelleinstellungen hinzuzufügen. Es ist immer noch eine gute Erfahrung. Aber was Sie hier sehen, ist, wenn wir unseren KI-Agenten definieren, ist es wirklich nur ein Sammelsurium aller Anweisungen und Tools, die wir für ihn haben. Es gibt keine Organisation und keine Komponierbarkeit. Wir können keinen Teil der Capabilities daraus nehmen und ihn leicht in einen anderen Agenten einfügen. Wir müssen Dinge neu definieren und neu erstellen. Und so ist es wieder eine gute Erfahrung, aber es könnte besser sein. Und das ist es, was wir jetzt mit Panti 2.0 haben. Schauen Sie sich das an. Wir haben hier diese Art von größerem Konstruktor. Sehen Sie, wie einfach das jetzt ist. Wir haben unser Modell, das wir für den Agenten insgesamt spezifizieren, und dann ist alles andere nur eine Reihe von Capabilities, denn das beinhaltet die Anweisungen, wie wir sie hier definieren mussten, und es beinhaltet die Guardrails und Hooks und Tools, sogar mehr als ich hier definiert habe. Wir können sie in einer einzigen Capability verpacken und sie dann zwischen unseren KI-Agenten wiederverwenden. Dieses erste ist zum Beispiel ein Support-Agent. Er muss Zugriff auf die Wissensdatenbank haben, also RAG in unserer Datenbank durchführen und dann auch die Möglichkeit haben, Dinge an einen Menschen zu eskalieren. Und stellen Sie sich dann vor, an der Vorderseite Ihrer Plattform haben Sie das FAQ-Widget, bei dem es keine Eskalation gibt, aber es immer noch Zugriff auf die Wissensdatenbank benötigt, um grundlegende Benutzerfragen zu beantworten. Und so müssen wir hier nichts neu aufbauen. Und während wir unsere Wissensdatenbank-Capability im Laufe der Zeit weiterentwickeln, indem wir die Anweisungen, Guardrails und Tools verbessern, profitieren beide Agenten gleichzeitig davon. Und um nicht zu viel Zeit im Code zu verbringen, aber um Ihnen schnell zu zeigen, wie eine Capability definiert wird: Wir haben unsere Anweisungen. Wir haben die Tool-Sammlung. Wir haben also nur eine Funktion zur Suche in der Wissensdatenbank für unsere Wissensdatenbank-Capability. Die Modelleinstellungen und dann ein sehr einfaches Beispiel für einen Hook. Und das ist genau wie in Cloud Code oder Codeex, wo wir einen Pre-Tool-Use-Hook haben. Wir wollen eine deterministische Aktion aus Sicherheitsgründen oder zur korrekten Führung des Agenten, was auch immer das sein mag. Und dann haben wir unsere Eskalations-Capability für den Support-Agenten, die auf sehr ähnliche Weise definiert ist. Und so hätten wir dort alle Kernprimitiven. Wir könnten weitere Dinge wie MCP-Server hinzufügen, wie wir es in dem GitHub-Beispiel gesehen haben. Sehr einfach, was auch immer der Agent braucht, verpackt in dieser Capability. Und wenn das nicht ausreicht, ist einer meiner Lieblingsteile von Capabilities, dass man die Idee der progressiven Offenlegung implementieren kann. Genau wie bei Skills in Cloud Code, Codeex, GitHub, Copilot, haben Sie die Möglichkeit, eine kurze Beschreibung der Capability zu geben. So hat der Agent einen Katalog, auf den er zurückgreifen kann, aber er lädt die vollständigen Anweisungen für die Capability erst, wenn er entscheidet, dass er sie tatsächlich benötigt. Und das ist wichtig, denn so können wir unserem Agenten eine Menge verschiedener Capabilities zur Verfügung stellen. Ob es sich um die handelt, die direkt in Pantankant AI integriert sind, wie diese, oder um eine benutzerdefinierte, die wir erstellen, wir können ihm Dutzende, vielleicht sogar Hunderte von Capabilities geben, ohne den LLM zu überfordern, da er sich wirklich nur auf die konzentrieren und nutzen muss, die er basierend auf der aktuellen Eingabeaufforderung des Benutzers benötigt. Und um Ihnen ein Beispiel dafür zu geben, hier habe ich den Agenten in der CLI gestartet und stelle ihm eine Frage. Kann ich Orbit mit Slack verbinden? Und das ist etwas, bei dem er die Eskalations-Capability überhaupt nicht nutzen muss. Ich hoffe es doch sehr. Er muss nur unsere Wissensdatenbank durchsuchen. Und siehe da, er sagt, Orbit hat noch keine native Slack-Integration, obwohl sie auf der Roadmap steht. Und er verweist sogar auf ein Dokument, das er in der Wissensdatenbank gefunden hat. Und so sehen Sie, dass er von den Capabilities, die ich ihm gegeben habe, die Denk-Capability, die Padantkai mit dem Framework liefert, und dann die benutzerdefinierte Wissensdatenbank-Capability genutzt hat. Er hat also die Anweisungen für beide geladen und dann die dortigen Tools verwendet, wie das Suchwerkzeug für die Wissensdatenbank und einige Schlussfolgerungen gezogen, aber die Eskalation überhaupt nicht genutzt. Und das ist gut. Es wäre nicht lohnenswert, diese Tokens zu laden, da dies unseren Agenten langsamer machen und den Aufruf teurer machen würde. Aber nehmen wir an, jemand kommt zum Kundensupport-Bot, wo er tatsächlich ein Anliegen hat, das eskaliert werden muss. Ich wurde diesen Monat zweimal für mein Abonnement belastet. Können Sie die doppelte Gebühr erstatten? Ich hoffe, Ihre Plattform tut das nicht, aber nur als Beispiel hier, wo wir die Eskalations-Capability nutzen müssen. Und so werden wir sie jetzt laden. Da ist sie, wir haben die Eskalation geladen. Ihr Support-Ticket wurde erstellt. Ihre Ticket-ID ist blah blah blah. Ich meine, nichts davon ist echt. Das ist nur eine Mock-Demonstration. Aber Sie verstehen, worum es geht. Der Agent wählt die Capabilities aus, die er benötigt. Und so ist er nicht nur komponierbarer, damit wir ihn leicht mit anderen Agenten teilen können, sondern es bedeutet auch, dass unser Agent in der aktuellen Konversation sehr fokussiert auf die Verantwortlichkeiten sein kann, die er für diese Konversation tatsächlich nutzen muss. Okay, das Letzte in diesem Artikel, das definitiv erwähnenswert ist, ist die Idee des Harness und des schlankeren Kerns für Panti. Und ich liebe es, wie sie das Framework auf diese Weise weiterentwickeln. Im Wesentlichen gibt es zwei Ebenen von Capabilities im Framework. Die erste Ebene sind die Capabilities, die sie für die meisten KI-Agenten als kritisch erachten. Meistens, wenn Sie einen Agenten bauen, wollen Sie Denken. Sie wollen Websuche. Sie wollen Werkzeugsuche, die uns diese progressive Offenlegung ermöglicht, damit Sie Ihre Agenten wirklich skalieren können. Das ist die erste Spur. Und so importieren Sie diese Dinge von Pantanki, sie werden direkt unterstützt, sie sind Teil des schlanken Kerns. Es ist sehr einfach, diese als Capabilities hinzuzufügen. Das Einzige, was Sie wirklich anpassen müssen, sind vielleicht ein paar Parameter wie dieser für das Denken. Und dann unsere andere Spur ist der Harness. Das sind die Capabilities, die Pideantic AI direkt unterstützen möchte, die aber nicht für die Mehrheit der KI-Agenten-Anwendungsfälle als kritisch erachtet werden. Und so ist Code-Modus ein gutes Beispiel. Das gibt Ihrem Agenten die Fähigkeit, Code in einer Sandbox zu schreiben und auszuführen. Und ja, ziemlich wichtig für eine gute Anzahl von Agenten, nur vielleicht nicht für die Mehrheit. Und das ist übrigens eine wirklich coole Capability, denn Pyanticai oder die Pyantic-Firma, die Muttergesellschaft, arbeitet an ihrer eigenen leichten Sandbox namens Monty, die ebenfalls Open Source ist. Das ist faszinierend. Ich könnte ein ganzes Video über Monty machen, aber das liegt außerhalb des Rahmens dessen, was wir gerade behandeln. Sie verstehen den Punkt. Diese Art von Capabilities, andere wie von Drittanbietern, die sie unterstützen wollen, fallen unter den Harness. Es ist die Hülle über dem schlanken Kern von Panti, was, denke ich, der Grund ist, warum sie es Harness nennen. Also wirklich cool. Ich liebe das, denn so halten sie das Kern-Framework wirklich leichtgewichtig und bieten Ihnen trotzdem viele Out-of-the-Box-Funktionen, wenn Sie danach greifen wollen. Und da haben Sie es. Das ist alles im Panti 2.0 Release und die neue Idee der Capability als unser einziges Primitiv für den Bau von Agenten. Es ist eine Vereinfachung, ohne die Leistungsfähigkeit unserer Agenten mit Pyantkai zu reduzieren. Und so ermutige ich Sie, einfach damit herumzuspielen. Ich meine, ich benutze Panti immer noch ständig. Wenn Sie einen Agenten in Produktion einsetzen wollen und andere Leute Ihren Agenten benutzen, können Sie sich nicht einfach auf diese Coding-Agent-SDKs oder etwas wie Hermes oder Open Claw verlassen. Sie brauchen ein Framework. Pantic AI ist wirklich mein Go-to. Und so plane ich, mehr Inhalte über Pideantic AI zu machen. Und wenn Sie dieses Video schätzen und sich auf weitere Dinge zum Bau von Agenten und KI-Coding freuen, würde ich mich sehr über ein Like und ein Abo freuen. Und damit sehe ich Sie im nächsten.