Technologies

GitHub lance un SDK Copilot en Java pour développer des agents d’IA indépendants des frameworks

GitHub a présenté la bibliothèque Copilot SDK for Java, qui permet aux applications Java côté serveur de créer des sessions pour des agents Copilot, d’enregistrer des outils, d’envoyer des requêtes et de recevoir des réponses structurées. La bibliothèque est actuellement disponible en version préliminaire et prend en charge les environnements Jakarta EE et Spring, ainsi que l’option BYOK.

2026-08-10
4 min de lecture
1,914 vues
certi.news Editorial Team
GitHub lance un SDK Copilot en Java pour développer des agents d’IA indépendants des frameworks

GitHub a annoncé Copilot SDK for Java, une bibliothèque cliente qui permet aux applications Java côté serveur de piloter des agents Copilot par programmation, en créant des sessions pour les agents, en enregistrant des outils, en envoyant des requêtes et en recevant des réponses structurées. GitHub indique que la bibliothèque a été conçue pour être indépendante des frameworks Java et qu’elle prend également en charge l’option BYOK, ce qui la rend indépendante d’un fournisseur d’intelligence artificielle unique.

La bibliothèque cible les développeurs Java d’applications d’entreprise et fonctionne dans des environnements serveur, notamment Jakarta EE et Spring. Elle s’appuie sur des interfaces familières aux développeurs Java, telles que CompletableFuture, les annotations, les expressions lambda et les threads virtuels, au lieu d’imposer une approche liée à un framework particulier.

Disponibilité et prérequis

La bibliothèque est actuellement disponible en tant que dépendance Maven, dans la version 1.0.7-preview.1. Son utilisation nécessite les éléments suivants :

  • JDK 17 ou JDK 25, avec une recommandation d’utiliser JDK 25 afin de profiter des threads virtuels et d’autres fonctionnalités récentes.
  • Maven 3.9 ou une version ultérieure.
  • Un compte GitHub avec un abonnement Copilot actif.
  • L’installation locale de Copilot CLI en version 1.0.71 ou ultérieure.

La publication de GitHub présente une application complète basée sur Jakarta EE 11, avec le code source mis à disposition pour permettre les essais. L’entreprise affirme également que les développeurs peuvent créer leurs propres agents en utilisant les frameworks et bibliothèques Java de leur choix.

Exemple d’application de gestion des demandes immobilières

L’exemple utilise une application de gestion de prospects dans le secteur immobilier. Lorsqu’un client envoie une demande, par exemple la recherche d’une maison de trois chambres à Londres pour un prix inférieur à 800 000 livres sterling, le système crée un agent Copilot isolé sur un thread virtuel afin de traiter la demande dans le cadre d’un flux de travail défini.

L’application utilise Jakarta WebSocket pour envoyer en temps réel des mises à jour d’état du serveur vers le navigateur, ce qui permet de suivre la progression des agents lorsqu’ils appellent des outils. Plusieurs demandes peuvent également être envoyées simultanément, chaque demande étant traitée indépendamment dans sa propre session Copilot.

Définition et gestion des outils

La bibliothèque fournit l’interface @CopilotTool pour définir les outils que le modèle peut appeler. Le développeur définit une méthode Java ordinaire, tandis que la bibliothèque se charge de créer le schéma JSON, d’analyser les arguments et de distribuer l’appel. @CopilotToolParam peut être utilisé pour décrire chaque argument afin que le modèle connaisse la valeur attendue.

Cette interface fondée sur les annotations est actuellement expérimentale. Il faut donc activer les interfaces expérimentales du SDK avec l’option du compilateur -Acopilot.experimental.allowed=true, tout en enregistrant la bibliothèque dans le chemin des processeurs d’annotations dans la configuration Maven. Le traitement génère les métadonnées des outils pendant la compilation.

Outre les annotations, les outils peuvent être définis directement à l’emplacement de leur utilisation grâce à une expression lambda avec ToolDefinition.from(...). Cela permet de créer un outil sans méthode dédiée. L’option overridesBuiltInTool(true) permet quant à elle de remplacer un outil intégré par un comportement personnalisé. Les outils peuvent également être placés dans des classes distinctes de la logique de l’agent, puis enregistrés avec ToolDefinition.fromObject.

Messages et cycle de travail de l’agent

Le SDK permet de personnaliser le message système avec SystemMessageMode.CUSTOMIZE, en remplaçant certaines sections tout en conservant le reste du message, y compris les garde-fous de sécurité. Il fournit également le mode APPEND pour ajouter du contenu au message système par défaut sans le remplacer.

Le cycle de travail complet de l’agent commence avec sendAndWait(...). Lors de l’envoi de la requête, le modèle peut réfléchir, appeler plusieurs fois les outils enregistrés, puis renvoyer le résultat final, tandis que la bibliothèque transmet les résultats des outils au modèle jusqu’à l’achèvement de la tâche. Les threads virtuels permettent d’attendre avec get() sans mobiliser un thread traditionnel pendant l’attente du résultat. session.on(...) permet également de gérer les événements émis par la session.

Source de l’actualité
c
Auteur

certi.news Editorial Team

À retenir

GitHub a lancé la bibliothèque Copilot SDK for Java, actuellement disponible en version préliminaire, pour aider les applications Java côté serveur à créer des agents Copilot et à gérer leurs sessions et leurs outils par programmation. Elle est disponible en tant que dépendance Maven et prend en charge Jakarta EE, Spring ainsi que l’option BYOK, mais elle nécessite un compte GitHub avec un abonnement Copilot et l’installation de Copilot CLI.

  • La version disponible est 1.0.7-preview.1 et nécessite JDK 17 ou JDK 25, ainsi que Maven 3.9 ou une version ultérieure.
  • Le SDK permet de créer des sessions d’agents, d’envoyer des invites, de recevoir des réponses structurées et d’enregistrer les outils que le modèle peut appeler.
  • La bibliothèque est conçue indépendamment des frameworks Java et prend en charge les environnements Jakarta EE et Spring.
  • Les outils peuvent être définis à l’aide d’annotations telles que @CopilotTool ou via ToolDefinition.from et ToolDefinition.fromObject.
  • L’utilisation des interfaces expérimentales du SDK nécessite d’activer l’option -Acopilot.experimental.allowed=true dans les paramètres du compilateur.
  • Un exemple GitHub présente une application de gestion de demandes immobilières utilisant des agents isolés, des threads virtuels Java et des mises à jour d’état en temps réel via Jakarta WebSocket.

FAQ

Qu’est-ce que GitHub Copilot SDK for Java ?

Il s’agit d’une bibliothèque cliente qui permet aux applications Java côté serveur de piloter des agents Copilot par programmation, notamment en créant des sessions, en enregistrant des outils, en envoyant des invites et en recevant des réponses structurées.

Quels sont les prérequis pour utiliser la bibliothèque ?

Elle nécessite JDK 17 ou JDK 25, Maven 3.9 ou une version ultérieure, un compte GitHub avec un abonnement Copilot actif et l’installation de Copilot CLI en version 1.0.71 ou ultérieure.

La bibliothèque prend-elle en charge des frameworks Java spécifiques ?

La bibliothèque fonctionne dans des environnements côté serveur, notamment Jakarta EE et Spring, tout en étant conçue indépendamment d’un framework Java spécifique.

Est-il possible d’utiliser un fournisseur d’IA qui ne soit pas lié à un seul fournisseur ?

La bibliothèque prend en charge l’option BYOK, que GitHub décrit comme permettant de ne pas être lié à un seul fournisseur d’IA.

Dans la même catégorie

À lire également

Voir toutes les actualités