مساعد كود Qiskit
يهدف مساعد كود Qiskit إلى جعل الحوسبة الكمية أكثر سهولةً للمستخدمين الجدد على Qiskit، وتحسين تجربة البرمجة للمستخدمين الحاليين. وهو مساعد كود يعتمد على الذكاء الاصطناعي التوليدي مدعومًا بـ watsonx، وقد تدرَّب على ملايين الرموز النصية من Qiskit SDK وسنوات من أمثلة كود Qiskit وميزات IBM Quantum®. يمكن لمساعد كود Qiskit تعزيز سير عمل تطويرك الكمي من خلال تقديم اقتراحات مولَّدة بنماذج اللغة الكبيرة استنادًا إلى نماذج IBM Granite، والتي تتضمن أحدث الميزات والوظائف من IBM®.
- هذه ميزة تجريبية متاحة لمستخدمي خطة IBM Quantum Premium المسجَّلين على منصة IBM Quantum الجديدة.
- مساعد كود Qiskit في مرحلة الإصدار التجريبي وقد يتغير في أي وقت.
- إن كان لديك ملاحظات أو تريد التواصل مع فريق المطورين، استخدم قناة Qiskit على Slack أو مستودعات GitHub العامة ذات الصلة.
الميزات
تتوفر الميزات التالية في إضافات Visual Studio Code (VS Code) والمحررات المتوافقة معه، إضافةً إلى JupyterLab:
- تسريع توليد كود Qiskit بالاستفادة من الذكاء الاصطناعي التوليدي المبني على نماذج متخصصة في توليد كود Qiskit.
- دعم التعليمات المجردة والمحددة لتوليد التوصيات.
- عرض اقتراحات يمكنك مراجعتها وقبولها أو رفضها.
- دعم ملفات Python وملفات Jupyter notebook.
- تضمين ضوابط وقائية لتجنب الإجابة على أسئلة تمثّل خطرًا محتملًا على المستخدمين، كخطاب الكراهية.
لدمج مساعد كود Qiskit مباشرةً في بيئة التطوير الخاصة بك، اتبع التعليمات في الموضوع المناسب:
نموذج اللغة الكبير (LLM) خلف مساعد كود Qiskit
لتقديم اقتراحات الكود، يستخدم مساعد كود Qiskit نموذج لغة كبير (LLM). في هذه الحالة، يعتمد مساعد كود Qiskit حاليًا على النموذج 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 عالية الجودة، فضلًا عن التزامات Python والمحادثات. لمزيد من المعلومات حول عائلة نماذج Mistral AI، راجع توثيق Mistral AI. لمزيد من التفاصيل حول نماذج .*-qiskit، راجع مساعد كود Qiskit: تدريب نماذج LLM لتوليد كود الحوسبة الكمية.
نماذجنا الكبيرة المتخصصة في Qiskit متاحة أيضًا كنماذج مفتوحة المصدر. تحقق من جميع النماذج المتاحة على https://huggingface.co/Qiskit.
معياري Qiskit HumanEval و Qiskit HumanEval Hard
لاختبار النموذج mistral-small-3.2-24b-qiskit وغيره من النماذج، تعاونّا مع مناصري Qiskit والخبراء لإنشاء معياري التقييم القائمَين على التنفيذ، المعروفَين بـ Qiskit HumanEval (QHE) وQiskit HumanEval Hard (QHE Hard)، وأجرينا عليهما اختبارات النماذج. هذان المعياران مشابهان لـ HumanEval، ويتضمنان مسائل برمجية متعددة ومتحدية للحل، كلها مبنية على مكتبات Qiskit الرسمية.
يتكون كل معيار من نحو 150 اختبارًا، كل منها مبني من تعريف دالة يتبعه docstring يوضّح المهمة المطلوب من النموذج حلّها. يتضمن كل مثال أيضًا حلًّا مرجعيًّا قانونيًّا، فضلًا عن اختبارات وحدة للتحقق من صحة الحلول المولَّدة. توجد ثلاثة مستويات من الصعوبة للاختبارات: أساسي، ومتوسط، وصعب. معيار Qiskit HumanEval Hard هو نسخة من معيار Qiskit HumanEval، لكنه يزيل المعلومات المتعلقة باستيراد الكود، بحيث يحتاج النموذج اللغوي الكبير إلى تحديد الطريقة أو الكلاس المناسب للاستيراد. يجعل هذا التغيير مجموعة البيانات أكثر تحديًا لنماذج LLM وفقًا لاختباراتنا ونتائجنا الأولية.
مجموعتا بيانات Qiskit HumanEval وQiskit HumanEval Hard متاحتان على هذين الموقعَين: Qiskit HumanEval وQiskit HumanEval. يمكنك المساهمة في تطوير هذه المعايير عبر مستودع GitHub.
مزيد من المعلومات والاستشهادات
لمعرفة المزيد عن مساعد كود Qiskit ومعياري 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},
}
استخدام مساعد كود Qiskit في الوضع المحلي
تعلّم كيفية تثبيت أي من نماذج مساعد كود Qiskit وتهيئتها واستخدامها على جهازك المحلي.
- مساعد كود Qiskit في مرحلة الإصدار التجريبي وقد يتغير في أي وقت.
- إن كان لديك ملاحظات أو تريد التواصل مع فريق المطورين، استخدم قناة Qiskit على Slack أو مستودعات GitHub العامة ذات الصلة.
البدء السريع (موصى به)
أسهل طريقة للبدء مع مساعد كود Qiskit في الوضع المحلي هي استخدام نصوص الإعداد التلقائي لإضافة VS Code أو JupyterLab. تقوم هذه النصوص تلقائيًا بتثبيت Ollama لتشغيل نماذج LLM وتنزيل النموذج الموصى به وتهيئة الإضافة لك.
إعداد إضافة VS Code
نفِّذ الأمر التالي في طرفيتك:
bash <(curl -fsSL https://raw.githubusercontent.com/Qiskit/qiskit-code-assistant-vscode/main/setup_local.sh)
يُنفِّذ هذا النص الخطوات التالية:
- تثبيت Ollama (إن لم يكن مثبَّتًا مسبقًا)
- تنزيل نموذج مساعد كود Qiskit الموصى به وتهيئته
- إعداد إضافة VS Code للعمل مع نشرك المحلي
إعداد إضافة JupyterLab
نفِّذ الأمر التالي في طرفيتك:
bash <(curl -fsSL https://raw.githubusercontent.com/Qiskit/qiskit-code-assistant-jupyterlab/main/setup_local.sh)
سيقوم هذا النص بما يلي:
- تثبيت Ollama (إن لم يكن مثبَّتًا مسبقًا)
- تنزيل نموذج مساعد كود Qiskit الموصى به وتهيئته
- إعداد إضافة JupyterLab للعمل مع نشرك المحلي
النماذج المتاحة
النماذج الحالية
هذه أحدث النماذج الموصى بها للاستخدام مع مساعد كود Qiskit:
- Qiskit/mistral-small-3.2-24b-qiskit - Released October 2025
- qiskit/qwen2.5-coder-14b-qiskit - Released June 2025
- qiskit/granite-3.3-8b-qiskit - Released June 2025
- qiskit/granite-3.2-8b-qiskit - Released June 2025
نماذج GGUF (موصى بها للبيئات الشخصية/أجهزة اللابتوب)
نماذج بتنسيق GGUF مُحسَّنة للاستخدام المحلي وتستلزم موارد حسابية أقل:
-
mistral-small-3.2-24b-qiskit-GGUF – Released October 2025
Trained with Qiskit data up to version 2.1 -
qiskit/qwen2.5-coder-14b-qiskit-GGUF – Released June 2025
Trained with Qiskit data up to version 2.0 -
qiskit/granite-3.3-8b-qiskit-GGUF – Released June 2025
Trained with Qiskit data up to version 2.0 -
qiskit/granite-3.2-8b-qiskit-GGUF – Released June 2025
Trained with Qiskit data up to version 2.0
النماذج مفتوحة المصدر لمساعد كود Qiskit متاحة بتنسيق safetensors أو GGUF file format ويمكن تنزيلها من Hugging Face كما هو موضح أدناه.
إصدارات Qiskit المستخدمة في التدريب
| Model | Benchmark Metrics | Release date | Trained on 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 | January 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 | June 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 | June 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 | June 2025 | 2.0 |
| granite-8b-qiskit-rc-0.10 | 15.89 | 38.41 | 59.76 | — | — | — | — | — | — | — | February 2025 | 1.3 |
| granite-8b-qiskit | 17.88 | 44.37 | 53.66 | — | — | — | — | — | — | — | November 2024 | 1.2 |
Note: All models listed in the benchmark table were evaluated using their respective system prompt, defined in their Hugging Face model.
النماذج المتوقفة
هذه النماذج لم تعد تُصان بشكل نشط لكنها لا تزال متاحة:
- qiskit/granite-8b-qiskit-rc-0.10 - Released February 2025 (deprecated)
- qiskit/granite-8b-qiskit - Released November 2024 (deprecated)
الإعداد المتقدم
إن كنت تفضّل تهيئة إعدادك المحلي يدويًا أو تحتاج إلى مزيد من التحكم في عملية التثبيت، فوسِّع الأقسام أدناه.
Download from the Hugging Face website
اتّبع هذه الخطوات لتنزيل أي نموذج مرتبط بمساعد كود Qiskit من موقع Hugging Face:
- انتقل إلى صفحة نموذج Qiskit المطلوب على Hugging Face.
- اذهب إلى تبويب Files and Versions ونزِّل ملفات نموذج safetensors أو GGUF.
Download using the Hugging Face CLI
لتنزيل أي من نماذج مساعد كود Qiskit المتاحة باستخدام Hugging Face CLI، اتّبع الخطوات التالية:
-
ثبِّت Hugging Face CLI
-
سجِّل دخولك إلى حساب Hugging Face الخاص بك
huggingface-cli login -
نزِّل النموذج الذي تفضله من القائمة السابقة
huggingface-cli download <HF REPO NAME> <MODEL PATH> --local-dir <LOCAL PATH>
Manually deploy the Qiskit Code Assistant models in local through Ollama
ثمة طرق متعددة لنشر نموذج مساعد كود Qiskit المنزَّل والتفاعل معه. يوضح هذا الدليل استخدام Ollama على النحو التالي: إما مع تطبيق Ollama باستخدام تكامل Hugging Face Hub أو النموذج المحلي، أو مع حزمة llama-cpp-python.
Using the Ollama application
يوفر تطبيق Ollama حلًّا بسيطًا لتشغيل نماذج LLM محليًا. وهو سهل الاستخدام، مع واجهة سطر أوامر تجعل عملية الإعداد الكاملة وإدارة النماذج والتفاعل معها أمرًا مباشرًا. وهو مثالي للتجريب السريع للمستخدمين الذين يريدون التعامل مع تفاصيل تقنية أقل.
Install Ollama
-
نزِّل تطبيق Ollama
-
ثبِّت الملف المنزَّل
-
شغِّل تطبيق Ollama المثبَّت
معلوماتThe application is running successfully when the Ollama icon appears in the desktop menu bar. You can also verify the service is running by going to
http://localhost:11434/. -
جرِّب Ollama في طرفيتك وابدأ تشغيل النماذج. على سبيل المثال:
ollama run hf.co/Qiskit/Qwen2.5-Coder-14B-Qiskit
Set up Ollama using the Hugging Face Hub integration
يوفر تكامل Ollama/Hugging Face Hub طريقةً للتفاعل مع النماذج المستضافة على Hugging Face Hub دون الحاجة إلى إنشاء modelfile جديد أو تنزيل ملفات GGUF أو safetensors يدويًا. ملفات template وparams الافتراضية مدرجة بالفعل للنموذج على Hugging Face Hub.
-
تأكد من أن تطبيق Ollama يعمل.
-
انتقل إلى صفحة النموذج المطلوب وانسخ الرابط. على سبيل المثال، https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF.
-
من طرفيتك، نفِّذ الأمر:
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.
Set up Ollama with a manually downloaded Qiskit Code Assistant GGUF model
إن كنت قد نزّلت نموذج GGUF يدويًا مثل https://huggingface.co/Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF وتريد تجريب قوالب ومعاملات مختلفة، يمكنك اتّباع هذه الخطوات لتحميله في تطبيق Ollama المحلي.
-
أنشئ
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 -
Run the following command to create a custom model instance based on the
Modelfile.ollama create Qwen2.5-Coder-14B-Qiskit -f ./path-to-model-fileملاحظةThis process may take some time for Ollama to read the model file, initialize the model instance, and configure it according to the specifications provided.
Run the Qiskit Code Assistant model manually downloaded in Ollama
After the Qwen2.5-Coder-14B-Qiskit model has been set up in Ollama, run the following command to launch the model and interact with it in the terminal (in chat mode).
ollama run Qwen2.5-Coder-14B-Qiskit
Some useful commands:
ollama list- List models on your computerollama rm Qwen2.5-Coder-14B-Qiskit- Delete the modelollama show Qwen2.5-Coder-14B-Qiskit- Show model informationollama stop Qwen2.5-Coder-14B-Qiskit- Stop a model that is currently runningollama ps- List which models are currently loaded
Manually deploy the Qiskit Code Assistant models in local through the llama-cpp-python package
An alternative to the Ollama application is the llama-cpp-python package, which is a Python binding for llama.cpp. It gives you more control and flexibility to run the GGUF model locally, and is ideal for users who wish to integrate the local model in their workflows and Python applications.
- Install
llama-cpp-python - Interact with the model from within your application using
llama_cpp. For example:
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"]
You can also add text generation parameters to the model to customize the inference:
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"]
Manually deploy the Qiskit Code Assistant models in local through llama.cpp
Use the llama.cpp library
Another alternative is to use llama.cpp, an open-source library for performing LLM inference on a CPU with minimal setup.
It provides low-level control over the model execution and is typically run from the command line, pointing to a local GGUF model file.
There are several ways to install llama.cpp on your machine:
- Install llama.cpp using brew, nix, or winget
- Run with Docker: See out the Docker documentation by
llama.cppteam - Download pre-built binaries from the releases page
- Build from source by cloning this repository
Once installed, you can use llama.cpp to interact with GGUF models in conversation mode as follows:
# 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
You can also launch an OpenAI-compatible API server for the model in the following way:
llama-server -hf Qiskit/Qwen2.5-Coder-14B-Qiskit-GGUF
Advanced parameters
With the llama-cli program, you can control the model generation using command-line options. For example, you can provide an initial “system” prompt using the -p/--prompt flag. In conversation mode (-cnv), this initial prompt acts as the system message. Otherwise, you can simply prepend any desired instruction to your prompt text. You can also adjust sampling parameters - for instance: temperature (--temp), top-k (--top-k), top-p (--top-p), repetition penalty (--repeat-penalty), and the seed to use (--seed). The following is an example invocation using these options:
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.
Manually connect extensions to local deployment
استخدم إضافة VS Code وإضافة JupyterLab لمساعد كود Qiskit لإرسال طلبات إلى نموذج مساعد كود Qiskit المنشور محليًا. بمجرد أن يكون لديك تطبيق Ollama مُعدًّا مع النموذج، يمكنك تهيئة الإضافات للاتصال بالخدمة المحلية.
Connect with the Qiskit Code Assistant VS Code extension
مع إضافة VS Code لمساعد كود Qiskit، يمكنك التفاعل مع النموذج وإجراء استكمال الكود أثناء كتابته. يمكن أن يناسب ذلك المستخدمين الذين يبحثون عن مساعدة في كتابة كود Qiskit لتطبيقات Python الخاصة بهم.
- ثبِّت إضافة VS Code لمساعد كود Qiskit.
- في VS Code، اذهب إلى User Settings وعيِّن Qiskit Code Assistant: Url على رابط نشر Ollama المحلي (على سبيل المثال،
http://localhost:11434). - أعد تحميل VS Code بالذهاب إلى View > Command Palette... واختيار Developer: Reload Window.
يجب أن يظهر نموذج مساعد كود Qiskit المهيَّأ في Ollama في شريط الحالة وهو جاهز للاستخدام حينئذٍ.
Connect with the Qiskit Code Assistant JupyterLab extension
مع إضافة JupyterLab لمساعد كود Qiskit، يمكنك التفاعل مع النموذج وإجراء استكمال الكود مباشرةً في دفتر Jupyter الخاص بك. المستخدمون الذين يعملون بشكل أساسي مع دفاتر Jupyter يمكنهم الاستفادة من هذه الإضافة لتحسين تجربتهم في كتابة كود Qiskit.
- ثبِّت إضافة JupyterLab لمساعد كود Qiskit.
- في JupyterLab، اذهب إلى Settings Editor وعيِّن Qiskit Code Assistant Service API على رابط نشر Ollama المحلي (على سبيل المثال،
http://localhost:11434).
يجب أن يظهر نموذج مساعد كود Qiskit المهيَّأ في Ollama في شريط الحالة وهو جاهز للاستخدام حينئذٍ.
الخطوات التالية
- ثبِّت واستخدم الإضافة الرسمية لـ JupyterLab أو VS Code.
- اطّلع على أمثلة لاستخدام مساعد كود Qiskit في الدوائر، وضبط قمع الأخطاء، والنقل باستخدام مدراء التمريرات.