Docker hat 90% des KI-Codings behoben – mit dieser Veröffentlichung!

AAI LABS
AI/미래기술컴퓨터/소프트웨어

Transcript

00:00:00Eines der wichtigsten Dinge in der KI war das MCP-Protokoll,
00:00:03doch sechs Monate später ist es für uns zu einem riesigen Problem geworden.
00:00:06Als wir anfingen,
00:00:07hatten die Leute nur zwei bis drei MCP-Server lokal laufen,
00:00:11aber MCP hat sich zu so viel mehr entwickelt.
00:00:13Jetzt haben die Leute buchstäblich Hunderte von MCP-Servern mit Tausenden von Tools gleichzeitig,
00:00:18und das ist zu einem riesigen Problem geworden.
00:00:20Wie Sie wissen,
00:00:20bemerkte Cloudflare dies zuerst,
00:00:22und Claude folgte,
00:00:23indem er ein Forschungspapier zu diesem Problem veröffentlichte.
00:00:26Aber Docker hat tatsächlich eine Lösung dafür gefunden und eines der kritischsten Probleme für MCPs gelöst,
00:00:31indem es eine völlig neue Art der Nutzung entwickelt hat.
00:00:34Ein dynamischer Modus,
00:00:35mit dem Sie so viele Tokens sparen,
00:00:37Ihre Agenten beschleunigen und völlig neue Arten von Automatisierungen erstellen können,
00:00:41auf die ich mich persönlich sehr freue.
00:00:43Docker hat dazu einen Artikel veröffentlicht,
00:00:45in dem sie uns im Grunde dazu auffordern,
00:00:47die Umgebung unserer Agenten nicht mehr fest zu codieren.
00:00:50Was meinen sie damit?
00:00:51Zunächst einmal: Welchen MCP-Servern vertrauen wir tatsächlich?
00:00:54Zweitens: Wie vermeiden wir es,
00:00:56unseren Kontext mit Tool-Definitionen zu füllen,
00:00:58die wir vielleicht gar nicht verwenden?
00:01:00Wenn Sie zum Beispiel tausend Tools haben,
00:01:02verwenden Sie in einem einzigen Chat vielleicht nur zwei oder drei.
00:01:05Drittens: Wie entdecken,
00:01:07konfigurieren und nutzen Agenten diese Tools effizient und autonom?
00:01:12Aber ich möchte,
00:01:12dass Sie sich auf den zweiten Punkt konzentrieren: Wie vermeiden wir es,
00:01:15unseren Kontext mit Tool-Definitionen zu füllen,
00:01:17die wir vielleicht gar nicht verwenden?
00:01:19Wenn Sie zum Beispiel tausend Tools haben,
00:01:21verwenden Sie in einem einzigen Chat vielleicht nur zwei oder drei.
00:01:23Anthropic veröffentlichte ebenfalls einen Beitrag dazu,
00:01:26den wir in einem unserer früheren Videos behandelt haben,
00:01:28und wir erhielten eine sehr positive Resonanz von Leuten,
00:01:30die die Implementierung wollten.
00:01:32Und Docker hat dies tatsächlich umgesetzt.
00:01:34Bevor wir fortfahren,
00:01:35müssen Sie wissen,
00:01:36dass Docker die gesamte Infrastruktur dafür schon lange vor dem Entstehen des Problems eingerichtet hat.
00:01:41Dazu müssen Sie ihren MCP-Katalog kennen,
00:01:43in dem sie verifizierte MCP-Server aufgelistet haben,
00:01:46denen Sie tatsächlich vertrauen können.
00:01:48Und die Verbindung ist wirklich einfach,
00:01:50Sie verbinden sie einfach hier in Docker.
00:01:52Ich habe zum Beispiel Notion hier verbunden,
00:01:54Sie sehen,
00:01:55dass ich gerade zwei Server habe,
00:01:57und mein MCP-Client,
00:01:58der meistens Claude-Code ist,
00:01:59verbindet sich nur mit Docker,
00:02:01und dann verwaltet Docker im Grunde alle meine MCP-Server.
00:02:04Dies löst also das erste Problem vollständig,
00:02:07nämlich welchen MCP-Servern wir tatsächlich vertrauen.
00:02:09Um unsere Agenten nun in die Lage zu versetzen,
00:02:12diese MCPs dynamisch zu nutzen,
00:02:14haben sie dieses MCP-Gateway implementiert,
00:02:16das bereits vorgefertigte Tools enthält,
00:02:18um die MCP-Server im Katalog zu verwenden und sie autonom zu nutzen.
00:02:22Im Wesentlichen verbinden Sie also nur ein MCP,
00:02:25und dieses MCP hat den gesamten Kontext,
00:02:28mit welchen Tools es im Katalog verbunden ist.
00:02:31Ich war mit zwei verbunden und es weiß,
00:02:33welche Tool-Definitionen tatsächlich in das Kontextfenster geladen werden müssen.
00:02:36So wird Ihr Kontextfenster nicht überladen..
00:02:39Damit dies funktioniert,
00:02:40haben sie einige neue Tools hinzugefügt,
00:02:42darunter MCP find,
00:02:43add und remove,
00:02:44die MCP-Server im Katalog nach Namen oder Beschreibungen finden.
00:02:48Und wie ich Ihnen zeigen werde,
00:02:49führe ich Sie durch die korrekte Hinzufügung.
00:02:51Ich verwende zum Beispiel mein GitHub MCP hier und sage ihm,
00:02:54dass ich nach interessanten Repos suchen möchte.
00:02:57Nachdem ich die Art der Repositories angegeben habe,
00:03:00ruft es nicht das Tool selbst auf,
00:03:02sondern verwendet den Docker MCP-Server,
00:03:04der dann das Tool mit den korrekten Informationen aufruft und offensichtlich alle Ergebnisse zurückgibt.
00:03:09Nun möchte ich,
00:03:10dass Sie eines beachten: Das LLM gibt alles über die Repositories zurück.
00:03:14Es gibt den Link zurück,
00:03:15die Sterne,
00:03:15die Beschreibung,
00:03:16und es kennt sogar das Datum,
00:03:18an dem diese Repositories veröffentlicht wurden..
00:03:21Ich möchte,
00:03:21dass Sie sich das merken,
00:03:23denn es wird in Zukunft wichtig sein.
00:03:25Nun zur dynamischen Tool-Auswahl.
00:03:27Dies ist der wichtigste Teil des Artikels,
00:03:30und das meinte ich,
00:03:31als ich eine neue Art der Nutzung von MCP-Servern erwähnte..
00:03:35Nochmals,
00:03:35unter Bezugnahme auf den Claude-Artikel sprechen sie darüber,
00:03:39wie Claude oder jeder KI-Agent tatsächlich mehr Tokens verbraucht.
00:03:44Einerseits sind das die Tool-Definitionen im Kontextfenster,
00:03:48andererseits die Zwischenergebnisse der Tools.
00:03:51Hier sprechen wir über die Rohdaten,
00:03:53die tatsächlich von MCP-Tool-Aufrufen zurückgegeben werden.
00:03:57All diese Details,
00:03:58die wir mit dem GitHub-Tool gesucht haben,
00:04:01wurden in das Kontextfenster zurückgegeben.
00:04:04Deshalb kennt Claude jedes kleine Detail über die Repositories,
00:04:08obwohl ich nur die Beschreibung und den Link des Repositories wollte.
00:04:12Auf diese Weise sind nur wenige Tool-Aufrufe nötig,
00:04:16in meinem Fall vielleicht 20 Tool-Aufrufe,
00:04:19bevor das gesamte Kontextfenster tatsächlich gefüllt ist.
00:04:22Dies ist eine Sache,
00:04:24die sie im MCP-Gateway-Projekt verbessert haben,
00:04:27wo sie nur die Tools bereitstellen,
00:04:29die tatsächlich nützlich sind.
00:04:31In meinem Fall könnte der Kontext beispielsweise dadurch gespart werden,
00:04:36dass mir nur das Such-Repo-Tool und nicht die anderen 40 Tools,
00:04:40die in diesem GitHub MCP enthalten sind,
00:04:43zur Verfügung gestellt werden.
00:04:45Denn in dieser Sitzung möchte ich nur das Such-Repo-Tool verwenden.
00:04:49Aber auch hier gilt: Sobald Sie Tools auf diese Weise auswählen,
00:04:53eröffnen sich auch neue Möglichkeiten.
00:04:56Und das führt uns in den Code-Modus.
00:04:58Cloudflare hat im Grunde dargelegt,
00:05:01wie wir MCP falsch verwendet haben und dass dies nicht der richtige Weg ist.
00:05:06Und hier ist Docker tatsächlich der erste,
00:05:08der diese neue Lösung implementiert.
00:05:11Ich habe viel damit herumgespielt.
00:05:13Und ich muss sagen,
00:05:14ich bin wirklich überrascht,
00:05:16wie die Ausführung ausgefallen ist.
00:05:19Sie sagen also,
00:05:20dass sie,
00:05:20indem sie es Agenten ermöglichen,
00:05:22direkt mit MCP-Tools zu programmieren,
00:05:25d.h.
00:05:25sie nehmen die Tools und implementieren sie in Code,
00:05:29den Agenten diese Code-Modus-Tools zur Verfügung stellen können,
00:05:33die die Tools auf völlig neue Weise verwenden.
00:05:36Was macht der Code-Modus also.
00:05:38Er erstellt ein JavaScript-fähiges Tool,
00:05:41das andere MCP-Tools aufrufen kann?
00:05:43Das mag sehr einfach erscheinen,
00:05:45aber die Beispiele,
00:05:46die ich Ihnen zeigen werde,
00:05:48werden dies hoffentlich verdeutlichen.
00:05:51Bevor wir uns nun in eine Implementierung stürzen,
00:05:54gibt es noch andere Dinge zu beachten.
00:05:56Zunächst einmal ist dieser Code,
00:05:58da er von einem Agenten geschrieben wurde,
00:06:01offensichtlich nicht getestet und nicht sicher.
00:06:04Docker hat daher geplant,
00:06:06dass dieser Code tatsächlich in einer Sandbox ausgeführt wird.
00:06:10Und da sie bereits Docker-Container bereitstellen,
00:06:13war dies für sie ziemlich naheliegend.
00:06:16Dieser Ansatz bietet letztendlich drei Hauptvorteile.
00:06:19Zunächst einmal ist er absolut sicher,
00:06:22denn das ist der Hauptvorteil von Sandboxing.
00:06:25Er verursacht keinen tatsächlichen Schaden an Ihrem System.
00:06:29Dann gibt es die gesamte Token- und Tool-Effizienz,
00:06:32über die wir gesprochen haben,
00:06:34bei der das verwendete Tool nicht bei jeder Anfrage an das Modell gesendet werden muss,
00:06:40das Modell muss nur über ein neues Code-Modus-Tool Bescheid wissen.
00:06:44Ohne Code-Modus,
00:06:46wenn Sie nur,
00:06:46sagen wir,
00:06:47diese drei Tools verwenden und diese wiederholt ausführen,
00:06:51geht der Kontext dieser 47 anderen Tools auch zusammen mit den drei Tools,
00:06:56die wir tatsächlich verwenden.
00:06:58Aber mit dem Code-Modus schreibt der Agent das benutzerdefinierte.
00:07:07Der Grund,
00:07:08warum ich diese GitHub-Repositories durchsucht habe,
00:07:10ist,
00:07:10dass ich neue Open-Source-Tools entdecken kann,
00:07:12die ich in meine Videos einbauen kann.
00:07:14Und was ich normalerweise mache,
00:07:15ist,
00:07:16mehrere Aufrufe mit dem Tool 'find GitHub repo' auszuführen.
00:07:18Ich schreibe einfach verschiedene Schlüsselwörter,
00:07:20um nach Tools zu suchen.
00:07:21Also habe ich dies Claude Code präsentiert und es hat all diese verschiedenen Tool-Aufrufe zu einem einzigen Tool kombiniert,
00:07:27das Repos basierend auf den von mir angegebenen Schlüsselwörtern durchsucht.
00:07:30Sie können sehen,
00:07:31dass Docker selbst hier ohne Code-Modus tatsächlich mehrere Abfragen ausführt.
00:07:34Und das wollte ich beheben.
00:07:35Das Tool, das es erstellt hat, hieß 'multi search repos'..
00:07:37Und nachdem das Tool erstellt war,
00:07:39nutzte es das MCP-Exec-Tool,
00:07:40um es tatsächlich auszuführen.
00:07:42Es lieferte mir im Grunde 29 einzigartige Repositories,
00:07:44indem es mit sechs verschiedenen Schlüsselwörtern suchte,
00:07:47aber die Ergebnisse wurden direkt in der Antwort und im Terminal zurückgegeben,
00:07:50was bedeutet,
00:07:51dass alle Ergebnisse innerhalb des Kontextfensters zurückgegeben wurden.
00:07:54Um dies zu beheben,
00:07:55sagte ich ihm,
00:07:56dass es alles in eine Datei schreiben sollte und das Modell nur die Beschreibung der Repositories erhalten sollte.
00:08:01Es war nicht nötig, Sterne oder sonstiges anzugeben.
00:08:03Und es änderte das Tool und schrieb all diese Ergebnisse in eine Textdatei in meinem Repository,
00:08:08so dass ich,
00:08:08wenn ich etwas Spezifisches über ein Repository nachschlagen wollte,
00:08:11dies tun konnte,
00:08:12indem ich auf die Textdatei verwies.
00:08:14Jetzt gibt es eine Sache,
00:08:15die ich gerne implementiert sehen würde: eine Möglichkeit,
00:08:17dieses Tool zu speichern und wiederzuverwenden.
00:08:19Im Moment besteht die einzige Möglichkeit darin,
00:08:22es manuell als Datei zu speichern.
00:08:23Danach bat ich es, nach dem Notion MCP zu suchen.
00:08:25Nach der Verbindung fragte ich,
00:08:27ob es ein Tool erstellen könnte,
00:08:28das die GitHub-Suchergebnisse direkt in Notion ausgibt,
00:08:31anstatt eine Textdatei zu verwenden.
00:08:32Und wieder,
00:08:33im Code-Modus,
00:08:33erstellte es tatsächlich das GitHub-zu-Notion-Tool,
00:08:36das es mir ermöglichen würde,
00:08:37die Ergebnisse in Notion einzufügen..
00:08:40Und nachdem es das ausgeführt hatte,
00:08:42gab es im Grunde ein paar kleine Probleme,
00:08:44die ich beheben musste.
00:08:45Aber im Wesentlichen habe ich jetzt diese Datenbank in Notion.
00:08:47Sie ist im Grunde fest codiert.
00:08:49Egal welche Abfrage ich eingebe,
00:08:50es wird die Ergebnisse einfach entsprechend den verschiedenen Feldern in diese Datenbank eingeben..
00:08:55Und es wird sogar das Datum enthalten,
00:08:57so dass ich sie leicht filtern und nur nach den Ergebnissen suchen kann,
00:09:00die ich tatsächlich möchte.
00:09:02Das Modell erfährt jeweils nur den Namen und die Beschreibung des GitHub-Repositories.
00:09:06Es erhält nichts anderes,
00:09:07aber der Rest der Informationen ist hier gespeichert.
00:09:09Ehrlich gesagt,
00:09:10wenn Sie diesen Katalog durchgehen,
00:09:12bekommen Sie zumindest eine Vorstellung davon,
00:09:14welche MCPs Sie miteinander verketten könnten,
00:09:16um diese erstaunlichen Workflows zu erstellen.
00:09:18Und gleichzeitig sparen Sie Tokens und erhalten die Leistung Ihres eigenen KI-Agenten.
00:09:22Der Einstieg ist ehrlich gesagt ziemlich einfach.
00:09:24Sie müssen Ihre Docker-Version aktualisieren.
00:09:27Aber wenn Sie sie noch nicht haben,
00:09:28könnten sie in Beta-Funktionen deaktiviert sein.
00:09:30Stellen Sie also sicher,
00:09:31dass dieses Docker MCP Toolkit aktiviert ist..
00:09:34Ansonsten haben Sie Ihren Katalog und diese neuen Funktionen sind standardmäßig aktiviert.
00:09:39Sie müssen also nur Ihren Client verbinden und können im Grunde damit beginnen.
00:09:42Das bringt uns zum Ende dieses Videos.
00:09:44Wenn Sie den Kanal unterstützen und uns helfen möchten,
00:09:47weiterhin solche Videos zu erstellen,
00:09:48können Sie dies über den Super-Thanks-Button unten tun.
00:09:51Wie immer,
00:09:51vielen Dank fürs Zuschauen,
00:09:53und wir sehen uns im nächsten Video..

Key Takeaway

Docker hat mit der Einführung eines dynamischen Modus und des innovativen Code-Modus kritische Probleme der Token-Effizienz und des Kontextmanagements bei der Nutzung von MCP-Servern in KI-Agenten gelöst, was zu sichereren, schnelleren und leistungsfähigeren Automatisierungen führt.

Highlights

Docker hat eine Lösung für das Problem der übermäßigen Token-Nutzung und des Kontextüberlaufs bei der Verwendung von MCP-Servern in KI-Agenten entwickelt.

Die neue dynamische Nutzung von MCPs über ein Gateway ermöglicht es Agenten, Tools autonom zu finden und nur relevante Definitionen in den Kontext zu laden.

Der "Code-Modus" erlaubt KI-Agenten, JavaScript-fähige Tools zu programmieren, die andere MCP-Tools aufrufen können, was die Effizienz und Automatisierung erheblich steigert.

Docker löst das Vertrauensproblem bei MCP-Servern durch einen verifizierten MCP-Katalog und die zentrale Verwaltung der Verbindungen.

Der Code-Modus bietet Sicherheit durch Sandboxing und optimiert die Token-Nutzung, indem er komplexe Tool-Aufrufe in einem einzigen, effizienten Tool kapselt.

Praktische Beispiele zeigen, wie der Code-Modus wiederholte Suchanfragen kombiniert und Ergebnisse direkt in externe Anwendungen wie Notion exportiert, um Workflows zu automatisieren.

Timeline

Problemstellung des MCP-Protokolls

Das Video beginnt mit der Erläuterung, dass das MCP-Protokoll, einst ein wichtiger Bestandteil der KI, zu einem erheblichen Problem geworden ist. Ursprünglich für wenige lokale Server konzipiert, wird es nun mit Hunderten von Servern und Tausenden von Tools gleichzeitig genutzt, was zu massiven Skalierungsproblemen führt. Cloudflare und Claude (Anthropic) haben dieses Problem erkannt und Forschung dazu betrieben. Docker hat jedoch eine innovative Lösung entwickelt, die eines der kritischsten Probleme für MCPs behebt, indem es eine völlig neue Art der Nutzung ermöglicht.

Docker's Lösung: Dynamischer Modus und Herausforderungen

Docker stellt einen dynamischen Modus vor, der Token spart, Agenten beschleunigt und völlig neue Automatisierungsarten ermöglicht. Der Sprecher geht auf einen Artikel von Docker ein, der drei Hauptprobleme hervorhebt: das Vertrauen in MCP-Server, die Vermeidung der Überladung des Kontextfensters mit ungenutzten Tool-Definitionen und die effiziente autonome Nutzung von Tools durch Agenten. Insbesondere wird betont, wie wichtig es ist, den Kontext nicht mit Tool-Definitionen zu füllen, die in einem Chat nicht verwendet werden, da dies die Token-Kosten unnötig erhöht. Dieses Problem wurde auch von Anthropic adressiert, und Docker bietet nun eine konkrete Implementierung zur Lösung an.

MCP-Katalog und Gateway für dynamische Tool-Nutzung

Docker hat bereits die Infrastruktur für die Lösung des Vertrauensproblems geschaffen: einen MCP-Katalog mit verifizierten und vertrauenswürdigen MCP-Servern. Die Verbindung ist einfach, wobei der MCP-Client sich nur mit Docker verbindet, welches dann alle MCP-Server zentral verwaltet. Um Agenten die dynamische Nutzung dieser MCPs zu ermöglichen, wurde das MCP-Gateway implementiert, das vorgefertigte Tools enthält. Dieses Gateway erlaubt es Agenten, die Server im Katalog autonom zu nutzen und nur die tatsächlich benötigten Tool-Definitionen in das Kontextfenster zu laden, um eine Überladung zu vermeiden und die Effizienz zu steigern.

Neue Tools und Token-Effizienz

Um die dynamische Nutzung zu unterstützen, wurden neue Tools wie MCP find, add und remove hinzugefügt, die MCP-Server nach Namen oder Beschreibungen im Katalog finden können. Ein Beispiel mit GitHub MCP zeigt, wie ein LLM alle Details eines Repositories zurückgibt, was jedoch zu einem Problem der Token-Überladung führen kann, da oft nur spezifische Informationen benötigt werden. Der Sprecher verweist auf einen Claude-Artikel, der die Token-Kosten durch Tool-Definitionen und Zwischenergebnisse hervorhebt, da Rohdaten von Tool-Aufrufen das Kontextfenster schnell füllen. Das MCP-Gateway-Projekt verbessert dies, indem es nur die wirklich nützlichen Tools bereitstellt und somit den Kontext effizienter nutzt, beispielsweise nur das "search repo"-Tool aus 40 verfügbaren.

Einführung des Code-Modus

Docker präsentiert den "Code-Modus" als eine bahnbrechende Lösung, die die Art und Weise, wie MCP-Server genutzt werden, revolutioniert. Cloudflare hatte zuvor aufgezeigt, wie MCP falsch verwendet wurde, und Docker ist nun der erste, der eine neue Implementierung bietet, die den Sprecher beeindruckt. Der Code-Modus ermöglicht es Agenten, direkt mit MCP-Tools zu programmieren, indem sie JavaScript-fähige Tools erstellen, die wiederum andere MCP-Tools aufrufen können. Dieser von Agenten geschriebene Code wird in einer Sandbox (Docker-Container) ausgeführt, was absolute Sicherheit gewährleistet, da er keinen Schaden am System anrichten kann. Dies verbessert die Token- sowie Tool-Effizienz erheblich, da das Modell nur über das neue Code-Modus-Tool Bescheid wissen muss, anstatt alle zugrunde liegenden Tools zu kennen.

Praktische Anwendungen des Code-Modus

Der Sprecher demonstriert den Code-Modus anhand praktischer Beispiele, um dessen Leistungsfähigkeit zu verdeutlichen. Zuerst wird gezeigt, wie der Agent mehrere `find GitHub repo`-Aufrufe zu einem einzigen "multi search repos"-Tool kombiniert, um effizient nach Repositories zu suchen und 29 einzigartige Ergebnisse zu liefern. Um das Kontextfenster nicht zu überladen, wird das Tool so angepasst, dass die Ergebnisse in eine Textdatei geschrieben und dem Modell nur die Beschreibungen der Repositories präsentiert werden, was Token spart. Anschließend wird ein weiteres Beispiel vorgestellt, bei dem der Code-Modus ein "GitHub-zu-Notion"-Tool erstellt. Dieses Tool exportiert Suchergebnisse direkt in eine Notion-Datenbank, inklusive relevanter Felder und Daten, was komplexe Workflows automatisiert und die manuelle Datenpflege eliminiert.

Fazit und Einstieg

Zusammenfassend ermöglicht die neue Docker-Veröffentlichung das Verketten von MCPs zu erstaunlichen Workflows, spart Token und steigert die Leistung von KI-Agenten erheblich. Der Einstieg ist unkompliziert und erfordert lediglich ein Update der Docker-Version. Benutzer müssen zudem sicherstellen, dass das "Docker MCP Toolkit" in den Beta-Funktionen aktiviert ist, falls es nicht standardmäßig eingeschaltet ist. Danach kann der Client verbunden werden, um die neuen Funktionen sofort zu nutzen und von den Verbesserungen zu profitieren.

Community Posts

View all posts