Récemment, Microsoft a lancé un nouveau langage de balisage pour l'orchestration des prompts (POML, Prompt Orchestration Markup Language), conçu spécifiquement pour l'ingénierie des prompts des grands modèles linguistiques (LLMs). Selon les informations rassemblées par AIbase sur le web, le POML vise à résoudre les problèmes persistants du développement traditionnel des prompts, en améliorant l'efficacité du développement d'applications IA grâce à une approche structurée et maintenable. Cependant, cette nouvelle langue est-elle simplement une version "revue" d'XML, et sa complexité ne risque-t-elle pas d'atténuer son utilité ? Cette question a suscité un débat au sein de la communauté.

Fonctionnalités principales du POML : L'ingénierie des prompts structurée  

Le POML utilise une syntaxe similaire à HTML, en utilisant des composants sémantiques tels que `<role>`, `<task>` et `<example>`, pour décomposer les prompts complexes en parties modulaires, améliorant ainsi la lisibilité, la réutilisabilité et la maintenance des prompts. Microsoft affirme que le POML résout les problèmes liés au manque de structure, à la complexité de l'intégration des données, aux sensibilités aux formats et à l'insuffisance des outils dans l'ingénierie des prompts traditionnels. Les développeurs peuvent organiser de manière systématique les composants des prompts avec le POML, intégrer facilement divers types de données (texte, tableaux, images) et ajuster flexiblement le format de sortie via un système de style similaire à CSS, réduisant ainsi l'instabilité du modèle causée par les changements de format.

Microsoft propose à nouveau un nouveau langage de balisage pour l'IA - POML : Prompt Orchestration Markup Language, honnêtement, quelle différence y a-t-il avec XML ? (voir.jpg

Support d'outils puissants : Extension VS Code et SDK  

Le POML n'est pas seulement un langage de balisage, mais il dispose également d'une écosystème d'outils de développement puissants. Son extension Visual Studio Code offre des fonctionnalités telles que la mise en évidence syntaxique, la complétion contextuelle intelligente, la prévisualisation en temps réel et le diagnostic d'erreurs, ce qui améliore significativement l'expérience de développement. De plus, le POML prend en charge les SDK pour Node.js et Python, permettant aux développeurs d'intégrer facilement l'ingénierie des prompts à leurs flux de travail existants et à leurs cadres de LLM. Par exemple, un exemple simple de POML peut utiliser le composant `<img>` pour référencer une image, combiner `<task>` et `<output-format>` pour définir une tâche et les exigences de sortie, générant ainsi rapidement un prompt structuré.

Réactions de la communauté : Innovation ou « copie d'XML » ?  

Malgré le lancement du POML, les avis de la communauté sont contrastés. Certains développeurs reconnaissent la conception structurée du POML, estimant que sa méthode modulaire et son moteur de modèles (supportant les variables, les boucles et les instructions conditionnelles) simplifient le développement des prompts complexes. Cependant, certaines voix soulèvent des doutes sur la similarité du POML avec XML, affirmant que sa syntaxe complexe pourrait rendre l'ingénierie des prompts ressembler à « écrire du code », augmentant ainsi le coût d'apprentissage. Certains développeurs affirment même que, avec le développement de l'IA agente et des appels d'outils, la sensibilité des LLM aux formats de prompts a diminué, rendant la nécessité du POML discutable.

Applications et potentiel futur