Zum Hauptinhalt springen

Qiskit Code Assistant

Qiskit Code Assistant soll Quantencomputing für neue Qiskit-Nutzer zugänglicher machen und das Programmiererlebnis für bestehende Nutzer verbessern. Es handelt sich um einen generativen KI-Code-Assistenten, der von watsonx betrieben wird. Er wurde mit Millionen von Text-Tokens aus dem Qiskit SDK, jahrelangen Qiskit-Code-Beispielen und IBM Quantum®-Funktionen trainiert. Qiskit Code Assistant kann deinen Quantum-Entwicklungsworkflow unterstützen, indem er LLM-generierte Vorschläge auf Basis von IBM Granite-Modellen anbietet, die die neuesten Funktionen und Features von IBM® beinhalten.

Hinweise
  • Dies ist eine experimentelle Funktion, die für Nutzer des IBM Quantum Premium Plans verfügbar ist, die auf der neuen IBM Quantum Platform registriert sind.
  • Qiskit Code Assistant befindet sich im Preview-Release-Status und kann sich ändern.
  • Wenn du Feedback hast oder das Entwicklerteam kontaktieren möchtest, nutze den Qiskit Slack Workspace-Kanal oder die zugehörigen öffentlichen GitHub-Repositories.

Funktionen

Die folgenden Funktionen sind in den Erweiterungen für Visual Studio Code (VS Code) und kompatible Editoren sowie für JupyterLab enthalten:

  • Beschleunigt die Qiskit-Code-Generierung durch den Einsatz von generativer KI auf Basis von Modellen, die auf die Erzeugung von Qiskit-Code spezialisiert sind.
  • Ermöglicht abstrakte und spezifische Prompts zur Generierung von Empfehlungen.
  • Zeigt Vorschläge an, die du prüfen, annehmen oder ablehnen kannst.
  • Unterstützt Python-Code und Jupyter-Notebook-Dateien.
  • Enthält Schutzmaßnahmen, um das Beantworten von Fragen zu vermeiden, die ein potenzielles Risiko für Nutzer darstellen, wie etwa Hassrede.

Anleitungen zur Integration von Qiskit Code Assistant direkt in deine Entwicklungsumgebung findest du im entsprechenden Abschnitt:

Das Large Language Model (LLM) hinter Qiskit Code Assistant

Um Code-Vorschläge bereitzustellen, verwendet Qiskit Code Assistant ein Large Language Model (LLM). Konkret basiert Qiskit Code Assistant derzeit auf dem Modell mistral-small-3.2-24b-qiskit, das auf dem Mistral-Small-3.2-24B-Qiskit-Modell aufbaut. Das Modell mistral-small-3.2-24b-qiskit verbessert die Code-Generierungsfähigkeiten des Modells Mistral-Small-3.2-24B-Instruct-2506 für Qiskit durch erweitertes Pretraining und Fine-Tuning auf hochwertigen Qiskit-Daten sowie Python-Commits und Chat. Weitere Informationen zur Mistral-AI-Modellfamilie findest du in der Mistral-AI-Dokumentation. Weitere Details zu den .*-qiskit-Modellen findest du unter Qiskit Code Assistant: Training LLMs for generating Quantum Computing Code.

Unsere auf Qiskit spezialisierten LLMs sind auch als Open-Source-Modelle verfügbar. Alle verfügbaren Modelle findest du unter https://huggingface.co/Qiskit.

Die Qiskit HumanEval- und Qiskit HumanEval Hard-Benchmarks

Um das Modell mistral-small-3.2-24b-qiskit und andere Modelle zu testen, haben wir mit Qiskit Advocates und Experten zusammengearbeitet, um ausführungsbasierte Benchmarks namens Qiskit HumanEval (QHE) und Qiskit HumanEval Hard (QHE Hard) zu entwickeln und auf den Modellen auszuführen. Diese Benchmarks ähneln HumanEval und enthalten mehrere anspruchsvolle Code-Aufgaben, die alle auf den offiziellen Qiskit-Bibliotheken basieren.

Die Benchmarks bestehen aus etwa 150 Tests, von denen jeder aus einer Funktionsdefinition besteht, gefolgt von einem Docstring, der die Aufgabe beschreibt, die das Modell lösen soll. Jedes Beispiel enthält außerdem eine Referenz-Musterlösung sowie Unit-Tests zur Überprüfung der Korrektheit der generierten Lösungen. Es gibt drei Schwierigkeitsstufen für Tests: einfach, mittel und schwierig. Der Qiskit HumanEval Hard-Benchmark ist eine Variante des Qiskit HumanEval-Benchmarks, entfernt jedoch Informationen zu Code-Imports, sodass das LLM die richtigen Methoden- oder Klassen-Imports selbst herausfinden muss. Diese Änderung macht den Datensatz laut unseren Tests und ersten Ergebnissen deutlich anspruchsvoller für LLMs.

Die Datensätze für Qiskit HumanEval und Qiskit HumanEval Hard sind auf diesen Websites verfügbar: Qiskit HumanEval und Qiskit HumanEval. Du kannst zur Weiterentwicklung dieser Benchmarks im GitHub-Repository beitragen.

Weitere Informationen und Zitierhinweise

Um mehr über Qiskit Code Assistant, Qiskit HumanEval oder die Qiskit HumanEval Hard-Benchmarks zu erfahren und sie in wissenschaftlichen Publikationen zu zitieren, verwende diese empfohlenen Zitierhinweise:

@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},
}

Nächste Schritte

Empfehlungen