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.
- 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.
2. qiskit/qwen2.5-coder-14b-qiskit - Released June 2025
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},
}
Qiskit Code Assistant im lokalen Modus verwenden
Erfahre, wie du eines der Qiskit Code Assistant-Modelle auf deinem lokalen Rechner installieren, konfigurieren und verwenden kannst.
- 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.
Schnellstart (empfohlen)
Der einfachste Weg, mit Qiskit Code Assistant im lokalen Modus zu beginnen, sind die automatisierten Setup-Skripte für die VS Code- oder JupyterLab-Erweiterung. Diese Skripte installieren automatisch Ollama, um die LLMs auszuführen, laden das empfohlene Modell herunter und konfigurieren die Erweiterung für dich.
Einrichtung der VS Code-Erweiterung
Führe den folgenden Befehl in deinem Terminal aus:
bash <(curl -fsSL https://raw.githubusercontent.com/Qiskit/qiskit-code-assistant-vscode/main/setup_local.sh)
Dieses Skript führt folgende Schritte aus:
- Installiert Ollama (sofern noch nicht installiert)
- Lädt das empfohlene Qiskit Code Assistant-Modell herunter und konfiguriert es
- Richtet die VS Code-Erweiterung für die Arbeit mit deiner lokalen Installation ein
Einrichtung der JupyterLab-Erweiterung
Führe den folgenden Befehl in deinem Terminal aus:
bash <(curl -fsSL https://raw.githubusercontent.com/Qiskit/qiskit-code-assistant-jupyterlab/main/setup_local.sh)
Dieses Skript führt folgende Schritte aus:
- Installiert Ollama (sofern noch nicht installiert)
- Lädt das empfohlene Qiskit Code Assistant-Modell herunter und konfiguriert es
- Richtet die JupyterLab-Erweiterung für die Arbeit mit deiner lokalen Installation ein
Verfügbare Modelle
Aktuelle Modelle
Dies sind die neuesten empfohlenen Modelle für die Verwendung mit Qiskit Code Assistant:
- Qiskit/mistral-small-3.2-24b-qiskit - Veröffentlicht Oktober 2025
- qiskit/qwen2.5-coder-14b-qiskit - Veröffentlicht Juni 2025
- qiskit/granite-3.3-8b-qiskit - Veröffentlicht Juni 2025
- qiskit/granite-3.2-8b-qiskit - Veröffentlicht Juni 2025
GGUF-Modelle (empfohlen für private Umgebungen/Laptops)
GGUF-Format-Modelle sind für den lokalen Einsatz optimiert und benötigen weniger Rechenressourcen:
-
mistral-small-3.2-24b-qiskit-GGUF – Veröffentlicht Oktober 2025
Trainiert mit Qiskit-Daten bis Version 2.1 -
qiskit/qwen2.5-coder-14b-qiskit-GGUF – Veröffentlicht Juni 2025
Trainiert mit Qiskit-Daten bis Version 2.0 -
qiskit/granite-3.3-8b-qiskit-GGUF – Veröffentlicht Juni 2025
Trainiert mit Qiskit-Daten bis Version 2.0 -
qiskit/granite-3.2-8b-qiskit-GGUF – Veröffentlicht Juni 2025
Trainiert mit Qiskit-Daten bis Version 2.0
Die Open-Source-Modelle des Qiskit Code Assistant sind im Safetensors- oder GGUF-Dateiformat verfügbar und können wie unten beschrieben von Hugging Face heruntergeladen werden.
Für das Training verwendete Qiskit-Versionen
| Modell | Benchmark-Metriken | Veröffentlichungsdatum | Trainiert auf Qiskit-Version | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| QiskitHumanEval-Hard | QiskitHumanEval | HumanEval | ASDiv | MathQA | SciQ | MBPP | IFEval | CrowsPairs (English) | TruthfulQA (MC1 acc) | |||
| mistral-small-3.2-24b-qiskit | 32.45 | 47.02 | 77.49 | 3.77 | 49.68 | 97.50 | 64.00 | 48.44 | 67.08 | 39.41 | Januar 2026 | 2.2 |
| qwen2.5-coder-14b-qiskit | 25.17 | 49.01 | 91.46 | 4.21 | 53.90 | 97.00 | 77.60 | 49.64 | 65.18 | 37.82 | Juni 2025 | 2.0 |
| granite-3.3-8b-qiskit | 14.57 | 27.15 | 62.80 | 0.48 | 38.66 | 93.30 | 52.40 | 59.71 | 59.75 | 39.05 | Juni 2025 | 2.0 |
| granite-3.2-8b-qiskit | 9.93 | 24.50 | 57.32 | 0.09 | 41.41 | 96.30 | 51.80 | 60.79 | 66.79 | 40.51 | Juni 2025 | 2.0 |
| granite-8b-qiskit-rc-0.10 | 15.89 | 38.41 | 59.76 | — | — | — | — | — | — | — | Februar 2025 | 1.3 |
| granite-8b-qiskit | 17.88 | 44.37 | 53.66 | — | — | — | — | — | — | — | November 2024 | 1.2 |
Hinweis: Alle in der Benchmark-Tabelle aufgeführten Modelle wurden mit dem jeweiligen System-Prompt ausgewertet, der in ihrem Hugging Face-Modell definiert ist.
Veraltete Modelle
Diese Modelle werden nicht mehr aktiv gepflegt, sind aber weiterhin verfügbar:
- qiskit/granite-8b-qiskit-rc-0.10 - Veröffentlicht Februar 2025 (veraltet)
- qiskit/granite-8b-qiskit - Veröffentlicht November 2024 (veraltet)
Erweiterte Einrichtung
Wenn du deine lokale Umgebung lieber manuell konfigurieren möchtest oder mehr Kontrolle über den Installationsprozess benötigst, klappe die folgenden Abschnitte auf.
Von der Hugging Face-Website herunterladen
Folge diesen Schritten, um ein beliebiges Qiskit Code Assistant-Modell von der Hugging Face-Website herunterzuladen:
- Navigiere zur gewünschten Qiskit-Modellseite auf Hugging Face.
- Gehe zum Tab Files and Versions und lade die Safetensors- oder GGUF-Modelldateien herunter.
Mit der Hugging Face CLI herunterladen
Um eines der verfügbaren Qiskit Code Assistant-Modelle mit der Hugging Face CLI herunterzuladen, folge diesen Schritten:
-
Installiere die Hugging Face CLI
-
Melde dich bei deinem Hugging Face-Konto an
huggingface-cli login -
Lade das gewünschte Modell aus der obigen Liste herunter
huggingface-cli download <HF REPO NAME> <MODEL PATH> --local-dir <LOCAL PATH>
Qiskit Code Assistant-Modelle lokal über Ollama manuell bereitstellen
Es gibt mehrere Möglichkeiten, das heruntergeladene Qiskit Code Assistant-Modell bereitzustellen und damit zu interagieren. Diese Anleitung zeigt die Verwendung von Ollama wie folgt: entweder mit der Ollama-Anwendung über die Hugging Face Hub-Integration oder ein lokales Modell, oder mit dem llama-cpp-python-Paket.
Ollama-Anwendung verwenden
Die Ollama-Anwendung bietet eine einfache Lösung, um LLMs lokal auszuführen. Sie ist benutzerfreundlich und verfügt über eine CLI, die den gesamten Einrichtungsprozess, die Modellverwaltung und die Interaktion unkompliziert gestaltet. Sie eignet sich ideal für schnelle Experimente und für Nutzer, die möglichst wenig technischen Aufwand betreiben möchten.
Ollama installieren
-
Lade die Ollama-Anwendung herunter
-
Installiere die heruntergeladene Datei
-
Starte die installierte Ollama-Anwendung
infoDie Anwendung läuft erfolgreich, wenn das Ollama-Symbol in der Menüleiste des Desktops erscheint. Du kannst auch überprüfen, ob der Dienst läuft, indem du
http://localhost:11434/aufrufst. -
Probiere Ollama in deinem Terminal aus und starte Modelle. Beispiel:
ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
Ollama mit der Hugging Face Hub-Integration einrichten
Die Ollama/Hugging Face Hub-Integration ermöglicht die Interaktion mit auf dem Hugging Face Hub gehosteten Modellen, ohne eine neue Modelfile erstellen oder die GGUF- oder Safetensors-Dateien manuell herunterladen zu müssen. Die Standard-template- und params-Dateien sind bereits für das Modell auf dem Hugging Face Hub enthalten.
-
Stelle sicher, dass die Ollama-Anwendung läuft.
-
Gehe zur gewünschten Modellseite und kopiere die URL. Zum Beispiel: https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF.
-
Führe in deinem Terminal den folgenden Befehl aus:
ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
Du kannst das Modell hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit oder eines der anderen aktuell empfohlenen offiziellen GGUF-Modelle hf.co/Qiskit/mistral-small-3.2-24b-qiskit-GGUF oder hf.co/Qiskit/granite-3.3-8b-qiskit-GGUF verwenden.
Ollama mit einem manuell heruntergeladenen Qiskit Code Assistant-GGUF-Modell einrichten
Wenn du ein GGUF-Modell wie https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF manuell heruntergeladen hast und mit verschiedenen Templates und Parametern experimentieren möchtest, kannst du diese Schritte ausführen, um es in deine lokale Ollama-Anwendung zu laden.
-
Erstelle eine
Modelfilemit folgendem Inhalt und aktualisiere<PATH-TO-GGUF-FILE>mit dem tatsächlichen Pfad zu deinem heruntergeladenen Modell.FROM <PATH-TO-GGUF-FILE>
TEMPLATE """{{ if .System }}
System:
{{ .System }}
{{ end }}{{ if .Prompt }}Question:
{{ .Prompt }}
{{ end }}Answer:
```python{{ .Response }}
"""
PARAMETER stop "Question:"
PARAMETER stop "Answer:"
PARAMETER stop "System:"
PARAMETER stop "```"
PARAMETER temperature 0
PARAMETER top_k 1 -
Führe den folgenden Befehl aus, um eine benutzerdefinierte Modellinstanz basierend auf der
Modelfilezu erstellen.ollama create Qwen2.5-Coder-14B-Qiskit -f ./path-to-model-filehinweisDieser Vorgang kann einige Zeit in Anspruch nehmen, da Ollama die Modelfile liest, die Modellinstanz initialisiert und sie gemäß den angegebenen Spezifikationen konfiguriert.
Das manuell in Ollama heruntergeladene Qiskit Code Assistant-Modell ausführen
Nachdem das Modell Qwen2.5-Coder-14B-Qiskit in Ollama eingerichtet wurde, führe den folgenden Befehl aus, um das Modell zu starten und im Terminal (im Chat-Modus) damit zu interagieren.
ollama run Qwen2.5-Coder-14B-Qiskit
Nützliche Befehle:
ollama list- Modelle auf deinem Computer auflistenollama rm Qwen2.5-Coder-14B-Qiskit- Modell löschenollama show Qwen2.5-Coder-14B-Qiskit- Modellinformationen anzeigenollama stop Qwen2.5-Coder-14B-Qiskit- Ein aktuell laufendes Modell stoppenollama ps- Aktuell geladene Modelle auflisten
Qiskit Code Assistant-Modelle lokal über das llama-cpp-python-Paket manuell bereitstellen
Eine Alternative zur Ollama-Anwendung ist das Paket llama-cpp-python, ein Python-Binding für llama.cpp. Es bietet mehr Kontrolle und Flexibilität bei der lokalen Ausführung des GGUF-Modells und eignet sich ideal für Nutzer, die das lokale Modell in ihre Workflows und Python-Anwendungen integrieren möchten.
- Installiere
llama-cpp-python - Interagiere mit dem Modell aus deiner Anwendung heraus mit
llama_cpp. Beispiel:
from llama_cpp import Llama
model_path = <PATH-TO-GGUF-FILE>
model = Llama(
model_path,
seed=17,
n_ctx=10000,
n_gpu_layers=37, # to offload in gpu, but put 0 if all in cpu
)
input = 'Generate a quantum circuit with 2 qubits'
raw_pred = model(input)["choices"][0]["text"]
Du kannst dem Modell auch Parameter zur Textgenerierung hinzufügen, um die Inferenz anzupassen:
generation_kwargs = {
"max_tokens": 512,
"echo": False, # Echo the prompt in the output
"top_k": 1
}
raw_pred = model(input, **generation_kwargs)["choices"][0]["text"]
Qiskit Code Assistant-Modelle lokal über llama.cpp manuell bereitstellen
Die llama.cpp-Bibliothek verwenden
Eine weitere Alternative ist llama.cpp, eine Open-Source-Bibliothek zur LLM-Inferenz auf einer CPU mit minimalem Aufwand.
Sie bietet Low-Level-Kontrolle über die Modellausführung und wird typischerweise über die Befehlszeile ausgeführt, wobei auf eine lokale GGUF-Modelldatei verwiesen wird.
Es gibt mehrere Möglichkeiten, llama.cpp auf deinem Rechner zu installieren:
- Installiere llama.cpp mit brew, nix oder winget
- Mit Docker ausführen: Sieh dir die Docker-Dokumentation des
llama.cpp-Teams an - Vorgefertigte Binärdateien von der Releases-Seite herunterladen
- Aus dem Quellcode erstellen, indem du dieses Repository klonst
Nach der Installation kannst du llama.cpp verwenden, um im Konversationsmodus mit GGUF-Modellen zu interagieren:
# Use a local model file
llama-cli -m my_model.gguf -cnv
# Or download and run a model directly from Hugging Face
llama-cli -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF -cnv
Du kannst auch einen OpenAI-kompatiblen API-Server für das Modell starten:
llama-server -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF
Erweiterte Parameter
Mit dem Programm llama-cli kannst du die Modellgenerierung über Befehlszeilenoptionen steuern. Zum Beispiel kannst du einen initialen „System"-Prompt mit dem Flag -p/--prompt angeben. Im Konversationsmodus (-cnv) fungiert dieser initiale Prompt als Systemnachricht. Andernfalls kannst du einfach eine beliebige Anweisung deinem Prompt-Text voranstellen. Du kannst auch Sampling-Parameter anpassen – zum Beispiel: Temperatur (--temp), Top-k (--top-k), Top-p (--top-p), Wiederholungsstrafe (--repeat-penalty) und den zu verwendenden Seed (--seed). Im Folgenden ist ein Beispielaufruf mit diesen Optionen:
llama-cli -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF \
-p "You are a friendly assistant." -cnv \
--temp 0.7 \
--top-k 50 \
--top-p 0.95 \
--repeat-penalty 1.1 \
--seed 42
Um die ordnungsgemäße Funktion unserer Qiskit-Modelle sicherzustellen, empfehlen wir, den in unseren HF-GGUF-Repositories bereitgestellten System-Prompt zu verwenden: System-Prompt für mistral-small-3.2-24b-qiskit-GGUF, Qwen2.5-Coder-14B-Qiskit-GGUF, granite-3.3-8b-qiskit-GGUF und granite-3.2-8b-qiskit-GGUF.
Erweiterungen manuell mit lokaler Installation verbinden
Verwende die VS Code-Erweiterung und die JupyterLab-Erweiterung für den Qiskit Code Assistant, um das lokal bereitgestellte Qiskit Code Assistant-Modell zu nutzen. Sobald du die Ollama-Anwendung mit dem Modell eingerichtet hast, kannst du die Erweiterungen so konfigurieren, dass sie sich mit dem lokalen Dienst verbinden.
Mit der Qiskit Code Assistant VS Code-Erweiterung verbinden
Mit der Qiskit Code Assistant VS Code-Erweiterung kannst du mit dem Modell interagieren und Code-Vervollständigung beim Schreiben deines Codes durchführen. Dies eignet sich gut für Nutzer, die Unterstützung beim Schreiben von Qiskit-Code für ihre Python-Anwendungen suchen.
- Installiere die Qiskit Code Assistant VS Code-Erweiterung.
- Gehe in VS Code zu den User Settings und setze die Qiskit Code Assistant: Url auf die URL deiner lokalen Ollama-Installation (zum Beispiel
http://localhost:11434). - Lade VS Code neu, indem du zu View > Command Palette... gehst und Developer: Reload Window auswählst.
Das in Ollama konfigurierte Qiskit Code Assistant-Modell sollte in der Statusleiste erscheinen und ist dann einsatzbereit.
Mit der Qiskit Code Assistant JupyterLab-Erweiterung verbinden
Mit der Qiskit Code Assistant JupyterLab-Erweiterung kannst du mit dem Modell interagieren und Code-Vervollständigung direkt in deinem Jupyter Notebook durchführen. Nutzer, die hauptsächlich mit Jupyter Notebooks arbeiten, können diese Erweiterung nutzen, um ihr Erlebnis beim Schreiben von Qiskit-Code weiter zu verbessern.
- Installiere die Qiskit Code Assistant JupyterLab-Erweiterung.
- Gehe in JupyterLab zum Settings Editor und setze die Qiskit Code Assistant Service API auf die URL deiner lokalen Ollama-Installation (zum Beispiel
http://localhost:11434).
Das in Ollama konfigurierte Qiskit Code Assistant-Modell sollte in der Statusleiste erscheinen und ist dann einsatzbereit.
Nächste Schritte
- Installiere und verwende die offizielle JupyterLab- oder VS Code-Erweiterung.
- Sieh dir Beispiele an, um Qiskit Code Assistant für Circuits, das Konfigurieren der Fehlerminderung und -unterdrückung und das Transpilieren mit Pass Managers zu nutzen.