✉ ניוזלטר
🌐 עברית
תוכנה3 דק' קריאה

IBM מרחיבה את Qiskit עוד מעבר ל-Python עם השקת SDK v2.6

SDK v2.6 של Qiskit מבית IBM מוסיף מנהל מעברים (pass manager) ל-C API, סריאליזציה מקורית של QPY ופעולות מותאמות אישית, כחלק מהתקדמות IBM לעבר תהליכי עבודה שאינם מחייבים Python.

עמוד זה תורגם מאנגלית. שמות החברות והמוצרים וקישורי המקור נותרו ללא שינוי. לקריאת המקור באנגלית

IBM השיקה את Qiskit SDK v2.6, עדכון תוכנה המתמקד בממשק ה-C ברמה הנמוכה של הפרויקט ולא בשכבת ה-Python המוכרת יותר שלו. לפי תקציר ההשקה של IBM מ-22 באוקטובר, העדכון מוסיף מסגרת pass-manager ל-C API, מביא את סריאליזציית המעגלים של QPY לתהליכי עבודה בשפות מקומפלות, ומאפשר למפתחים להגדיר פעולות קוונטיות מותאמות אישית ישירות מתוך C. יחד, השינויים הללו ממשיכים את המאמץ של IBM להפוך חלקים גדולים יותר של Qiskit לשמישים ללא סביבת ריצה של Python.

מה הוכרז

גרסת v2.6 מרחיבה את ה-C API של Qiskit, ש-IBM מתארת כממשק ברמה נמוכה למודל הנתונים הליבתי של Qiskit, המבוסס על Rust, לשימוש מתוך שפות מקומפלות. ב-IBM אומרים שהממשק מיועד הן לשימוש עצמאי ללא Python והן לבניית הרחבות Python בעלות ביצועים גבוהים יותר, שמקיימות אינטראקציה ישירה עם אובייקטי Rust של Qiskit.

ב-Qiskit v2.6, IBM הוסיפה ל-C API מסגרת כללית של pass manager. הרכיבים החדשים כוללים את QkPassManager, QkPassVtable ו-QkIrHandle, שביחד מאפשרים למפתחים ליצור מעברי קומפיילר ולשרשר אותם לצינורות עיבוד עם בדיקת טיפוסים על פני כמה ייצוגי ביניים.

הגרסה גם חושפת פונקציות סריאליזציה של QPY ב-C API, כך שתוכניות שנכתבו בשפות כמו C, C++ ו-Julia יכולות לכתוב ולקרוא את פורמט המעגלים הבינארי של Qiskit בלי לבצע מעבר הלוך ושוב דרך Python. בנוסף, מפתחים יכולים כעת להגדיר פעולות מותאמות אישית דרך ממשק C vtable, כולל פעולות מקומיות לחומרה, לפי IBM.

הפרטים הטכניים

ב-IBM אומרים שמסגרת ה-pass manager החדשה יכולה לאמת צינור קומפילציה לפני הביצוע, באמצעות בדיקה של ייצוגי הקלט והפלט המוצהרים עבור כל מעבר. הייצוגים המובנים כוללים את QkCircuit ו-QkDag, בעוד שגם IR-ים המוגדרים על ידי המשתמש ניתנים לתיאור באמצעות QkIrHandle.

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

בכל הנוגע לסריאליזציה, Qiskit 2.6 הופכת את פורמט QPY v18 לברירת המחדל. ב-IBM אומרים שגרסה זו מקטינה את גודל המעגלים שעברו סריאליזציה באמצעות קידוד קומפקטי יותר עבור אוגרים קוונטיים וקלאסיים. לפי החברה, מעגלים שמיוצרים דרך ה-C API נשארים תואמים למודול qiskit.qpy של Python.

הגרסה משאירה את גרסת ה-Python המינימלית הנתמכת על 3.10, בעוד שבנייה מקוד מקור דורשת כעת Rust 1.89. עמוד מפת הדרכים של IBM גם מציין כי Qiskit 2.6.0 שוחררה ב-16 באוקטובר 2026 וכי תיקוני באגים יסופקו דרך גרסאות patch או דרך גרסת המשנה הבאה.

למה זה חשוב

עבור רוב משתמשי Qiskit, Python עדיין נותרת נקודת הכניסה המרכזית. אבל IBM בונה בבירור גם לעבר מודל פריסה שונה: גישה משפות מקומפלות לאותה ליבת קומפיילר וסטאק הרצה.

השינוי הזה רלוונטי לסביבות מחשוב עתיר ביצועים, שבהן Python יכולה להוות מגבלה מבחינת אריזה, סביבת ריצה או אינטגרציה. בתיעוד של IBM נכתב כי ה-C API נועד לספק ABI מוגדר למודל הנתונים הפנימי ב-Rust, והפוסט בבלוג של החברה מציג את v2.6 כעוד צעד לעבר שימוש ב-Qiskit בסביבות שבהן Python אינה מותקנת.

הוא גם מאותת על מעבר ארכיטקטוני רחב יותר. מפת הדרכים של Qiskit מראה ש-IBM פועלת לקראת יציבות רשמית של ABI ו-API עבור ממשק ה-C ב-v2.7, לצד IR חדש לשלב האמצעי עבור קומפילציה עמידה לתקלות. עבור v2.8, מפת הדרכים מצביעה על BackendV3, שמתואר שם כממשק backend מקורי ל-Rust שנחשף ל-Python ול-C.

למה לשים לב

השאלה המיידית היא יציבות. בתיעוד הנוכחי של ה-C API של IBM נכתב שעדיין יש לראות בממשק ניסיוני, ושהוא עשוי להשתנות בין גרסאות משנה. ההסתייגות הזו חשובה עבור צוותי תוכנה ששוקלים אינטגרציה עמוקה.

אבן הדרך הבאה, אם כן, היא Qiskit 2.7. לפי מפת הדרכים ב-GitHub, הגרסה הזו צפויה להגדיר הבטחות יציבות עבור ה-C API ולהרחיב עוד את יכולות הקומפיילר. אם IBM תספק זאת, הנתיב הלא-מבוסס-על-Python של Qiskit יתחיל להיראות פחות כמו פרויקט תשתיתי פנימי ויותר כמו ממשק ייצור עבור מחסניות תוכנה קוונטית בשפות מקומפלות.

מקורות

המידע בעמוד זה מבוסס על המקורות שלהלן, שאוחזרו על ידי DesignQuantum.

  1. Qiskit SDK v2.6 release summary | IBM Quantum Computing Blog ibm.com
  2. Qiskit SDK C API documentation (latest version) | IBM Quantum Documentation quantum.cloud.ibm.com
  3. Roadmap github.com
  4. IBM Releases Qiskit SDK v2.6 with C API Pass-Manager Framework, Native QPY Serialization, and Custom Operations - Quantum Computing Report quantumcomputingreport.com