Les chercheurs d'Apple ont publié des détails sur un outil expérimental basé sur l'IA appelé SQUIRE, qui aide les développeurs à explorer et à développer des idées d'interface avec plus de contrôle. Voici les détails.

Une approche intéressante pour le prototypage d'interface assisté par IA

Dans un nouvel article intitulé "SQUIRE : Écriture d'UI interactive via Slot QUery Intermediate REpresentations", un groupe de développeurs d'Apple propose une manière innovante d'aborder les interfaces générées par l'IA.

Les chercheurs expliquent que le langage naturel apporte plus de flexibilité à de nombreux aspects du processus de développement, mais cela entraîne également deux principaux défis :

Tout d'abord, le langage naturel peut être ambigu en soi, ce qui rend difficile pour les développeurs de communiquer exactement leurs intentions. Deuxièmement, le modèle peut répondre de manière imprévisible, ce qui oblige le développeur à demander à nouveau par essais et erreurs pour corriger des modifications indésirables.

C'est là que SQUIRE entre en jeu. C'est une interface visuelle qui permet aux développeurs de créer et de développer des prototypes d'UI étape par étape, offrant un meilleur contrôle sur les résultats.

Extrait de l'étude :

Dans SQUIRE, les utilisateurs commencent un projet en fournissant une requête qui définit leurs objectifs pour l'UI et ajoutent des données d'exemple contenant des informations que SQUIRE peut utiliser comme référence. Les utilisateurs guident SQUIRE pour remplir les lacunes représentant des fonctionnalités manquantes mais attendues, construisant l'UI comme un arbre de composants de haut en bas. En réponse à une telle demande, SQUIRE génère une liste d'alternatives appropriées spécifiquement contextualisées pour l'espace cible dans l'UI incomplète. Cliquer sur chacune des alternatives facilite la visualisation des différences en mettant à jour instantanément un aperçu en direct et le code de base. L'utilisateur peut également faire des demandes ciblées pour modifier l'apparence de certaines zones de l'UI, avec la garantie qu'aucun code en dehors de la portée souhaitée ne sera modifié. En réponse à une telle demande, SQUIRE produit des contrôles temporaires permettant à l'utilisateur d'appliquer rapidement des modifications sémantiquement liées sans nécessiter de nouvelle demande. Dans tous les cas, le LLM agit comme un partenaire, proposant des choix raisonnables pour l'évaluation de l'utilisateur, mais laissant à l'utilisateur le pouvoir d'accepter ou de rejeter ses suggestions.

En d'autres termes, les requêtes en langage naturel étaient toujours la voie par laquelle les développeurs interagissaient avec SQUIRE, mais chaque requête était liée à une partie spécifique de l'UI et n'affectait pas l'ensemble de l'interface à la fois.

Basé sur des observations avec 11 développeurs front-end utilisant SQUIRE pour développer des prototypes d'interface, les chercheurs ont trouvé que les participants pouvaient explorer et itérer différents designs d'UI avec un fort sentiment de contrôle, et ils ont également évalué le système avec un score élevé en termes d'utilisabilité et de satisfaction générale.

De plus, ils notent que ce sentiment de contrôle supplémentaire permettait aux développeurs de se sentir plus à l'aise pour explorer des façons dont les modifications pouvaient être effectuées, anticipées et annulées facilement.

Encore une fois, extrait de l'étude :

À travers les données recueillies auprès de 11 développeurs front-end, nous notons que (1) les interactions avec SQUIRE incitaient souvent les participants à explorer, qu'ils ne l'utilisaient pas seulement comme un accélérateur de code, (2) les participants étaient encouragés à prendre des risques lors de la réalisation de modifications, sachant que les conséquences de décisions inhabituelles pouvaient toujours être annulées sans friction, (3) les participants avaient confiance que SQUIRE répondait à leurs intentions lors de la réalisation de modifications, et (4) les participants étaient généralement satisfaits de la qualité du code et des visuels générés par le système.

La structure interne de SQUIRE

Au lieu de générer directement le code de l'interface à partir des requêtes des utilisateurs, SQUIRE crée d'abord sa propre représentation intermédiaire de l'interface, appelée SquireIR, en modélisant l'UI comme un arbre de composants avec des espaces nommés pouvant être remplis au fil du temps, comme dans l'exemple ci-dessous :

Cette structure peut également inclure des espaces réservés pour des parties encore non définies (par exemple, une étiquette de bouton, une image ou une section de contenu) et plusieurs alternatives possibles d'UI. Par exemple, elle peut représenter le même contenu sous forme de liste ou de grille.

Ensuite, SQUIRE traduit cette représentation en code utilisant HTML, CSS et JavaScript, et gère la structure finale de l'UI via les Web Components.

Un autre aspect important de SQUIRE est la manière dont il gère les modifications.

Lorsqu'un développeur souhaite ajuster un bouton ou modifier une mise en page, seule cette partie est mise à jour, tout le reste reste inchangé.

Selon les chercheurs, cela aide à éviter les boucles d'essai-erreur souvent rencontrées dans de nombreux outils de codage IA ; en raison de l'imprévisibilité générale des LLM, le modèle peut apporter plus de modifications que ce que le développeur avait prévu.

Cette structure permet également à SQUIRE de proposer plusieurs options à chaque étape, permettant ainsi aux développeurs de comparer rapidement différentes versions sans perdre leur travail précédent.

Contrairement à de nombreux articles techniques, cette étude ne fournit pas de détails sur l'entraînement du modèle, son architecture ou ses données. Bien que les chercheurs indiquent que SQUIRE fonctionne avec le GPT-4o d'OpenAI, le point focal de l'article est la conception du système et le modèle d'interaction.

SQUIRE n'est généralement pas disponible et son utilisation est limitée aux 11 développeurs ayant participé à l'étude. Cependant, il n'est pas difficile d'imaginer comment cela pourrait être intégré dans de futures versions de Xcode ou d'autres outils de développement fabriqués par Apple.

Pour en savoir plus sur SQUIRE, vous pouvez suivre ce lien.

Produits à vérifier sur Amazon

  • David Pogue – 'Apple : Les 50 premières années'
  • MacBook Neo
  • Logitech MX Master 4
  • AirPods Pro 3
  • AirTag (2e génération) – Pack de 4
  • Apple Watch Series 11
  • Adaptateur CarPlay sans fil