Skip to main content
IBM Quantum Platform

Qiskit Code-Assistent

Qiskit Code Assistant LLMs sollen neuen Qiskit-Nutzern den Einstieg in das Quantencomputing erleichtern und das Programmiererlebnis für bestehende Nutzer verbessern. Es wurde anhand von Millionen von Text-Tokens aus Qiskit SDK, jahrelangen Qiskit-Code-Beispielen und Merkmalen von IBM Quantum® trainiert. Qiskit Code Assistant kann Ihren Arbeitsablauf bei der Quantenentwicklung unterstützen, indem es Vorschläge bietet, die von großen Sprachmodellen (LLM) generiert werden und auf IBM Granite sowie anderen Open-Source-Modellen basieren, die die neuesten Features und Funktionen von IBM® enthalten.

Hinweise

Das Large Language Model (LLM) hinter Qiskit Code Assistant

Qiskit Code Assistant verwendet ein großes Sprachmodell (LLM), um Code-Vorschläge zu liefern. In diesem Fall stützt sich „ Qiskit Code Assistant “ derzeit auf das Modell mistral-small-3.2-24b-qiskit, das auf dem Modell „ Mistral-Small-3.2-24B-Qiskit “ aufbaut. Das mistral-small-3.2-24b-qiskit Modell verbessert die Mistral-Small-3.2-24B-Instruct-2506 Codegenerierungsfähigkeiten des Modells für Qiskit durch erweitertes Vortraining und Feinabstimmung anhand hochwertiger Qiskit-Daten sowie durch Python -Commits und Chat. Weitere Informationen zur Mistral AI-Modellfamilie finden Sie in der Mistral AI-Dokumentation. Weitere Informationen zu den .*-qiskit Modellen finden Sie unter „ Qiskit Code Assistant : Training LLMs for generating Quantum Computing Code” (Quantum Computing Code generieren: Training von LLMs).

Unsere für Qiskit spezialisierten LLMs sind auch als Open-Source-Modelle verfügbar. Alle verfügbaren Modelle finden Sie unter https://huggingface.co/Qiskit.


Die Qiskit- HumanEval - und Qiskit- HumanEval -Hard-Benchmarks

Um das mistral-small-3.2-24b-qiskit und andere Modelle zu testen, haben wir in Zusammenarbeit mit Qiskit Advocates und Experten die ausführungsbasierten Benchmarks Qiskit HumanEval (QHE) und Qiskit HumanEval Hard (QHE Hard) entwickelt und diese auf den Modellen ausgeführt. Diese Benchmarks ähneln HumanEval und umfassen mehrere anspruchsvolle Code-Probleme, die alle auf den offiziellen Qiskit-Bibliotheken basieren.

Die Benchmarks bestehen aus etwa 150 Tests, die jeweils aus einer Funktionsdefinition und einem Docstring bestehen, in dem die Aufgabe, die das Modell lösen muss, detailliert beschrieben wird. Jedes Beispiel enthält auch eine Referenz-Kanonikallösung sowie Unit-Tests, um die Korrektheit der generierten Lösungen zu bewerten. Es gibt drei Schwierigkeitsstufen für Tests: einfach, mittel und schwer. Der HumanEval Qiskit-Hard-Benchmark ist eine Variante des HumanEval Qiskit-One-Benchmarks, entfernt jedoch Informationen zu Code-Importen, sodass das LLM die richtige Methode oder Klassenimporte ermitteln muss. Diese Änderung macht den Datensatz für LLMs laut unseren Tests und ersten Ergebnissen wesentlich anspruchsvoller.

Die Datensätze für Qiskit HumanEval und Qiskit HumanEval Hard sind auf diesen Websites verfügbar: Qiskit HumanEval und Qiskit HumanEval. Sie können zur Entwicklung dieser Benchmarks im Repository „ GitHub “ beitragen.


Qiskit Code Assistant installieren

Erfahren Sie, wie Sie jedes beliebige Modell von „ Qiskit Code Assistant “ auf Ihrem lokalen Rechner installieren, konfigurieren und verwenden können.

  • Befolgen Sie diese Schritte, um ein beliebiges Modell im Zusammenhang mit „ Qiskit Code Assistant “ von der Website Hugging Face herunterzuladen:

    1. Rufen Sie die Seite des gewünschten Qiskit-Modells unter Hugging Face auf.
    2. Wechseln Sie zur Registerkarte „Dateien und Versionen“ und laden Sie die Safetensors- oder GGUF-Modelldateien herunter.
  • Um eines der verfügbaren „ Qiskit Code Assistant “-Modelle über die Hugging Face -Befehlszeilenschnittstelle herunterzuladen, gehen Sie wie folgt vor:

    1. Installieren Sie die CLI von „ Hugging Face “

    2. Melden Sie sich bei Ihrem „ Hugging Face “-Konto an

      huggingface-cli login
      
    3. Laden Sie das gewünschte Modell aus der obigen Liste herunter

      huggingface-cli download <HF REPO NAME> <MODEL PATH> --local-dir <LOCAL PATH>
      
  • Es gibt verschiedene Möglichkeiten, das heruntergeladene Modell „ Qiskit Code Assistant “ bereitzustellen und damit zu arbeiten. In dieser Anleitung wird die Verwendung von Ollama wie folgt veranschaulicht: entweder mit dem Ollama-Anwendung über die Hugging Face Hub-Integration oder das lokale Modell, oder mit dem llama-cpp-python Paket.

    Verwendung der Ollama-Anwendung

    Die Ollama-Anwendung bietet eine einfache Lösung, um die LLMs lokal auszuführen. Es ist benutzerfreundlich und verfügt über eine Befehlszeilenschnittstelle, die den gesamten Einrichtungsprozess, die Modellverwaltung und die Interaktion recht unkompliziert gestaltet. Es eignet sich ideal für schnelle Experimente und für Nutzer, die sich nicht mit zu vielen technischen Details auseinandersetzen möchten.

    Ollama installieren
    1. Laden Sie die Ollama-App herunter

    2. Installieren Sie die heruntergeladene Datei

    3. Starten Sie die installierte Ollama-Anwendung

      Info

      Die Anwendung läuft ordnungsgemäß, wenn das Ollama-Symbol in der Menüleiste des Desktops angezeigt wird. Sie können auch überprüfen, ob der Dienst ausgeführt wird, indem Sie zu http://localhost:11434/… gehen.

    4. Probieren Sie Ollama in Ihrem Terminal aus und starten Sie die Modelle. Zum Beispiel:

      ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
      
    Richten Sie Ollama mithilfe der „ Hugging Face “-Hub-Integration ein

    Die Integration von Ollama und dem „ Hugging Face “-Hub ermöglicht die Interaktion mit Modellen, die auf dem „ Hugging Face “-Hub gehostet werden, ohne dass eine neue Modelldatei erstellt oder die GGUF- bzw. Safetensors-Dateien manuell heruntergeladen werden müssen. Die Standarddateien template``params und sind für das Modell bereits auf dem „ Hugging Face “-Hub enthalten.

    1. Stellen Sie sicher, dass die Ollama-Anwendung ausgeführt wird.

    2. Rufe die Seite des gewünschten Modells auf und kopiere den Link URL. Zum Beispiel: https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF.

    3. Führen Sie in Ihrem Terminal folgenden Befehl aus:

      ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
      

    Sie können das hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit Modell oder eines der anderen derzeit empfohlenen offiziellen GGUF-Modelle verwenden hf.co/Qiskit/mistral-small-3.2-24b-qiskit-GGUF``hf.co/Qiskit/granite-3.3-8b-qiskit-GGUF .

    Richten Sie Ollama mit einem manuell heruntergeladenen GGUF-Modell von Qiskit Code Assistant ein

    Wenn Sie ein GGUF-Modell wie beispielsweise „ https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF “ manuell heruntergeladen haben und mit verschiedenen Vorlagen und Parametern experimentieren möchten, können Sie die folgenden Schritte ausführen, um es in Ihre lokale Ollama-Anwendung zu laden.

    1. Erstellen Sie eine und geben Modelfile Sie den folgenden Inhalt ein. Achten Sie darauf, durch den tatsächlichen Pfad Ihres <PATH-TO-GGUF-FILE> heruntergeladenen Modells zu ersetzen.

      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
      
    2. Führen Sie den folgenden Befehl aus, um eine benutzerdefinierte Modellinstanz auf der Grundlage der Modelfile.

      ollama create Qwen2.5-Coder-14B-Qiskit -f ./path-to-model-file
      
      Note

      Dieser Vorgang kann einige Zeit in Anspruch nehmen, da Ollama die Modelldatei lesen, die Modellinstanz initialisieren und sie gemäß den angegebenen Spezifikationen konfigurieren muss.

    Führen Sie das in Ollama manuell heruntergeladene Modell „ Qiskit Code Assistant “ aus

    Nachdem das Qwen2.5-Coder-14B-Qiskit Modell in Ollama eingerichtet wurde, führen Sie den folgenden Befehl aus, um das Modell zu starten und im Terminal (im Chat-Modus) mit ihm zu interagieren.

    ollama run Qwen2.5-Coder-14B-Qiskit
    

    Einige nützliche Befehle:

    • ollama list - Modelle auf Ihrem Computer auflisten
    • ollama rm Qwen2.5-Coder-14B-Qiskit - Das Modell löschen
    • ollama show Qwen2.5-Coder-14B-Qiskit - Modellinformationen anzeigen
    • ollama stop Qwen2.5-Coder-14B-Qiskit - Ein derzeit ausgeführtes Modell anhalten
    • ollama ps - Auflisten, welche Modelle derzeit geladen sind
  • Eine Alternative zur Ollama-Anwendung ist das llama-cpp-python Paket, bei dem es sich um eine „ Python “-Bindung für handelt llama.cpp. Die lokale Ausführung des GGUF-Modells bietet Ihnen mehr Kontrolle und Flexibilität und eignet sich ideal für Anwender, die das lokale Modell in ihre Arbeitsabläufe und Anwendungen unter Python integrieren möchten.

    1. Installieren llama-cpp-python
    2. Interagieren Sie mit dem Modell aus Ihrer Anwendung heraus mithilfe von llama_cpp. Zum 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"]

    Sie können dem Modell auch Parameter für die 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"]
  • Verwenden Sie die llama.cpp Bibliothek

    Eine weitere Alternative ist die Verwendung llama.cppvon, einer Open-Source-Bibliothek, mit der sich LLM-Inferenz mit minimalem Einrichtungsaufwand auf einer CPU durchführen lässt. Es ermöglicht eine detaillierte Steuerung der Modellausführung und wird in der Regel über die Befehlszeile ausgeführt, wobei auf eine lokale GGUF-Modelldatei verwiesen wird.

    Es gibt mehrere Möglichkeiten, das Programm auf Ihrem Computer llama.cpp zu installieren:

    Nach der Installation können Sie wie folgt im Dialogmodus llama.cpp mit GGUF-Modellen 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

    Sie können den API-Server für das Modell unter OpenAI-compatible auch wie folgt starten:

    llama-server -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF
    Erweiterte Parameter

    Mit dem llama-cli Programm können Sie die Modellgenerierung über Befehlszeilenoptionen steuern. Sie können beispielsweise mithilfe des -p/--prompt Flags eine anfängliche „System“-Eingabeaufforderung anzeigen. Im Konversationsmodus (-cnv) dient diese erste Eingabeaufforderung als Systemmeldung. Ansonsten kannst du dem Eingabeaufforderungstext einfach eine beliebige Anweisung voranstellen. Sie können auch die Stichprobenparameter anpassen – zum Beispiel: Temperatur (--temp), Top-k (--top-k), Top-p (--top-p), Wiederholungsstrafe (--repeat-penalty) und den zu verwendenden Startwert (--seed). Nachfolgend finden Sie ein Beispiel für einen Aufruf 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 zu gewährleisten, empfehlen wir die Verwendung der System-Eingabeaufforderung, die in unseren HF-GGUF-Repositorys bereitgestellt wird: System-Eingabeaufforderung 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.

  • Weiter (VS Code)

    1. Installieren Sie die Erweiterung

    Öffne VS Code, gehe zu „Erweiterungen“ (Cmd+Shift+X), suche nach „Continue“ und installiere es.

    2. Öffne die Konfigurationsdatei

    Klicken Sie in der Seitenleiste auf das Symbol „Weiter“, dann auf das Zahnrad-Symbol, oder öffnen Sie die Befehlspalette (Cmd+Shift+P) und führen Sie den Befehl „Weiter: Konfigurationsdatei öffnen“ aus.

    Dadurch wird ~/.continue/config.yaml (oder config.json in älteren Versionen) geöffnet.

    3. Das Modell konfigurieren

    Füge Folgendes zu config.yaml… hinzu:

    models:
      - name: Qiskit Code Assistant
        provider: ollama
        model: mistral-small-3.2-24b-qiskit
        apiBase: http://localhost:11434

    Dadurch steht das Qiskit-Modell im Chat-Fenster (Seitenleiste „Konversationen“, Inline-Fragen und Antworten) sowie für Inline -Bearbeitungsbefehle zur Verfügung.

    4. Testen Sie es
    • Chat: Öffne das Fenster „Weiter“ in der Seitenleiste und stelle eine Frage (z. B. „Wie erstelle ich einen parametrisierten Schaltkreis in Qiskit?“)

    • Inline-Bearbeitung: Markieren Sie einen Codeabschnitt und drücken Sie Cmd+I (Mac) oder Ctrl+I ( Linux /Windows)

  • Jupyter AI ( JupyterLab )

    Hinweis: Diese Anleitung gilt für Jupyter-KI- v2.x.

    1. Installieren Sie Jupyter AI und den Ollama-Anbieter
    pip install "jupyter-ai<3" langchain-ollama

    Mit diesem "jupyter-ai<3" Pin erhalten Sie „ v2.x “. Das langchain-ollama Paket ist erforderlich, damit Jupyter AI Ollama als Anbieter erkennt. Ohne diese Angabe wird Ollama nicht im Einstellungsfenster angezeigt.

    Starten Sie anschließend „ JupyterLab “ neu.

    2. Konfigurieren Sie das Chat-Modell

    Öffne JupyterLab und klicke auf das Chat-Symbol in der linken Seitenleiste. Im Einstellungsfenster:

    1. Wählen Sie unter „Sprachmodell“ den Anbieter „Ollama“ aus.
    2. Geben Sie mistral-small-3.2-24b-qiskit als Modellnamen ein.
    3. Für Ollama ist kein API-Schlüssel erforderlich (lassen Sie das Feld leer).
    4. Klicke auf den Zurück-Pfeil, um den Chat zu starten.
    3. Verwenden Sie den Magiebefehl %%ai

    Mit %%ai dieser Funktion kannst du das Modell direkt in Notebook-Zellen abfragen.

    %load_ext jupyter_ai_magics

    Dann in einer Zelle:

    %%ai ollama:mistral-small-3.2-24b-qiskit
    Write a function that implements Grover's algorithm using Qiskit
    4. Benutzerdefinierter Ollama-Host (optional)

    Standardmäßig stellt Jupyter AI eine Verbindung zu http://127.0.0.1:11434. her. Falls Ihr Ollama-Server unter einer anderen Adresse oder einem anderen Port läuft:

    In der Chat-Benutzeroberfläche: Legen Sie das Feld „Basis-API- URL “ im Bereich „KI-Einstellungen“ fest.

  • OpenCode (Terminal)

    1. Installieren Sie „ OpenCode “
    curl -fsSL https://opencode.ai/install | bash
    2. Konfigurieren Sie das Qiskit-Modell

    Erstellen Sie eine opencode.json Datei im Stammverzeichnis Ihres Projekts (oder ~/.config/opencode/opencode.json für eine globale Konfiguration):

    {
      "$schema": "https://opencode.ai/config.json",
      "provider": {
        "ollama": {
          "npm": "@ai-sdk/openai-compatible",
          "name": "Ollama (local)",
          "options": {
            "baseURL": "http://localhost:11434/v1"
          },
          "models": {
            "mistral-small-3.2-24b-qiskit": {
              "name": "Qiskit Code Assistant"
            }
          }
        }
      }
    }
    3. Wählen Sie das Modell aus

    Führen Sie in Ihrem Projektverzeichnis den Befehl „ OpenCode “ aus:

    opencode

    Führen Sie in der TUI den /models Befehl aus und wählen Sie „ Qiskit Code Assistant “ aus der Liste aus.

    4. Testen Sie es

    Stelle deine Frage direkt im Chat, zum Beispiel: „Definiere eine Bell-Schaltung und führe sie unter QiskitRuntimeService" aus.“


Verfügbare Modelle

Aktuelle Modelle

Dies sind die aktuell empfohlenen Modelle für die Verwendung mit „ Qiskit Code Assistant “:

  1. Qiskit/mistral-small-3.2-24b-qiskit - Erschienen im Oktober 2025
  2. Qiskit/Qwen2.5-Coder-14B-Qiskit - Erschienen im Juni 2025
  3. qiskit/granite-3.3-8b-qiskit - Erschienen im Juni 2025
  4. qiskit/granite-3.2-8b-qiskit - Erschienen im Juni 2025

GGUF-Modelle (empfohlen für den privaten Gebrauch/Laptops)

Modelle im GGUF-Format sind für den lokalen Einsatz optimiert und benötigen weniger Rechenressourcen:

  1. mistral-small-3.2-24b-qiskit-GGUF – Veröffentlicht im Oktober 2025;
    trainiert mit Qiskit-Daten bis zur Version 2.1

  2. Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF – Veröffentlicht im Juni 2025
    ; trainiert mit Qiskit-Daten bis zur Version 2.0

  3. qiskit/granite-3.3-8b-qiskit-GGUF – Veröffentlicht im Juni 2025;
    trainiert mit Qiskit-Daten bis zur Version 2.0

  4. qiskit/granite-3.2-8b-qiskit-GGUF – Veröffentlicht im Juni 2025;
    trainiert mit Qiskit-Daten bis zur Version 2.0

Die Open-Source-Modelle „ Qiskit Code Assistant “ sind unter Safetensors ist ein Dateiformat, das speziell dafür entwickelt wurde, Gewichte und Tensoren von Modellen für maschinelles Lernen sicher und effizient zu speichern. oder GGUF ist ein Binärformat, das für das schnelle Laden und Speichern von Modellen sowie für eine gute Lesbarkeit konzipiert ist. verfügbar und können, wie unten beschrieben, von der Website Hugging Face heruntergeladen werden.

Für das Training verwendete Qiskit-Versionen

Modell
 
 
 
 
 
Benchmark-Kennzahlen
 
 
 
 
Freigabedatum
Trainiert mit der Qiskit-Version
 QiskitHumanEval-HardQiskitHumanEvalHumanEvalASDivMathQASciQMBPPIFEvalCrowsPairs (Englisch)TruthfulQA (Quelle: MC1 )  
mistral-small-3.2-24b-qiskit32.4547.0277.493.7749.6897.5064.0048.4467.0839.41Januar 20262.2
Qwen2.5-Coder-14B-Qiskit25.1749.0191.464.2153.9097.0077.6049.6465.1837.82Juni 20252.0
granite-3.3-8b-qiskit14.5727.1562.800.4838.6693.3052.4059.7159.7539.05Juni 20252.0
granite-3.2-8b-qiskit9.9324.5057.320.0941.4196.3051.8060.7966.7940.51Juni 20252.0
granite-8b-qiskit-rc-0.1015.8938.4159.76———————Februar 20251.3
granite-8b-qiskit17.8844.3753.66———————November 20241.2

Hinweis: Alle in der Vergleichstabelle aufgeführten Modelle wurden anhand ihrer jeweiligen Systemaufforderung bewertet, die in ihrem Modell „ Hugging Face “ definiert ist.

Veraltete Modelle

Diese Modelle werden nicht mehr aktiv gepflegt, sind aber weiterhin verfügbar:

  1. qiskit/granite-8b-qiskit-rc-0.10 - Veröffentlicht im Februar 2025 (veraltet)
  2. qiskit/granite-8b-qiskit - Veröffentlicht im November 2024 (veraltet)

Weitere Informationen und Zitate

Um mehr über Qiskit Code Assistant die Qiskit- HumanEval, oder HumanEval Qiskit-Hard-Benchmarks zu erfahren und sie in Ihren wissenschaftlichen Publikationen zu zitieren, lesen Sie bitte die folgenden empfohlenen Zitate:

@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},
}
War diese Seite hilfreich?
Melden Sie auf GitHub einen Fehler, einen Tippfehler oder fordern Sie Inhalte an.