Porting Declarative UI to HarmonyOS: A Heuristic-guided LLM Approach
Cet article présente ArkTrans, une approche de type LLM guidée par heuristiques qui traduit automatiquement le code d'interface utilisateur déclaratif d'Android et d'iOS vers l'ArkUI de HarmonyOS en construisant des squelettes spécifiques au langage et en appliquant des règles de post-fixation, atteignant jusqu'à 90,67 % de réussite de compilation avec une haute fidélité visuelle par rapport aux méthodes de prompting direct.
Article original placé dans le domaine public sous CC0 1.0 (http://creativecommons.org/publicdomain/zero/1.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que vous possédez une magnifique maison décorée, construite avec Kotlin Jetpack Compose (le style utilisé pour les applications Android modernes) ou SwiftUI (le style utilisé pour les applications iPhone modernes). Maintenant, vous voulez déménager cette maison dans un tout nouveau quartier appelé HarmonyOS, qui utilise un style architectural complètement différent appelé ArkUI.
Le problème ? Les ouvriers de construction (dans ce cas, les modèles d'IA ou « Large Language Models ») n'ont jamais construit de maison dans le quartier HarmonyOS. Si vous leur dites simplement : « Copiez cette maison par-dessus », ils sont confus. Ils essaient d'utiliser des outils Android ou iOS dans la zone HarmonyOS, ce qui donne un bâtiment qui ressemble à un désordre chaotique de briques dépareillées et qui ne pourra même pas tenir debout (il ne compilera pas).
Ce document présente un nouvel outil appelé ArkTrans pour résoudre ce problème. Voyez ArkTrans non pas comme un bouton magique de copier-coller, mais comme un chef de chantier intelligent qui guide l'IA à travers un processus de construction en quatre étapes.
Le plan de construction en quatre étapes
1. Le scan du plan (Extraction de métadonnées)
D'abord, ArkTrans ne se contente pas de regarder la maison finie ; il scanne les plans originaux. Il décompose la maison en une liste logique de pièces : « Voici une porte, voici une fenêtre, voici un mur, et ce mur est fait de briques rouges. » Il crée une liste propre et organisée (un « arbre d'interface utilisateur » ou UI tree) qui ignore le jargon de construction confus spécifique à Android ou iOS.
2. La construction du squelette (Construction du squelette)
Ensuite, au lieu de demander à l'IA de construire toute la maison à partir de zéro, ArkTrans construit un squelette. Il prend la liste des pièces et assemble une structure de base en utilisant les règles de HarmonyOS.
- Analogie : Imaginez que l'IA est un peintre. ArkTrans lui remet un cadre en bois pré-construit avec les murs déjà à la bonne place. L'IA n'a plus qu'à ajouter les détails (peinture, textures, décorations) plutôt que de chercher où placer les murs. Cela empêche l'IA de s'égarer.
3. La peinture guidée (Traduction pilotée par l'IA/LLM)
Maintenant, l'IA intervient pour ajouter les détails. Parce qu'elle possède le squelette et une « fiche de triche » spécifique (un exemple en un coup d'œil montrant comment traduire une partie précise), elle sait exactement comment peindre les murs et accrocher les portes en utilisant les règles de HarmonyOS. C'est comme donner au peintre un échantillon de la bonne couleur de peinture et une photo de la pièce terminée pour qu'il puisse la copier.
4. L'inspection de sécurité (Correction post-traitement)
Même avec un squelette et un guide, l'IA peut commettre de petites erreurs, comme utiliser une vis destinée au bois sur une poutre métallique, ou oublier de serrer un boulon. ArkTrans effectue une inspection automatisée finale. Il dispose d'une liste de contrôle des erreurs courantes (comme « N'utilisez pas cette commande Android spécifique ici ») et corrige automatiquement les erreurs avant que la maison ne soit livrée.
Les résultats : Est-ce que cela fonctionne ?
Les chercheurs ont testé cela en essayant de déplacer 100 « pièces » (pages d'interface utilisateur) différentes d'Android et d'iOS vers HarmonyOS.
- Sans ArkTrans : S'ils demandaient simplement à l'IA de « traduire » directement le code, 0 % des pièces étaient constructibles. L'IA restait bloquée, et le code était truffé d'erreurs. C'était comme essayer de construire une maison avec les mauvais outils ; rien ne fonctionnait.
- Avec ArkTrans : Le taux de réussite a grimpé en flèche.
- Pour les transferts d'Android vers HarmonyOS, 90,67 % des pièces ont été construites avec succès et ont pu tenir debout.
- Pour les transferts d'iOS vers HarmonyOS, 53,33 % ont été réussis.
- Non seulement elles tenaient debout, mais elles ressemblaient également beaucoup aux pièces originales (haute fidélité visuelle).
La conclusion clé
Le document affirme que le principal obstacle n'est pas seulement que l'IA est « stupide » ; c'est que l'IA est peu familière avec les nouvelles règles et a tendance à faire du copier-coller d'anciennes règles qui ne fonctionnent plus.
ArkTrans fonctionne parce qu'il ne repose pas uniquement sur la mémoire de l'IA. Au lieu de cela, il :
- Impose une structure (en construisant d'abord le squelette).
- Fournit des exemples (pour que l'IA connaisse le nouveau style).
- Nettoie les erreurs (en corrigeant automatiquement les erreurs courantes).
En résumé, ArkTrans transforme une tâche de traduction chaotique et impossible en un projet de construction guidé, étape par étape, transférant avec succès des « maisons » numériques d'un système d'exploitation à un autre.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.