2025-11-11T13:46:09.477452

Compiler.next: A Search-Based Compiler to Power the AI-Native Future of Software Engineering

Cogo, Oliva, Hassan
The rapid advancement of AI-assisted software engineering has brought transformative potential to the field of software engineering, but existing tools and paradigms remain limited by cognitive overload, inefficient tool integration, and the narrow capabilities of AI copilots. In response, we propose Compiler.next, a novel search-based compiler designed to enable the seamless evolution of AI-native software systems as part of the emerging Software Engineering 3.0 era. Unlike traditional static compilers, Compiler.next takes human-written intents and automatically generates working software by searching for an optimal solution. This process involves dynamic optimization of cognitive architectures and their constituents (e.g., prompts, foundation model configurations, and system parameters) while finding the optimal trade-off between several objectives, such as accuracy, cost, and latency. This paper outlines the architecture of Compiler.next and positions it as a cornerstone in democratizing software development by lowering the technical barrier for non-experts, enabling scalable, adaptable, and reliable AI-powered software. We present a roadmap to address the core challenges in intent compilation, including developing quality programming constructs, effective search heuristics, reproducibility, and interoperability between compilers. Our vision lays the groundwork for fully automated, search-driven software development, fostering faster innovation and more efficient AI-driven systems.
academic

Compiler.next : Un compilateur basé sur la recherche pour alimenter l'avenir natif de l'IA de l'ingénierie logicielle

Informations de base

  • ID de l'article : 2510.24799
  • Titre : Compiler.next: A Search-Based Compiler to Power the AI-Native Future of Software Engineering
  • Auteurs : Filipe R. Cogo (Huawei Canada), Gustavo A. Oliva (Huawei Canada), Ahmed E. Hassan (Queen's University)
  • Classification : cs.SE (Ingénierie logicielle)
  • Date de publication : Octobre 2025 (Manuscrit soumis à ACM)
  • Lien de l'article : https://arxiv.org/abs/2510.24799

Résumé

Cet article propose Compiler.next, un compilateur basé sur la recherche conçu pour soutenir les systèmes logiciels natifs de l'IA à l'ère de l'ingénierie logicielle 3.0. Contrairement aux compilateurs statiques traditionnels, Compiler.next accepte les intentions écrites par l'homme et génère automatiquement des logiciels fonctionnels en recherchant des solutions optimales. Ce processus implique l'optimisation dynamique d'architectures cognitives et de leurs composants (tels que les invites, les configurations de modèles de base et les paramètres système), tout en trouvant un équilibre optimal entre plusieurs objectifs tels que la précision, le coût et la latence. L'article décrit l'architecture de Compiler.next et la positionne comme pierre angulaire pour démocratiser le développement logiciel en réduisant les barrières techniques, permettant des logiciels pilotés par l'IA évolutifs, adaptables et fiables.

Contexte de recherche et motivation

Contexte du problème

  1. Limitations de l'ingénierie logicielle assistée par l'IA existante :
    • Les développeurs font face à une surcharge cognitive
    • Intégration inefficace des outils
    • Capacités limitées des copilotes IA
  2. Évolution du paradigme de l'ingénierie logicielle :
    • SE 1.0 : Ère de la programmation manuelle
    • SE 2.0 : Ère assistée par l'apprentissage automatique
    • SE 3.0 : Ère native de l'IA, collaboration transparente entre humains et IA
  3. Complexité du FMware (logiciel de modèle de base) :
    • Bien plus qu'un simple encapsulage de modèles de base
    • Comprend des composants complexes tels que la configuration, la collecte de données, les systèmes RAG, la validation des données, les outils d'analyse, etc.
    • Nécessite une évolution continue en réponse aux données de rétroaction

Motivation de la recherche

  • Les compilateurs traditionnels sont conçus pour des environnements statiques et ne peuvent pas gérer les exigences d'adaptation en temps réel des systèmes pilotés par l'IA
  • Nécessité d'une nouvelle infrastructure de compilation pour soutenir la transformation des intentions en FMware optimisé
  • Réaliser un véritable développement piloté par l'intention, permettant aux développeurs de se concentrer sur le « quoi » plutôt que le « comment »

Contributions principales

  1. Proposition de l'architecture Compiler.next : Un cadre de compilateur basé sur la recherche capable de compiler les intentions humaines en FMware optimisé
  2. Définition de la représentation des programmes FMware : Combinaisons modulaires incluant Promptware et Agentware
  3. Conception d'un mécanisme d'optimisation multi-objectifs : Optimisation simultanée de la précision, de la latence et du coût et autres objectifs concurrents
  4. Établissement de 10 appels à l'action : Fournir une feuille de route systématique pour le développement des compilateurs SE 3.0
  5. Implémentation d'une preuve de concept : Validation de la faisabilité du système sur l'indice de référence HumanEval-Plus
  6. Fourniture d'un mécanisme de cache sémantique : Amélioration significative de l'efficacité de la compilation et réduction des coûts

Détails de la méthode

Définition de la tâche

Entrée : Intention écrite par l'homme (description en langage naturel des exigences logicielles) Sortie : Programme FMware optimisé (contenant des modèles d'invite, des configurations d'architecture cognitive, des paramètres système, etc.) Contraintes : Optimisation multi-objectifs (compromis entre précision, latence et coût)

Architecture du modèle

1. Composants de la pile technologique

  • Optimiseur d'exploration cognitive : Utilise des techniques telles que l'auto-réflexion pour guider intelligemment le processus de recherche
  • Rédacteur d'invites : Améliore et affine la structure des invites
  • Explorateur d'architecture : Recherche les configurations optimales des paramètres RAG et des modèles d'architecture cognitive
  • Expanseur de scénarios : Étend l'environnement d'optimisation par la synthèse de nouveaux scénarios
  • Optimiseur de recherche : Utilise les trajectoires de compilation historiques pour améliorer l'efficacité de la recherche
  • Runtime de synthèse distribuée : Accélère le processus de synthèse à l'aide de plates-formes distribuées
  • Moteur d'observabilité du synthétiseur : Prend en charge le débogage et la traçabilité

2. Mécanisme de recherche

1. Instanciation des composants FMware → 2. Génération de configuration spécifique → 3. Exécution de l'inférence
     ↑                                                                                    ↓
6. Approximateur heuristique ← 5. Enregistrement de la meilleure configuration ← 4. Estimateur d'erreur

Étapes clés :

  1. Remplissage de modèle : Instanciation des espaces réservés dans les modèles d'invite avec des informations d'instance de problème
  2. Publication de l'inférence FM : Utilisation du FM publié pour exécuter les invites instanciées et générer des candidats de résultat
  3. Évaluation FM : Utilisation du FM d'évaluation pour évaluer la qualité des candidats de résultat
  4. Auto-réflexion (optionnel) : Génération de rétroaction de raisonnement sur la façon d'améliorer le modèle d'invite
  5. Agrégation des scores d'évaluation : Calcul du score d'adaptation global sur plusieurs instances de problème
  6. Sélection de candidats : Sélection de modèles de haute qualité basée sur les scores d'évaluation
  7. Croisement et mutation : Génération de nouveaux candidats par des opérations guidées par FM

3. Modèle conceptuel

  • Operation : Représente un composant du programme FMware, contenant des paramètres statiques et dynamiques
  • Optimizer : Composant enfichable spécifiant comment optimiser les paramètres Operation
  • EvaluationBench : Définit le format des étiquettes de référence et la logique d'évaluation utilisés dans le processus d'optimisation

Points d'innovation technique

  1. Optimisation Pareto multi-objectifs : Utilisation de l'algorithme NSGA-II pour optimiser simultanément les objectifs concurrents, plutôt qu'une simple combinaison pondérée
  2. Mécanisme de cache sémantique : Cache basé sur la similarité d'intégration, équilibrant la vitesse de compilation et l'exploration de l'espace de recherche
  3. Séparation des préoccupations : Séparation entre l'intention (ce qui doit être réalisé) et l'implémentation (invites optimisées et configuration)
  4. Architecture composable : Prend en charge l'optimisation conjointe de plusieurs composants FMware interdépendants

Configuration expérimentale

Ensemble de données

  • HumanEval-Plus : Indice de référence des tâches de programmation Python, incluant les signatures de fonction et les chaînes de documentation
  • Division des données : 70% comme étiquettes de référence pour guider l'optimisation, 30% pour l'évaluation

Métriques d'évaluation

  1. Précision : Proportion de solutions générées passant les tests unitaires
  2. Latence : Temps d'exécution nécessaire pour évaluer les solutions candidates
  3. Coût d'exécution : Nombre de jetons consommés par exécution (entrée + sortie)

Méthodes de comparaison

  • Invite de synthèse initiale vs Invite optimisée
  • Performance de compilation avec cache vs sans cache

Détails d'implémentation

  • Algorithme de recherche : Algorithme génétique multi-objectifs NSGA-II
  • Taille de la population : 10 solutions candidates par tâche
  • Nombre d'itérations : 5 générations
  • Seuil de similarité : 0,85 (distance euclidienne)
  • Modèles testés : Qwen2.5-7B-Instruct et GPT-4o-mini

Résultats expérimentaux

Résultats principaux

ModèleMétriqueInitialOptimiséAmélioration (%)
Qwen2.5-7B-InstructPrécision (%)0,260,5646,4
Latence moyenne (s)14,210,876,6
Nombre moyen de jetons537,1369,368,7
GPT-4o-miniPrécision (%)0,681,0047,0
Latence moyenne (s)8,75,042,5
Nombre moyen de jetons500,0417,116,5

Effet du mécanisme de cache

MétriqueSans cacheAvec cacheDifférence
Précision (%)1,000,70-30%
Latence moyenne (s)5,05,9-18%
Nombre moyen de jetons417,1467,012%
Temps d'exécution total8m:15s10m:27sAccélération de 22,1%

Résultats expérimentaux

  1. Améliorations de performance significatives : Les invites optimisées montrent des améliorations significatives en précision et en efficacité
  2. Compromis du cache : Le cache sémantique réduit considérablement le temps de compilation, mais peut limiter la diversité de la recherche
  3. Adaptabilité du modèle : La méthode est efficace pour les modèles de base de différentes tailles

Travaux connexes

Compilateurs traditionnels

  • GCC, LLVM : Compilation statique, optimisation déterministe
  • Limitations : Incapables de s'adapter aux environnements dynamiques pilotés par l'IA

Compilateurs d'apprentissage profond

  • TVM, XLA, Glow : Concentrés sur les opérations tensorielles et l'optimisation matérielle
  • Limitations : Limités aux architectures de réseaux de neurones prédéfinies, manque de support d'abstraction de haut niveau

Compilateurs d'invites

  • APE : Méthode de synthèse de programmes en langage naturel
  • Promptbreeder : Processus de recherche auto-améliorant
  • EvoPrompt : Optimisation par algorithme évolutionnaire
  • ProTeGi : Simulation de la descente de gradient
  • SAMMO : Représentation symbolique des programmes d'invite
  • DSPy : Optimisation de programmes FMware de bout en bout
  • TextGrad : Optimisation basée sur la rétropropagation

Dix appels à l'action

Représentation des programmes FMware

  1. Établir des constructions de programmation de qualité : Établir des constructions sémantiques pour représenter les programmes FMware
  2. Optimisation FMware de bout en bout : Aller au-delà de l'optimisation isolée des modèles d'invite

Performance informatique

  1. Heuristiques de recherche efficaces : Identifier les caractéristiques d'invite et les paramètres FMware qui influencent la sortie FM
  2. Amélioration de l'efficacité et réduction des coûts : Développer des techniques pour réduire la latence et améliorer le débit de compilation

Vérification des résultats

  1. Construction d'étiquettes de référence : Créer des points de données de haute qualité et indépendants
  2. Estimation de la plage de qualité : Calculer la probabilité que FMware s'exécute dans un seuil de qualité
  3. Compilation reproductible : Réaliser la reproductibilité du processus de compilation

Priorités et objectifs des utilisateurs

  1. Objectifs d'optimisation définis par l'utilisateur : Prendre en charge une optimisation multi-objectifs flexible
  2. Interopérabilité entre compilateurs : Assurer l'interopérabilité entre différents compilateurs
  3. Partage communautaire des trajectoires de compilation : Établir une plateforme de partage des trajectoires de compilation

Conclusion et discussion

Conclusions principales

  1. Compiler.next a réussi à réaliser la compilation automatique des intentions en FMware
  2. L'optimisation multi-objectifs équilibre efficacement la précision, la latence et le coût
  3. Le mécanisme de cache sémantique améliore considérablement l'efficacité de la compilation
  4. Cette approche fournit un nouveau paradigme pour le développement logiciel à l'ère de SE 3.0

Limitations

  1. L'implémentation actuelle se concentre principalement sur les composants Promptware uniques : L'optimisation de FMware complexes multi-composants nécessite des recherches supplémentaires
  2. Dépendance aux étiquettes de référence : Nécessite des ensembles de données d'évaluation de haute qualité, ce qui peut limiter l'applicabilité
  3. Défis de reproductibilité : Le comportement non-déterministe des FM rend la compilation entièrement reproductible difficile
  4. Explosion de l'espace de recherche : Avec l'augmentation du nombre de composants, l'espace de recherche peut devenir difficile à gérer

Directions futures

  1. Stratégies d'optimisation hiérarchiques : Développer des méthodes pour optimiser par étapes les composants FMware complexes
  2. Stratégies de cache adaptatives : Ajuster dynamiquement le seuil de similarité pour équilibrer l'efficacité et la diversité
  3. Interopérabilité inter-frameworks : Établir une représentation intermédiaire FMware standardisée
  4. Mécanismes d'assurance qualité : Développer des méthodes d'évaluation de qualité FMware plus robustes

Évaluation approfondie

Points forts

  1. Innovation forte : Première proposition d'un cadre de compilation d'intention systématique, fournissant une base théorique pour SE 3.0
  2. Valeur pratique élevée : Résout les points douloureux réels du développement FMware avec des perspectives d'application claires
  3. Approche systématique : Fournit non seulement une solution technique, mais aussi une feuille de route complète de recherche et développement
  4. Validation suffisante : Démontre la faisabilité et l'efficacité de la méthode par preuve de concept
  5. Rédaction claire : Structure d'article claire, descriptions techniques détaillées, faciles à comprendre et à reproduire

Insuffisances

  1. Portée d'évaluation limitée : Validation uniquement sur les tâches de génération de code, manque d'évaluation sur d'autres types de tâches
  2. Scalabilité inconnue : La capacité à traiter les systèmes FMware à grande échelle et complexes n'a pas été vérifiée
  3. Analyse des coûts insuffisante : Bien que l'optimisation des coûts soit mentionnée, l'analyse coûts-avantages détaillée fait défaut
  4. Intégration avec les outils existants : Discussion insuffisante sur l'intégration avec les chaînes d'outils de développement existantes

Impact

  1. Contribution académique : Introduit une nouvelle direction de recherche et un cadre théorique pour le domaine de l'ingénierie logicielle
  2. Valeur industrielle : Susceptible de promouvoir le développement d'outils de développement logiciel natifs de l'IA
  3. Promotion de la normalisation : Peut faciliter l'établissement de normes et de meilleures pratiques pour le développement FMware
  4. Construction communautaire : Les dix appels à l'action fournissent un agenda de recherche clair pour la communauté de recherche

Scénarios d'application

  1. Développement d'applications natives de l'IA : Particulièrement adapté aux applications nécessitant une ingénierie d'invite importante
  2. Plates-formes low-code/no-code : Fournit des capacités de développement logiciel aux non-techniciens
  3. Développement rapide de prototypes : Prend en charge la transformation rapide des idées en logiciels fonctionnels
  4. Maintenance et optimisation FMware : Aide à l'optimisation continue et à l'évolution des systèmes FMware existants

Références

L'article contient 94 références couvrant plusieurs domaines tels que l'ingénierie logicielle, l'apprentissage automatique, la conception de compilateurs et les algorithmes de recherche, fournissant une base théorique solide pour la recherche.


Évaluation globale : Cet article est un excellent travail avant-gardiste et systématique qui non seulement propose une solution technique innovante, mais fournit également une vision claire et une feuille de route pour le développement futur de l'ingénierie logicielle. Bien que certains aspects nécessitent un perfectionnement supplémentaire, ses idées fondamentales et sa conception de cadre ouvrent de nouvelles possibilités pour la pratique de l'ingénierie logicielle à l'ère de l'IA.