Model-Driven Quantum Code Generation Using Large Language Models and Retrieval-Augmented Generation
2508.21097v1
cs.SE, cs.AI
2025-09-02
Авторы:
Nazanin Siavash, Armin Moin
Резюме на русском
## Контекст
Область исследования связана с модели-на-текст/код-трансформациями, в которой широко используются Большие Лингвистические Модели (LLMs). Эти модели позволяют автоматизировать генерацию кода на основе моделей, что упрощает процесс разработки программного обеспечения и уменьшает возможные ошибки. На практике LLMs используются в различных доменах, включая генерацию гибридных и квантовых программ. Однако, работа с квантовыми системами становится сложной из-за недостатка квантовых разработчиков и хаотичности современного ландшафта квантовых платформ. Model-driven approaches могут существенно уменьшить эти проблемы, однако необходимо повысить точность и универсальность генерируемого кода. Для этого в статье предлагается использовать Retrieval-Augmented Generation (RAG) пайплайнов, которые могут использоваться в сочетании с LLMs для генерации кода из моделей UML. Работа с квантовыми системами, в частности, с помощью библиотеки Qiskit, демонстрирует возможности нового подхода.
## Метод
Методология основывается на сочетании LLM-моделей с RAG-пайплайнами. Технический подход включает в себя обучение моделей с помощью специально подобранных примеров, включая информацию из GitHub-репозиториев, которые содержат практические примеры работы с Qiskit. Таким образом, модели получают знания о квантовой разработке, способах построения вычислений, и могут генерировать код с учетом контекста. Архитектура предполагает использование LLMs как основного механизма генерации, в том числе для работы с UML-моделями, которые описывают системы. Для тестирования использовался питоновский код, который использует библиотеку Qiskit для выполнения квантовых вычислений. Эта связка позволяет автоматизировать процесс генерирования кода для квантовых и гибридных систем.
## Результаты
В ходе экспериментов были проверены различные варианты выдачи сведений в RAG-пайплайн. Были использованы UML-модели систем, которые были преобразованы в Python-код с помощью Qiskit. Результаты показали, что применение оптимальных приглашений (prompts) увеличивает CodeBLEU-метрику до четырех раз, что демонстрирует улучшение точности и согласованности генерируемого кода. Эта подходность продемонстрирована для генерации квантового кода, но может быть расширена на другие области, включая код-на-код трансформации, например, для транспиляции. Эксперименты показали, что добавление дополнительных сведений из базы знаний (RAG) позволяет повысить качество и производительность генерации.
## Значимость
Предложенный подход может иметь значительное применение в разработке квантового и гибридного программного обеспечения, предоставляя в
Abstract
This paper introduces a novel research direction for model-to-text/code
transformations by leveraging Large Language Models (LLMs) that can be enhanced
with Retrieval-Augmented Generation (RAG) pipelines. The focus is on quantum
and hybrid quantum-classical software systems, where model-driven approaches
can help reduce the costs and mitigate the risks associated with the
heterogeneous platform landscape and lack of developers' skills. We validate
one of the proposed ideas regarding generating code out of UML model instances
of software systems. This Python code uses a well-established library, called
Qiskit, to execute on gate-based or circuit-based quantum computers. The RAG
pipeline that we deploy incorporates sample Qiskit code from public GitHub
repositories. Experimental results show that well-engineered prompts can
improve CodeBLEU scores by up to a factor of four, yielding more accurate and
consistent quantum code. However, the proposed research direction can go beyond
this through further investigation in the future by conducting experiments to
address our other research questions and ideas proposed here, such as deploying
software system model instances as the source of information in the RAG
pipelines, or deploying LLMs for code-to-code transformations, for instance,
for transpilation use cases.
Ссылки и действия
Дополнительные ресурсы: