Saltar al contenido principal

Qiskit Code Assistant

Qiskit Code Assistant tiene como objetivo hacer la computación cuántica más accesible para los nuevos usuarios de Qiskit y mejorar la experiencia de programación para los usuarios actuales. Es un asistente de código de IA generativa impulsado por watsonx. Ha sido entrenado con millones de tokens de texto del SDK de Qiskit, años de ejemplos de código Qiskit y características de IBM Quantum®. Qiskit Code Assistant puede ayudar en tu flujo de trabajo de desarrollo cuántico ofreciendo sugerencias generadas por LLM basadas en modelos IBM Granite, que incorporan las últimas características y funcionalidades de IBM®.

Notas
  • Esta es una función experimental disponible para los usuarios del Plan Premium de IBM Quantum registrados en la nueva IBM Quantum Platform.
  • Qiskit Code Assistant está en estado de versión preliminar y está sujeto a cambios.
  • Si tienes comentarios o deseas contactar con el equipo de desarrollo, usa el canal de Qiskit en Slack Workspace o los repositorios públicos de GitHub relacionados.

Características

Las siguientes características están incluidas en las extensiones para Visual Studio Code (VS Code) y editores compatibles, así como para JupyterLab:

  • Acelera la generación de código Qiskit aprovechando la IA generativa basada en modelos especializados en generar código Qiskit.
  • Permite prompts abstractos y específicos para generar recomendaciones.
  • Presenta sugerencias que puedes revisar, aceptar o rechazar.
  • Compatible con archivos de código Python y cuadernos Jupyter.
  • Incluye mecanismos de protección para evitar responder preguntas que representen un riesgo potencial para los usuarios, como el discurso de odio.

Para obtener instrucciones sobre cómo integrar Qiskit Code Assistant directamente en tu entorno de desarrollo, sigue las instrucciones en el tema correspondiente:

El modelo de lenguaje grande (LLM) detrás de Qiskit Code Assistant

Para proporcionar sugerencias de código, Qiskit Code Assistant utiliza un modelo de lenguaje grande (LLM). En este caso, Qiskit Code Assistant actualmente se apoya en el modelo mistral-small-3.2-24b-qiskit, construido sobre el modelo Mistral-Small-3.2-24B-Qiskit. El modelo mistral-small-3.2-24b-qiskit mejora las capacidades de generación de código para Qiskit del modelo Mistral-Small-3.2-24B-Instruct-2506 mediante preentrenamiento extendido y ajuste fino con datos de Qiskit de alta calidad, así como confirmaciones de Python y chat. Para más información sobre la familia de modelos Mistral AI, consulta la documentación de Mistral AI. Para más detalles sobre los modelos .*-qiskit, consulta Qiskit Code Assistant: Training LLMs for generating Quantum Computing Code.

Nuestros LLMs especializados para Qiskit también están disponibles como modelos de código abierto. Consulta todos los modelos disponibles en https://huggingface.co/Qiskit.

Los benchmarks Qiskit HumanEval y Qiskit HumanEval Hard

Para probar mistral-small-3.2-24b-qiskit y otros modelos, colaboramos con Qiskit Advocates y expertos para crear los benchmarks basados en ejecución llamados Qiskit HumanEval (QHE) y Qiskit HumanEval Hard (QHE Hard), y los ejecutamos sobre los modelos. Estos benchmarks son similares a HumanEval, e incluyen múltiples problemas de código desafiantes a resolver, todos basados en las bibliotecas oficiales de Qiskit.

Los benchmarks están compuestos por aproximadamente 150 pruebas, cada una elaborada a partir de una definición de función seguida de un docstring que detalla la tarea que el modelo debe resolver. Cada ejemplo también incluye una solución canónica de referencia, así como pruebas unitarias para evaluar la corrección de las soluciones generadas. Hay tres niveles de dificultad para las pruebas: básico, intermedio y difícil. El benchmark Qiskit HumanEval Hard es una variación del Qiskit HumanEval, pero elimina la información relacionada con las importaciones de código, por lo que el LLM debe determinar las importaciones correctas de métodos o clases. Este cambio hace que el dataset sea mucho más desafiante para los LLMs, según nuestras pruebas y resultados iniciales.

Los datasets de Qiskit HumanEval y Qiskit HumanEval Hard están disponibles en estos sitios web: Qiskit HumanEval y Qiskit HumanEval. Puedes contribuir al desarrollo de estos benchmarks en el repositorio de GitHub.

Más información y citas

Para obtener más información sobre Qiskit Code Assistant, los benchmarks Qiskit HumanEval o Qiskit HumanEval Hard, y citarlos en tus publicaciones científicas, revisa estas citas recomendadas:

@misc{2405.19495,
Author = {Nicolas Dupuis and Luca Buratti and Sanjay Vishwakarma and Aitana Viudes Forrat and David Kremer and Ismael Faro and Ruchir Puri and Juan Cruz-Benito},
Title = {Qiskit Code Assistant: Training LLMs for generating Quantum Computing Code},
Year = {2024},
Eprint = {arXiv:2405.19495},
}
@misc{2406.14712,
Author = {Sanjay Vishwakarma and Francis Harkins and Siddharth Golecha and Vishal Sharathchandra Bajpe and Nicolas Dupuis and Luca Buratti and David Kremer and Ismael Faro and Ruchir Puri and Juan Cruz-Benito},
Title = {Qiskit HumanEval: An Evaluation Benchmark For Quantum Code Generative Models},
Year = {2024},
Eprint = {arXiv:2406.14712},
}
@misc{2508.20907,
Author = {Nicolas Dupuis and Adarsh Tiwari and Youssef Mroueh and David Kremer and Ismael Faro and Juan Cruz-Benito},
Title = {Quantum Verifiable Rewards for Post-Training Qiskit Code Assistant},
Year = {2025},
Eprint = {arXiv:2508.20907},
}

Próximos pasos

Recomendaciones