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: Поисковый компилятор для поддержки AI-ориентированного будущего разработки программного обеспечения

Основная информация

  • ID статьи: 2510.24799
  • Название: Compiler.next: A Search-Based Compiler to Power the AI-Native Future of Software Engineering
  • Авторы: Filipe R. Cogo (Huawei Canada), Gustavo A. Oliva (Huawei Canada), Ahmed E. Hassan (Queen's University)
  • Категория: cs.SE (Разработка программного обеспечения)
  • Дата публикации: Октябрь 2025 (рукопись, представленная в ACM)
  • Ссылка на статью: https://arxiv.org/abs/2510.24799

Аннотация

В данной статье предлагается Compiler.next — поисковый компилятор, предназначенный для поддержки AI-ориентированных программных систем эпохи Software Engineering 3.0. В отличие от традиционных статических компиляторов, Compiler.next принимает намерения, написанные человеком, и автоматически генерирует работающее программное обеспечение путём поиска оптимальных решений. Этот процесс включает динамическую оптимизацию когнитивной архитектуры и её компонентов (таких как подсказки, конфигурация базовых моделей и системные параметры), одновременно находя оптимальный компромисс между несколькими целями: точностью, стоимостью и задержкой. В статье описывается архитектура Compiler.next и позиционируется как краеугольный камень демократизации разработки программного обеспечения путём снижения технических барьеров, обеспечивая масштабируемое, адаптивное и надёжное AI-управляемое программное обеспечение.

Исследовательский контекст и мотивация

Проблемный фон

  1. Ограничения существующей AI-ориентированной разработки ПО:
    • Разработчики сталкиваются с когнитивной перегрузкой
    • Низкая эффективность интеграции инструментов
    • Узкие возможности AI-помощников
  2. Эволюция парадигм разработки программного обеспечения:
    • SE 1.0: эпоха ручного программирования
    • SE 2.0: эпоха поддержки машинным обучением
    • SE 3.0: AI-ориентированная эпоха, бесшовное сотрудничество человека и AI
  3. Сложность FMware (программного обеспечения на основе базовых моделей):
    • Не просто инкапсуляция базовой модели
    • Включает сложные компоненты: конфигурацию, сбор данных, системы RAG, валидацию данных, аналитические инструменты
    • Требует постоянной эволюции в ответ на обратную связь

Исследовательская мотивация

  • Традиционные компиляторы разработаны для статических сред и не могут обрабатывать требования реального времени AI-управляемых систем
  • Необходима новая инфраструктура компилятора для поддержки преобразования от намерения к оптимизированному FMware
  • Реализация истинной разработки, управляемой намерением, позволяющей разработчикам сосредоточиться на "что делать", а не на "как делать"

Основные вклады

  1. Предложена архитектура Compiler.next: поисковая структура компилятора, способная компилировать человеческие намерения в оптимизированный FMware
  2. Определено представление FMware-программ: модульная комбинация Promptware и Agentware
  3. Разработан механизм многоцелевой оптимизации: одновременная оптимизация конкурирующих целей: точности, задержки и стоимости
  4. Установлены 10 призывов к действию: систематическая дорожная карта для разработки компиляторов SE 3.0
  5. Реализована концептуальная демонстрация: проверка осуществимости системы на эталоне HumanEval-Plus
  6. Предоставлен механизм семантического кеширования: значительное повышение эффективности компиляции и снижение затрат

Подробное описание методологии

Определение задачи

Входные данные: намерения, написанные человеком (описание требований ПО на естественном языке) Выходные данные: оптимизированная FMware-программа (содержащая шаблоны подсказок, конфигурацию когнитивной архитектуры, системные параметры) Ограничения: многоцелевая оптимизация (компромисс между точностью, задержкой и стоимостью)

Архитектура модели

1. Компоненты технического стека

  • Оптимизатор когнитивного исследования: использует методы саморефлексии для интеллектуального управления процессом поиска
  • Переписыватель подсказок: улучшение и уточнение структуры подсказок
  • Исследователь архитектуры: поиск оптимальной конфигурации параметров RAG и паттернов когнитивной архитектуры
  • Расширитель сценариев: расширение оптимизационной среды путём синтеза новых сценариев
  • Оптимизатор поиска: повышение эффективности поиска с использованием исторических траекторий компиляции
  • Распределённое синтезирующее время выполнения: ускорение процесса синтеза с использованием распределённых платформ
  • Механизм наблюдаемости синтезатора: поддержка отладки и отслеживаемости

2. Механизм поиска

1. Инстанцирование компонентов FMware → 2. Генерация специфической конфигурации → 3. Выполнение вывода
     ↑                                                                                    ↓
6. Приблизительный эвристический модуль ← 5. Запись лучшей конфигурации ← 4. Оценщик ошибок

Ключевые этапы:

  1. Заполнение шаблона: инстанцирование заполнителей в шаблонах подсказок информацией об экземпляре задачи
  2. Публикация вывода FM: использование FM для выполнения инстанцированной подсказки и генерирования кандидатов результатов
  3. Оценка FM: использование оценивающей FM для оценки качества кандидатов результатов
  4. Саморефлексия (опционально): генерирование рассуждений о том, как улучшить шаблон подсказки
  5. Агрегирование оценок: вычисление общего балла пригодности по нескольким экземплярам задач
  6. Выбор кандидата: выбор высококачественных шаблонов на основе оценок
  7. Кроссовер и мутация: генерирование новых кандидатов через FM-управляемые операции

3. Концептуальная модель

  • Operation: представляет компонент FMware-программы, содержит статические и динамические параметры
  • Optimizer: подключаемый компонент, определяющий способ оптимизации параметров Operation
  • EvaluationBench: определяет формат золотых стандартов и логику оценки, используемые в процессе оптимизации

Технические инновации

  1. Многоцелевая оптимизация Парето: использование алгоритма NSGA-II для одновременной оптимизации конкурирующих целей вместо простого взвешенного комбинирования
  2. Механизм семантического кеширования: кеширование на основе сходства встраиваний, балансирующее скорость компиляции и исследование пространства поиска
  3. Разделение забот: отделение намерения (что реализовать) от реализации (оптимизированные подсказки и конфигурация)
  4. Композиционная архитектура: поддержка совместной оптимизации нескольких взаимозависимых компонентов FMware

Экспериментальная установка

Наборы данных

  • HumanEval-Plus: эталон задач программирования на Python, включающий сигнатуры функций и строки документации
  • Разделение данных: 70% в качестве золотых стандартов для руководства оптимизацией, 30% для оценки

Метрики оценки

  1. Точность: доля сгенерированных решений, прошедших модульные тесты
  2. Задержка: время выполнения, необходимое для оценки кандидатов решений
  3. Стоимость выполнения: количество токенов, потребляемых при каждом запуске (входные + выходные)

Методы сравнения

  • Исходная синтезированная подсказка vs оптимизированная подсказка
  • Производительность компиляции с кешированием vs без кеширования

Детали реализации

  • Алгоритм поиска: многоцелевой генетический алгоритм NSGA-II
  • Размер популяции: 10 кандидатов решений на задачу
  • Количество итераций: 5 поколений
  • Порог сходства: 0.85 (евклидово расстояние)
  • Тестовые модели: Qwen2.5-7B-Instruct и GPT-4o-mini

Результаты экспериментов

Основные результаты

МодельМетрикаИсходнаяОптимизированнаяУлучшение (%)
Qwen2.5-7B-InstructТочность (%)0.260.5646.4
Средняя задержка (с)14.210.876.6
Среднее количество токенов537.1369.368.7
GPT-4o-miniТочность (%)0.681.0047.0
Средняя задержка (с)8.75.042.5
Среднее количество токенов500.0417.116.5

Эффект механизма кеширования

МетрикаБез кешированияС кешированиемРазница
Точность (%)1.000.70-30%
Средняя задержка (с)5.05.9-18%
Среднее количество токенов417.1467.012%
Общее время выполнения8м:15с10м:27сускорение на 22.1%

Экспериментальные выводы

  1. Значительное повышение производительности: оптимизированные подсказки демонстрируют значительные улучшения как в точности, так и в эффективности
  2. Компромисс кеширования: семантическое кеширование может значительно сократить время компиляции, но может ограничить разнообразие поиска
  3. Адаптивность модели: метод эффективен для базовых моделей различных размеров

Связанные работы

Традиционные компиляторы

  • GCC, LLVM: статическая компиляция, детерминированная оптимизация
  • Ограничения: неспособность адаптироваться к динамическим AI-управляемым средам

Компиляторы глубокого обучения

  • TVM, XLA, Glow: сосредоточены на тензорных операциях и оптимизации оборудования
  • Ограничения: ограничены предопределёнными архитектурами нейронных сетей, отсутствует поддержка высокоуровневых абстракций

Компиляторы подсказок

  • APE: метод синтеза программ на естественном языке
  • Promptbreeder: процесс самосовершенствующегося поиска
  • EvoPrompt: оптимизация подсказок с использованием эволюционных алгоритмов
  • ProTeGi: моделирование градиентного спуска для оптимизации
  • SAMMO: символическое представление подсказок программ
  • DSPy: сквозная оптимизация FMware-программ
  • TextGrad: оптимизация на основе обратного распространения

Десять призывов к действию

Представление FMware-программ

  1. Установление качественных конструкций программирования: создание семантических конструкций для представления FMware-программ
  2. Сквозная оптимизация FMware: выход за рамки оптимизации отдельных шаблонов подсказок

Вычислительная производительность

  1. Эффективные эвристики поиска: определение характеристик подсказок и параметров FMware, влияющих на выход FM
  2. Повышение эффективности и снижение затрат: разработка методов снижения задержки и повышения пропускной способности компиляции

Проверка результатов

  1. Построение золотых стандартов: создание высококачественных, независимых точек данных
  2. Оценка диапазона качества: вычисление вероятности выполнения FMware в пределах порогов качества
  3. Воспроизводимая компиляция: обеспечение воспроизводимости процесса компиляции

Приоритеты и цели пользователей

  1. Определяемые пользователем цели оптимизации: поддержка гибкой многоцелевой оптимизации
  2. Взаимодействие между компиляторами: обеспечение взаимодействия между различными компиляторами
  3. Совместное использование траекторий компиляции в сообществе: создание платформы для совместного использования траекторий компиляции

Заключение и обсуждение

Основные выводы

  1. Compiler.next успешно реализовал автоматическую компиляцию от намерения к FMware
  2. Многоцелевая оптимизация эффективно балансирует точность, задержку и стоимость
  3. Механизм семантического кеширования значительно повышает эффективность компиляции
  4. Метод предоставляет новую парадигму разработки ПО для эпохи SE 3.0

Ограничения

  1. Текущая реализация в основном ориентирована на отдельные компоненты Promptware: оптимизация сложных многокомпонентных FMware требует дальнейших исследований
  2. Зависимость от золотых стандартов: требуется высококачественный набор данных оценки, что может ограничить применимость
  3. Вызовы воспроизводимости: недетерминированное поведение FM делает полностью воспроизводимую компиляцию сложной
  4. Взрыв пространства поиска: с увеличением количества компонентов пространство поиска может стать неуправляемым

Направления будущих исследований

  1. Иерархические стратегии оптимизации: разработка методов поэтапной оптимизации сложных компонентов FMware
  2. Адаптивные стратегии кеширования: динамическая регулировка порога сходства для балансирования эффективности и разнообразия
  3. Кроссплатформенная взаимодействие: установление стандартизированного промежуточного представления FMware
  4. Механизмы обеспечения качества: разработка более надёжных методов оценки качества FMware

Глубокая оценка

Преимущества

  1. Высокая инновационность: впервые предложена систематическая структура компиляции намерений, обеспечивающая теоретическую основу для SE 3.0
  2. Высокая практическая ценность: решает реальные проблемы в разработке FMware с чёткими перспективами применения
  3. Высокая системность: не только предлагает техническое решение, но и предоставляет полную дорожную карту исследований и разработок
  4. Достаточная проверка: концептуальная демонстрация демонстрирует осуществимость и эффективность метода
  5. Ясное изложение: статья хорошо структурирована, технические описания детальны, легко понять и воспроизвести

Недостатки

  1. Ограниченный объём оценки: проверка проведена только на задачах генерации кода, отсутствует оценка на других типах задач
  2. Неизвестная масштабируемость: способность обработки крупномасштабных, сложных систем FMware ещё не проверена
  3. Недостаточный анализ затрат: хотя упоминается оптимизация затрат, отсутствует детальный анализ затрат и выгод
  4. Интеграция с существующими инструментами: обсуждение интеграции с существующей цепочкой инструментов разработки недостаточно глубоко

Влияние

  1. Академический вклад: вводит новое направление исследований и теоретическую структуру в область разработки ПО
  2. Промышленная ценность: может способствовать развитию инструментов разработки AI-ориентированного ПО
  3. Продвижение стандартизации: может способствовать установлению стандартов и лучших практик разработки FMware
  4. Построение сообщества: десять призывов к действию предоставляют исследовательскому сообществу чёткую повестку дня

Применимые сценарии

  1. Разработка AI-ориентированных приложений: особенно подходит для приложений, требующих значительной инженерии подсказок
  2. Платформы низкокодовой/бескодовой разработки: предоставляет возможности разработки ПО для нетехнических пользователей
  3. Быстрая разработка прототипов: поддерживает быстрое преобразование идей в работающее ПО
  4. Оптимизация и поддержка FMware: помогает в постоянной оптимизации и эволюции существующих систем FMware

Библиография

Статья содержит 94 ссылки, охватывающие важные работы в области разработки ПО, машинного обучения, проектирования компиляторов, алгоритмов поиска и других областей, обеспечивая прочную теоретическую основу для исследования.


Общая оценка: это отличная статья с дальновидным и систематическим подходом, которая не только предлагает инновационное техническое решение, но, что более важно, предоставляет чёткое видение и дорожную карту для будущего развития разработки ПО. Хотя в некоторых аспектах требуется дальнейшее совершенствование, её основные идеи и проектирование структуры открывают новые возможности для практики разработки ПО в эпоху AI.