דלג לתוכן הראשי
פרויקט זה בשלב בטא. מצאת באג? פתח issue ב-GitHub. יש שאלה או רעיון? שאל ב-Discussions — נשמח לשמוע ממך!
מה איכות התרגום בדף זה?

Qiskit Code Assistant

מודלי ה-LLM של Qiskit Code Assistant שואפים להפוך את המחשוב הקוונטי לנגיש יותר למאמצים חדשים של Qiskit ולשפר את חוויית הקידוד עבור משתמשים קיימים. הוא מאומן באמצעות מיליוני אסימוני טקסט מ-SDK של Qiskit, שנים של דוגמאות קוד Qiskit, ותכונות IBM Quantum®. Qiskit Code Assistant יכול לסייע בתהליך פיתוח הקוד הקוונטי שלך על ידי הצעת הצעות שנוצרו על ידי LLM המבוססות על IBM Granite ומודלי קוד פתוח אחרים הכוללות את התכונות והפונקציונליות העדכניות ביותר מ-IBM®.

הערות

מודל השפה הגדול (LLM) מאחורי Qiskit Code Assistant​

כדי לספק הצעות קוד, Qiskit Code Assistant משתמש במודל שפה גדול (LLM). במקרה זה, Qiskit Code Assistant מסתמך כרגע על המודל mistral-small-3.2-24b-qiskit, הבנוי על מודל Mistral-Small-3.2-24B-Qiskit. המודל mistral-small-3.2-24b-qiskit משפר את יכולות יצירת הקוד של מודל Mistral-Small-3.2-24B-Instruct-2506 עבור Qiskit באמצעות אימון מקדים מורחב וכוונון עדין על נתוני Qiskit באיכות גבוהה, כמו גם commit-ים של Python ושיחות. למידע נוסף על משפחת מודלי Mistral AI, ראה בתיעוד Mistral AI. לפרטים נוספים על מודלי .*-qiskit, ראה Qiskit Code Assistant: Training LLMs for generating Quantum Computing Code.

ה-LLMs המתמחים שלנו ב-Qiskit זמינים גם כמודלים בקוד פתוח. בדוק את כל המודלים הזמינים בכתובת https://huggingface.co/Qiskit.

ה-Benchmarks של Qiskit HumanEval ו-Qiskit HumanEval Hard​

כדי לבדוק את mistral-small-3.2-24b-qiskit ומודלים אחרים, שיתפנו פעולה עם Advocates ומומחים של Qiskit ליצירת ה-benchmarks המבוססים על ביצוע בשם Qiskit HumanEval (QHE) ו-Qiskit HumanEval Hard (QHE Hard), והרצנו אותם על המודלים. ה-benchmarks הללו דומים ל-HumanEval, כולל מספר בעיות קוד מאתגרות לפתרון, כולן מבוססות על ספריות Qiskit הרשמיות.

ה-benchmarks מורכבים מכ-150 בדיקות, כל אחת עשויה מהגדרת פונקציה, ואחריה docstring המפרט את המשימה שהמודל נדרש לפתור. כל דוגמה כוללת גם פתרון קנוני ייחוסי, וכן בדיקות יחידה, להערכת נכונות הפתרונות שנוצרו. ישנן שלוש רמות קושי לבדיקות: בסיסי, ביניים וקשה. ה-benchmark של Qiskit HumanEval Hard הוא וריאציה של זה של Qiskit HumanEval, אך מסיר מידע הקשור ל-import של קוד, כך שה-LLM צריך להבין את ה-import הנכון של המתודה או המחלקה. שינוי זה הופך את מערך הנתונים למאתגר הרבה יותר עבור LLMs, לפי הבדיקות והתוצאות הראשוניות שלנו.

מערכי הנתונים של Qiskit HumanEval ו-Qiskit HumanEval Hard זמינים באתרים הבאים: Qiskit HumanEval ו-Qiskit HumanEval. ניתן לתרום לפיתוח של ה-benchmarks הללו במאגר GitHub.

התקנת Qiskit Code Assistant​

למד כיצד להתקין, להגדיר ולהשתמש בכל אחד ממודלי Qiskit Code Assistant במחשב המקומי שלך.

הורדה מאתר Hugging Face

עקוב אחר השלבים הבאים להורדת כל מודל הקשור ל-Qiskit Code Assistant מאתר Hugging Face:

  1. נווט לדף המודל הרצוי של Qiskit ב-Hugging Face.

  2. עבור ללשונית Files and Versions והורד את קבצי המודל בפורמט safetensors או GGUF.

הורדה באמצעות Hugging Face CLI

להורדת כל אחד ממודלי Qiskit Code Assistant הזמינים באמצעות Hugging Face CLI, עקוב אחר השלבים הבאים:

  1. התקן את Hugging Face CLI

  2. התחבר לחשבון Hugging Face שלך

    huggingface-cli login
  3. הורד את המודל הרצוי מהרשימה הקודמת

    huggingface-cli download <HF REPO NAME> <MODEL PATH> --local-dir <LOCAL PATH>
פריסה ידנית של מודלי Qiskit Code Assistant מקומית באמצעות Ollama

ישנן מספר דרכים לפרוס ולקיים אינטראקציה עם מודל Qiskit Code Assistant שהורד. מדריך זה מדגים שימוש ב-Ollama כדלקמן: באמצעות אפליקציית Ollama דרך שילוב Hugging Face Hub או מודל מקומי, או עם חבילת llama-cpp-python.

שימוש באפליקציית Ollama​

אפליקציית Ollama מספקת פתרון פשוט להרצת ה-LLMs מקומית. קל לשימוש, עם CLI שהופך את כל תהליך ההגדרה, ניהול המודלים והאינטראקציה לפשוט למדי. הוא אידיאלי לניסויים מהירים ולמשתמשים שרוצים לטפל בפחות פרטים טכניים.

התקנת Ollama​
  1. הורד את אפליקציית Ollama

  2. התקן את הקובץ שהורדת

  3. הפעל את אפליקציית Ollama המותקנת

    מידע

    האפליקציה פועלת בהצלחה כאשר סמל Ollama מופיע בשורת התפריטים של שולחן העבודה. ניתן גם לאמת שהשירות פועל על ידי גלישה לכתובת http://localhost:11434/.

  4. נסה את Ollama בטרמינל שלך והתחל להריץ מודלים. לדוגמה:

    ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
הגדרת Ollama באמצעות שילוב Hugging Face Hub​

שילוב Ollama/Hugging Face Hub מספק דרך לקיים אינטראקציה עם מודלים המתארחים ב-Hugging Face Hub בלי צורך ליצור modelfile חדש או להוריד ידנית את קבצי GGUF או safetensors. קבצי ה-template וה-params המוגדרים כברירת מחדל כבר כלולים עבור המודל ב-Hugging Face Hub.

  1. ודא שאפליקציית Ollama פועלת.

  2. עבור לדף המודל הרצוי והעתק את ה-URL. לדוגמה, https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF.

  3. מהטרמינל שלך, הרץ את הפקודה:

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

ניתן להשתמש במודל hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit או בכל אחד מהמודלים הרשמיים GGUF המומלצים הנוכחיים hf.co/Qiskit/mistral-small-3.2-24b-qiskit-GGUF או hf.co/Qiskit/granite-3.3-8b-qiskit-GGUF.

הגדרת Ollama עם מודל GGUF של Qiskit Code Assistant שהורד ידנית​

אם הורדת ידנית מודל GGUF כגון https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF ואתה רוצה לנסות תבניות ופרמטרים שונים, ניתן לעקוב אחר השלבים הבאים כדי לטעון אותו לאפליקציית Ollama המקומית שלך.

  1. צור Modelfile עם התוכן הבא וודא לעדכן את <PATH-TO-GGUF-FILE> לנתיב בפועל של המודל שהורדת.

    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. הרץ את הפקודה הבאה כדי ליצור מופע מודל מותאם אישית המבוסס על Modelfile.

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

    הערה

    תהליך זה עשוי לקחת זמן עד ש-Ollama יקרא את קובץ המודל, יאתחל את מופע המודל ויגדיר אותו בהתאם למפרט שסופק.

הרץ את מודל Qiskit Code Assistant שהורדת ידנית ב-Ollama​

לאחר שמודל Qwen2.5-Coder-14B-Qiskit הוגדר ב-Ollama, הרץ את הפקודה הבאה כדי להפעיל את המודל ולקיים אינטראקציה איתו בטרמינל (במצב שיחה).

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

כמה פקודות שימושיות:

  • ollama list - הצג רשימת מודלים על המחשב שלך

  • ollama rm Qwen2.5-Coder-14B-Qiskit - מחק את המודל

  • ollama show Qwen2.5-Coder-14B-Qiskit - הצג מידע על המודל

  • ollama stop Qwen2.5-Coder-14B-Qiskit - עצור מודל שרץ כרגע

  • ollama ps - הצג אילו מודלים טעונים כרגע

פרוס ידנית את מודלי Qiskit Code Assistant מקומית באמצעות חבילת llama-cpp-python

חלופה לאפליקציית Ollama היא החבילה llama-cpp-python, שהיא Python binding עבור llama.cpp. היא נותנת לך יותר שליטה וגמישות להריץ את מודל ה-GGUF באופן מקומי, ומתאימה במיוחד למשתמשים שרוצים לשלב את המודל המקומי בזרימות העבודה ובאפליקציות ה-Python שלהם.

  1. התקן את llama-cpp-python

  2. תקשר עם המודל מתוך היישום שלך באמצעות llama_cpp. לדוגמה:

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"]

אפשר גם להוסיף פרמטרים ליצירת טקסט למודל כדי להתאים אישית את ההסקה:

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 מקומית באמצעות llama.cpp

השתמש בספריית llama.cpp​

אלטרנטיבה נוספת היא להשתמש ב-llama.cpp, ספרייה בקוד פתוח לביצוע הסקת LLM על CPU עם הגדרה מינימלית. היא מספקת שליטה ברמה נמוכה על הרצת המודל ובדרך כלל מריצים אותה משורת הפקודה, תוך הפניה לקובץ מודל GGUF מקומי.

ישנן כמה דרכים להתקין את llama.cpp על המחשב שלך:

לאחר ההתקנה, תוכל להשתמש ב-llama.cpp כדי לתקשר עם מודלי GGUF במצב שיחה כך:


# Use a local model file \{#use-a-local-model-file}
llama-cli -m my_model.gguf -cnv

# Or download and run a model directly from Hugging Face \{#or-download-and-run-a-model-directly-from-hugging-face}
llama-cli -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF -cnv

אפשר גם להפעיל שרת API תואם OpenAI עבור המודל בדרך הבאה:

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

פרמטרים מתקדמים​

עם התוכנה llama-cli, אפשר לשלוט ביצירת המודל באמצעות אפשרויות שורת פקודה. לדוגמה, אפשר לספק פרומפט התחלתי של "מערכת" באמצעות הדגל -p/--prompt. במצב שיחה (-cnv), פרומפט התחלתי זה פועל כהודעת המערכת. אחרת, פשוט אפשר להוסיף בתחילת טקסט הפרומפט שלך כל הוראה רצויה. אפשר גם לכוונן פרמטרי דגימה - למשל: טמפרטורה (--temp), top-k (--top-k), top-p (--top-p), עונש חזרתיות (--repeat-penalty), והזרע לשימוש (--seed). להלן דוגמה להפעלה באמצעות אפשרויות אלו:

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

כדי להבטיח את התפקוד התקין של מודלי Qiskit שלנו, אנו ממליצים להשתמש בפרומפט המערכת שמסופק במאגרי ה-HF GGUF שלנו: פרומפט מערכת עבור mistral-small-3.2-24b-qiskit-GGUF, Qwen2.5-Coder-14B-Qiskit-GGUF, granite-3.3-8b-qiskit-GGUF, ו-granite-3.2-8b-qiskit-GGUF.

התחבר ידנית ל-Continue (VS Code)

Continue (VS Code)​

1. התקן את התוסף​

פתח את VS Code, עבור להרחבות (Cmd+Shift+X), חפש Continue, והתקן אותו.

2. פתח את התצורה​

לחץ על סמל Continue בסרגל הצד, ואז לחץ על סמל גלגל השיניים, או פתח את פלטת הפקודות (Cmd+Shift+P) והרץ Continue: Open Config File.

פעולה זו פותחת את ~/.continue/config.yaml (או config.json בגרסאות ישנות יותר).

3. הגדר את המודל​

הוסף את הבא ל-config.yaml:

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

פעולה זו הופכת את מודל Qiskit לזמין בפאנל הצ'אט (שיחות בסרגל הצד, שאלות ותשובות מוטבעות) ולפקודות עריכה מוטבעת.

4. Test it​
  • צ'אט: פתח את פאנל Continue בסרגל הצד ושאל שאלה (למשל, "איך אני יוצר מעגל פרמטרי ב-Qiskit?")

  • עריכה מוטבעת: בחר בלוק קוד, לחץ Cmd+I (Mac) או Ctrl+I (Linux/Windows)

התחבר ידנית ל-Jupyter AI (JupyterLab)

Jupyter AI (JupyterLab)​

הערה: הוראות אלו מכסות את Jupyter AI v2.x.

1. התקן את Jupyter AI ואת ספק Ollama​
pip install "jupyter-ai<3" langchain-ollama

ה-pin "jupyter-ai<3" מבטיח שתקבל v2.x. חבילת langchain-ollama נדרשת כדי ש-Jupyter AI יזהה את Ollama כספק. בלעדיה, Ollama לא יופיע בפאנל ההגדרות.

לאחר מכן הפעל מחדש את JupyterLab.

2. הגדר את מודל הצ'אט​

פתח את JupyterLab ולחץ על סמל הצ'אט בסרגל הצד השמאלי. בפאנל ההגדרות:

  1. תחת Language model, בחר ב-Ollama כספק.

  2. הזן mistral-small-3.2-24b-qiskit כשם המודל.

  3. אין צורך במפתח API עבור Ollama (השאר את השדה ריק).

  4. לחץ על חץ החזרה כדי להתחיל בשיחה.

3. השתמש בפקודת הקסם %%ai​

פקודת הקסם %%ai מאפשרת לך לשאול את המודל ישירות בתאי המחברת.

%load_ext jupyter_ai_magics

ואז בתא:

%%ai ollama:mistral-small-3.2-24b-qiskit
Write a function that implements Grover's algorithm using Qiskit

4. מארח Ollama מותאם אישית (אופציונלי)​

כברירת מחדל, Jupyter AI מתחבר ל-http://127.0.0.1:11434. אם שרת ה-Ollama שלך רץ בכתובת או יציאה אחרת:

בממשק הצ'אט: הגדר את השדה "Base API URL" בפאנל הגדרות ה-AI.

התחבר ידנית ל-OpenCode (Terminal)

OpenCode (Terminal)​

1. התקן את OpenCode​
curl -fsSL https://opencode.ai/install | bash

2. הגדר את מודל Qiskit​

צור קובץ opencode.json בשורש הפרויקט שלך (או ~/.config/opencode/opencode.json עבור תצורה גלובלית):

{
"$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. בחר את המודל​

הפעל את OpenCode בספריית הפרויקט שלך:

opencode

בתוך ה-TUI, הרץ את הפקודה /models ובחר ב-Qiskit Code Assistant מהרשימה.

4. Test it​

שאל שאלה ישירות בצ'אט, לדוגמה: "הגדר מעגל בל והרץ אותו באמצעות QiskitRuntimeService"

מודלים זמינים​

מודלים נוכחיים​

אלו המודלים המומלצים העדכניים ביותר לשימוש עם Qiskit Code Assistant:

  1. Qiskit/mistral-small-3.2-24b-qiskit - שוחרר באוקטובר 2025

  2. Qiskit/Qwen2.5-Coder-14B-Qiskit - שוחרר ביוני 2025

  3. qiskit/granite-3.3-8b-qiskit - שוחרר ביוני 2025

  4. qiskit/granite-3.2-8b-qiskit - שוחרר ביוני 2025

מודלי GGUF (מומלץ לסביבות אישיות/מחשבים ניידים)​

מודלים בפורמט GGUF מותאמים לשימוש מקומי ודורשים פחות משאבי חישוב:

  1. mistral-small-3.2-24b-qiskit-GGUF – שוחרר ב-אוקטובר 2025

    אומן עם נתוני Qiskit עד גרסה 2.1

  2. Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF – שוחרר ב-יוני 2025

    אומן עם נתוני Qiskit עד גרסה 2.0

  3. qiskit/granite-3.3-8b-qiskit-GGUF – שוחרר ב-יוני 2025

    אומן עם נתוני Qiskit עד גרסה 2.0

  4. qiskit/granite-3.2-8b-qiskit-GGUF – שוחרר ב-יוני 2025

    אומן עם נתוני Qiskit עד גרסה 2.0

מודלי Qiskit Code Assistant בקוד פתוח זמינים בפורמט safetensors או GGUF וניתן להוריד אותם מ-Hugging Face כפי שמוסבר להלן.

גרסאות Qiskit ששימשו לאימון​

מודל     מדדי ביצועים    תאריך שחרורגרסת Qiskit שעליה אומן
 QiskitHumanEval-HardQiskitHumanEvalHumanEvalASDivMathQASciQMBPPIFEvalCrowsPairs (English)TruthfulQA (MC1 acc)  
mistral-small-3.2-24b-qiskit32.4547.0277.493.7749.6897.5064.0048.4467.0839.41January 20262.2
Qwen2.5-Coder-14B-Qiskit25.1749.0191.464.2153.9097.0077.6049.6465.1837.82June 20252.0
granite-3.3-8b-qiskit14.5727.1562.800.4838.6693.3052.4059.7159.7539.05June 20252.0
granite-3.2-8b-qiskit9.9324.5057.320.0941.4196.3051.8060.7966.7940.51June 20252.0
granite-8b-qiskit-rc-0.1015.8938.4159.76———————February 20251.3
granite-8b-qiskit17.8844.3753.66———————November 20241.2

הערה: כל המודלים המפורטים בטבלת הבנצ'מארק הוערכו באמצעות פרומפט המערכת שלהם בהתאמה, כפי שמוגדר במודל שלהם ב-Hugging Face.

מודלים מיושנים​

מודלים אלה כבר לא מתוחזקים באופן פעיל אך עדיין זמינים:

  1. qiskit/granite-8b-qiskit-rc-0.10 - שוחרר בפברואר 2025 (מיושן)

  2. qiskit/granite-8b-qiskit - שוחרר בנובמבר 2024 (מיושן)

מידע נוסף וציטוטים​

כדי ללמוד עוד על Qiskit Code Assistant, מבחני Qiskit HumanEval או Qiskit HumanEval Hard, ולצטט אותם בפרסומים המדעיים שלך, עיין בציטוטים המומלצים הבאים:

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