Technologien

GitHub veröffentlicht ein Copilot-SDK für Java zur Entwicklung frameworkunabhängiger KI-Agenten

GitHub hat die Bibliothek Copilot SDK for Java vorgestellt. Sie ermöglicht es serverseitigen Java-Anwendungen, Sitzungen für Copilot-Agenten zu erstellen, Tools zu registrieren, Prompts zu senden und strukturierte Antworten zu empfangen. Die Bibliothek ist derzeit als Vorschauversion verfügbar und unterstützt Jakarta-EE- und Spring-Umgebungen sowie die BYOK-Option.

2026-08-10
4 Min. Lesezeit
1,914 Aufrufe
certi.news Editorial Team
GitHub veröffentlicht ein Copilot-SDK für Java zur Entwicklung frameworkunabhängiger KI-Agenten

GitHub hat Copilot SDK for Java angekündigt, eine Clientbibliothek, mit der serverseitige Java-Anwendungen Copilot-Agenten programmgesteuert steuern können, indem sie Agentensitzungen erstellen, Tools registrieren, Prompts senden und strukturierte Antworten empfangen. Laut GitHub wurde die Bibliothek so konzipiert, dass sie unabhängig von Java-Frameworks ist. Außerdem unterstützt sie die BYOK-Option, wodurch sie nicht an einen einzelnen Anbieter für künstliche Intelligenz gebunden ist.

Die Bibliothek richtet sich an Java-Entwickler in Unternehmensanwendungen und funktioniert in Serverumgebungen, darunter Jakarta EE und Spring. Sie verwendet Java-Entwicklern vertraute Schnittstellen wie CompletableFuture, Anmerkungen, Lambdas und virtuelle Threads, anstatt einen Ansatz vorzuschreiben, der an ein bestimmtes Framework gebunden ist.

Verfügbarkeit und Anforderungen

Die Bibliothek ist derzeit als Maven-Abhängigkeit in der Version 1.0.7-preview.1 verfügbar. Für ihre Nutzung gelten folgende Voraussetzungen:

  • JDK 17 oder JDK 25; die Verwendung von JDK 25 wird empfohlen, um virtuelle Threads und weitere moderne Funktionen zu nutzen.
  • Maven 3.9 oder höher.
  • Ein GitHub-Konto mit einem aktiven Copilot-Abonnement.
  • Eine lokale Installation der Copilot CLI in Version 1.0.71 oder höher.

Der GitHub-Beitrag zeigt eine vollständige Beispielanwendung auf Grundlage von Jakarta EE 11 und stellt den Quellcode zum Ausprobieren bereit. Das Unternehmen betont außerdem, dass Entwickler eigene Agenten mit den von ihnen gewählten Java-Frameworks und -Bibliotheken erstellen können.

Beispielanwendung zur Verwaltung von Immobilienanfragen

Das Beispiel verwendet eine Anwendung zur Verwaltung potenzieller Kunden im Immobiliensektor. Wenn ein Kunde eine Anfrage sendet, etwa nach einem Haus mit drei Schlafzimmern in London für weniger als 800.000 britische Pfund, erstellt das System einen isolierten Copilot-Agenten auf einem virtuellen Thread, um die Anfrage innerhalb eines festgelegten Arbeitsablaufs zu bearbeiten.

Die Anwendung verwendet Jakarta WebSocket, um Statusaktualisierungen in Echtzeit vom Server an den Browser zu senden. Dadurch lässt sich der Fortschritt der Agenten verfolgen, während sie Tools aufrufen. Mehrere Anfragen können gleichzeitig gesendet werden, wobei jede Anfrage unabhängig in ihrer eigenen Copilot-Sitzung verarbeitet wird.

Definition und Verwaltung von Tools

Die Bibliothek stellt die Schnittstelle @CopilotTool bereit, um Tools zu definieren, die das Modell aufrufen kann. Der Entwickler definiert eine gewöhnliche Java-Methode, während die Bibliothek das JSON-Schema erstellt, die Argumente analysiert und den Aufruf verteilt. Mit @CopilotToolParam kann jeder Parameter beschrieben werden, damit das Modell weiß, welcher Wert von ihm erwartet wird.

Diese Schnittstelle für Anmerkungen ist derzeit experimentell. Daher müssen experimentelle SDK-Schnittstellen über die Compileroption -Acopilot.experimental.allowed=true aktiviert und die Bibliothek in der Maven-Konfiguration als Teil des Pfads für Anmerkungsverarbeiter registriert werden. Die Verarbeitung erzeugt während des Kompilierungsvorgangs Metadaten für die Tools.

Neben Anmerkungen können Tools direkt am Verwendungsort über einen Lambda-Ausdruck mit ToolDefinition.from(...) definiert werden. Dadurch lässt sich ein Tool ohne eine eigene Methode erstellen. Außerdem bietet die Option overridesBuiltInTool(true) eine Möglichkeit, ein integriertes Tool durch ein benutzerdefiniertes Verhalten zu ersetzen. Tools können auch in Klassen getrennt von der Agentenlogik abgelegt und anschließend über ToolDefinition.fromObject registriert werden.

Nachrichten und Agenten-Workflow

Das SDK ermöglicht die Anpassung der Systemnachricht über SystemMessageMode.CUSTOMIZE. Dabei können bestimmte Abschnitte ersetzt und die übrigen Teile der Nachricht, einschließlich der Sicherheitsvorkehrungen, beibehalten werden. Außerdem steht der Modus APPEND zur Verfügung, um der standardmäßigen Systemnachricht Inhalte hinzuzufügen, ohne sie zu ersetzen.

Der vollständige Agenten-Workflow wird über sendAndWait(...) gestartet. Nach dem Senden des Prompts kann das Modell nachdenken, die registrierten Tools mehrfach aufrufen und anschließend das endgültige Ergebnis zurückgeben. Die Bibliothek übergibt die Tool-Ergebnisse an das Modell, bis die Aufgabe abgeschlossen ist. Virtuelle Threads ermöglichen das Warten über get(), ohne während des Wartens auf das Ergebnis einen herkömmlichen Thread zu belegen. Außerdem bietet session.on(...) die Möglichkeit, Ereignisse der Sitzung zu verarbeiten.

Nachrichtenquelle
c
Autor

certi.news Editorial Team

Das Wichtigste

GitHub hat die Bibliothek Copilot SDK for Java veröffentlicht. Sie ist derzeit als Vorschauversion verfügbar und unterstützt Java-Anwendungen auf Servern dabei, Copilot-Agenten zu erstellen sowie deren Sitzungen und Tools programmgesteuert zu verwalten. Sie ist als Maven-Abhängigkeit verfügbar und unterstützt Jakarta EE, Spring sowie die BYOK-Option. Voraussetzung sind ein GitHub-Konto mit Copilot-Abonnement und die Installation der Copilot CLI.

  • Die verfügbare Version ist 1.0.7-preview.1 und erfordert JDK 17 oder JDK 25 sowie Maven 3.9 oder höher.
  • Das SDK ermöglicht das Erstellen von Agentensitzungen, das Senden von Prompts, den Empfang strukturierter Antworten und die Registrierung von Tools, die das Modell aufrufen kann.
  • Die Bibliothek wurde unabhängig von Java-Frameworks entwickelt und unterstützt Jakarta-EE- sowie Spring-Umgebungen.
  • Tools können mithilfe von Annotationen wie @CopilotTool oder über ToolDefinition.from und ToolDefinition.fromObject definiert werden.
  • Für die Verwendung der experimentellen SDK-Schnittstellen muss die Option -Acopilot.experimental.allowed=true in den Compiler-Einstellungen aktiviert werden.
  • Ein GitHub-Beispiel zeigt eine Anwendung zur Verwaltung von Immobilienanfragen mit isolierten Agenten, virtuellen Java-Threads und Echtzeit-Statusaktualisierungen über Jakarta WebSocket.

FAQ

Was ist GitHub Copilot SDK for Java?

Es handelt sich um eine Clientbibliothek, mit der serverseitige Java-Anwendungen Copilot-Agenten programmgesteuert steuern können, einschließlich des Erstellens von Sitzungen, der Registrierung von Tools sowie des Sendens von Prompts und Empfangens strukturierter Antworten.

Welche grundlegenden Voraussetzungen gelten für die Verwendung der Bibliothek?

Erforderlich sind JDK 17 oder JDK 25, Maven 3.9 oder höher, ein GitHub-Konto mit aktivem Copilot-Abonnement sowie die Installation der Copilot CLI ab Version 1.0.71.

Unterstützt die Bibliothek bestimmte Java-Frameworks?

Die Bibliothek funktioniert in Serverumgebungen, einschließlich Jakarta EE und Spring, und ist unabhängig von einem bestimmten Java-Framework konzipiert.

Kann ein KI-Anbieter verwendet werden, der nicht an einen einzelnen Anbieter gebunden ist?

Die Bibliothek unterstützt die BYOK-Option, die GitHub als Möglichkeit beschreibt, nicht an einen einzelnen KI-Anbieter gebunden zu sein.

Aus derselben Kategorie

Das könnte Sie interessieren

Alle Nachrichten anzeigen