התקנת Qiskit
בין אם תעבוד בסביבה מקומית ובין אם בסביבת ענן, הצעד הראשון לכל המשתמשים הוא התקנת Qiskit.
(אם אתה מתקין את Qiskit בפעם הראשונה, דלג ישירות לחלק התקנה והגדרה. הודעה זו רלוונטית רק למשתמשים שהתקינו את Qiskit בעבר.)
למי שמשדרג מגרסה 0.x ל-1.0 ומעלה: שים לב שמכיוון ש-Qiskit v1.0 משתמשת במבנה אריזה חדש, לא ניתן להשתמש ב-pip install -U qiskit לשדרוג מכל גרסת Qiskit 0.x ל-1.0.
ראה את מדריך המעבר ל-Qiskit 1.0 לפרטים ולהוראות.
עדכונים עתידיים החל מ-Qiskit 1.0 יאפשרו שדרוגים in-place.
התקנת Qiskit SDK ולקוח Qiskit Runtime
-
התקן את Python. בדוק את חלק "Programming Language" בדף הפרויקט של Qiskit ב-PyPI כדי לגלות אילו גרסאות Python נתמכות בגרסה האחרונה. להוראות הורדה, ראה את מדריך המתחילים של Python.
מומלץ להשתמש בסביבות וירטואליות של Python כדי להפריד בין Qiskit לבין יישומים אחרים.
הערהאם אתה חדש בסביבות וירטואליות, לחץ כאן למידע נוסף.
סביבת Python וירטואלית היא מרחב מבודד לעבודה עם Python למטרה ספציפית — כך שתוכל להתקין כל חבילה שתרצה, ולהגדיר ספריות, תלויות וכן הלאה, מבלי להשפיע על סביבת Python ה"בסיסית" במחשב שלך.
יתרון חשוב אחד של סביבה וירטואלית הוא שאם סביבת ה-Python שלך נפגמת בשלב כלשהו, אתה יכול בקלות למחוק את הסביבה הוירטואלית ולהתחיל מחדש!
בחר מיקום מועדף לאחסון מידע על הסביבות הוירטואליות שלך. בדרך כלל הן מאוחסנות בתיקייה בשם
.venvבתוך כל תיקיית פרויקט שאתה עובד בה.ראשית, נווט לתיקיית הפרויקט שלך וצור סביבה מינימלית עם Python בלבד.
- macOS
- Linux
- Windows
python3 -m venv .venvpython3 -m venv .venvpython -m venv .venvלאחר מכן, הפעל את הסביבה החדשה שלך.
- macOS
- Linux
- Windows
source .venv/bin/activatesource .venv/bin/activateאם אתה משתמש ב-PowerShell:
.venv\Scripts\Activate.ps1אם אתה משתמש ב-Git Bash:
source .venv/scripts/activateאם אתה משתמש ב-command prompt:
.venv\Scripts\activate -
התקן את pip אם הוא עדיין לא מותקן בסביבה שלך. pip הוא מנהל חבילות Python שבאמצעותו מתקינים את Qiskit וחבילות Python אחרות. השתמש ב-
pip listכדי לראות מה נמצא בסביבה הוירטואלית שלך. ברוב סביבות Python, pip כבר מותקן. -
התקן את Qiskit SDK. אם אתה מתכנן להריץ משימות על חומרת קוונטים, התקן גם את Qiskit Runtime.
pip install qiskitpip install qiskit-ibm-runtimeהוספת תמיכה בויזואליזציהאם אתה מתכוון להשתמש בפונקציונליות ויזואליזציה או ב-Jupyter notebooks, התקן גם את המודול
qiskit.visualization. ראה את מסמך העזר של Visualizations API למידע נוסף.
-
אם אתה רוצה להריץ Jupyter notebook עם חבילות Qiskit שהרגע התקנת, עליך להתקין את Jupyter בסביבה שלך.
pip install jupyterלאחר מכן פתח את ה-notebook שלך כך:
jupyter notebook <path/to/notebook.ipynb>
אם אתה מתכנן לעבוד באופן מקומי ולהשתמש בסימולטורים המובנים ב-Qiskit, ההתקנה שלך הושלמה. אם אתה רוצה להריץ משימות על QPU של IBM, המשך להגדרת חשבון IBM Cloud שלך.
בדוק מדי פעם את הערות ה גרסה של Qiskit ואת הערות הגרסה של Qiskit Runtime כדי לראות גרסאות חדשות. אנו ממליצים לעדכן תכופות את הדרישות שלך עבור qiskit ו-qiskit-ibm-runtime, למשל על ידי שינוי הגרסאות ב-requirements.txt לגרסאות האחרונות, ואז הרצת pip install -r requirements.txt או הפקודה המתאימה לזרימת העבודה לניהול התלויות שלך.
פתרון בעיות
שגיאת "No Module 'qiskit'" עם Jupyter Notebook
אם השתמשת ב-pip install qiskit והגדרת את הסביבה הוירטואלית שלך ב-Anaconda, ייתכן שתקבל את השגיאה No Module 'qiskit' כשאתה מריץ מדריך ב-Jupyter Notebook. אם לא התקנת את Qiskit או הגדרת את הסביבה הוירטואלית שלך, תוכל לעקוב אחר שלבי ההתקנה.
השגיאה נגרמת כאשר מנסים לייבא את חבילת Qiskit בסביבה שבה Qiskit אינו מותקן. אם הפעלת את Jupyter Notebook מ-Anaconda-Navigator, ייתכן ש-Jupyter Notebook פועל בסביבה הבסיסית (root), ולא ב סביבה הוירטואלית שלך. בחר סביבה וירטואלית ב-Anaconda-Navigator מתפריט הנפתח Applications on. בתפריט זה, תוכל לראות את כל הסביבות הוירטואליות בתוך Anaconda, ותוכל לבחור את הסביבה שבה מותקן Qiskit כדי להפעיל את Jupyter Notebook.
שגיאות קומפילציה במהלך ההתקנה
Qiskit תלוי במספר חבילות Python קוד-פתוח אחרות, אשר מותקנות אוטומטית בעת ביצוע pip install qiskit. בהתאם לפלטפורמה ולגרסת ה-Python של מערכת שלך, ייתכן שחבילה מסוימת אינה מספקת קבצים בינאריים מוכנים מראש למערכת שלך. תוכל לעיין בתמיכה במערכת הפעלה לרשימת פלטפורמות הנתמכות על ידי Qiskit, שחלקן עשויות להצריך מהדר נוסף. במקרים שבהם אין קבצים בינאריים מוקמפלים מראש, pip ינסה לקמפל את החבילה מקוד המקור, מה שעלול לדרוש תלויות נוספות שצריך להתקין ידנית.
אם הפלט של pip install qiskit מכיל שורות דומות ל:
Failed building wheel for SOME_PACKAGE
...
build/temp.linux-x86_64-3.5/_openssl.c:498:30: fatal error
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
אנא בדוק את התיעוד של החבילה שנכשלה בהתקנה (בקוד לדוגמה, SOME_PACKAGE) למידע על אופן התקנת הספריות הנדרשות לקמפילציה מקוד מקור.
תמיכה במערכת הפעלה
Qiskit שואפת לתמוך בכמה שיותר מערכות הפעלה, אך בשל מגבלות במשאבי בדיקה זמינים וזמינות מערכות הפעלה, לא ניתן לתמוך בכל מערכות ההפעלה. תמיכת מערכת ההפעלה עבור Qiskit מחולקת לשלוש שכבות עם רמות תמיכה שונות לכל שכבה. לפלטפורמות מחוץ לאלה, כגון FreeBSD או WebAssembly (WASI), ייתכן ש-Qiskit עדיין ניתן להתקנה, אך אינה נבדקת ויהיה עליך לבנות את Qiskit (וככל הנראה את תלויות Qiskit) מקוד המקור.
בנוסף, Qiskit תומכת רק ביישום CPython של שפת Python. הפעלה עם מפרשי Python אחרים כגון PyPy אינה נתמכת.
Qiskit v2.x
בסדרת הגרסאות של Qiskit v2.x, הפלטפורמות הנתמכות הן:
שכבה 1
מערכות הפעלה בשכבה 1 נבדקות במלואן כחלק מתהליכי הפיתוח כדי להבטיח שכל שינוי מוצע יפעל כראוי. קבצים בינאריים מוקמפלים מראש נבנים, נבדקים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור. בדרך כלל, כל עוד יש סביבת Python פעילה מותקנת, ניתן להתקין את Qiskit על מערכות הפעלה אלה מבלי להתקין תלויות נוספות.
מערכות הפעלה בשכבה 1:
- Linux x86_64 (הפצות תואמות למפרט האריזה manylinux 2014).
- macOS ARM64 (11.0 ומעלה)
- Windows 64-bit (Windows 10 ומעלה נתמך)
- Linux AArch64 (הפצות תואמות למפרט האריזה manylinux 2014)
שכבה 2
מערכות הפעלה בשכבה 2 אינן נבדקות כחלק מתהליך הפיתוח. עם זאת, קבצים בינאריים מוקמפלים מראש נבנים, נבדקים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור, וניתן לצפות שחבילות אלה יותקנו עם סביבת Python פעילה בלבד. ייתכן עיכוב בפרסום חבילות עבור מערכות אלה, מכיוון שכשלים בבדיקות עשויים להתגלות מאוחר יותר, וכשלים בפרסום לא יחסמו את פרסום החבילה עבור מערכות שכבה 1.
מערכות הפעלה בשכבה 2:
- macOS x86_64 (10.12 ומעלה)
שכבה 3
מערכות הפעלה בשכבה 3 אינן נבדקות כחלק מתהליך הפיתוח. קבצים בינאריים מוקמפלים מראש נבנים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור אך אינם נבדקים. ייתכן שלא ניתן יהיה להתקינם עם סביבת Python פעילה בלבד, וייתכן שיידרש מהדר C/C++ או תוכניות נוספות לבניית תלויות מקוד המקור כחלק מתהליך ההתקנה. התמיכה במערכות הפעלה אלה היא במאמץ מיטבי בלבד.
מערכות הפעלה בשכבה 3:
- Linux ppc64le (הפצות תואמות למפרט האריזה manylinux 2014)
- Linux s390x (הפצות תואמות למפרט האריזה manylinux 2014)
החל מ-Qiskit v2.0.0, רק פלטפורמות 64-bit נתמכות ופלטפורמות 32-bit אינן נתמכות. לא תוכל לבנות מקוד מקור על פלטפורמות 32-bit גם כן, מכיוון שקוד Rust הפנימי של Qiskit מניח רוחב מצביע של 64-bit.
Qiskit v1.x
בסדרת הגרסאות של Qiskit v1.x, הפלטפורמות הנתמכות הן:
שכבה 1
מערכות הפעלה בשכבה 1 נבדקות במלואן כחלק מתהליכי הפיתוח כדי להבטיח שכל שינוי מוצע יפעל כראוי. קבצים בינאריים מוקמפלים מראש נבנים, נבדקים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור. בדרך כלל, כל עוד יש סביבת Python פעילה מותקנת, ניתן להתקין את Qiskit על מערכות הפעלה אלה מבלי להתקין תלויות נוספות.
מערכות הפעלה בשכבה 1:
- Linux x86_64 (הפצות תואמות למפרט האריזה manylinux 2014).
- macOS x86_64 (10.12 ומעלה)
- macOS ARM64 (11.0 ומעלה)
- Windows 64-bit (Windows 10 ומעלה נתמך)
שכבה 2
מערכות הפעלה בשכבה 2 אינן נבדקות כחלק מתהליך הפיתוח. עם זאת, קבצים בינאריים מוקמפלים מראש נבנים, נבדקים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור, וניתן לצפות שחבילות אלה יותקנו עם סביבת Python פעילה בלבד.
מערכות הפעלה בשכבה 2:
- Linux AArch64 (הפצות תואמות למפרט האריזה manylinux 2014)
שכבה 3
מערכות הפעלה בשכבה 3 אינן נבדקות כחלק מתהליך הפיתוח. קבצים בינאריים מוקמפלים מראש נבנים ומפורסמים ל-PyPI כחלק מתהליך ההוצאה לאור אך אינם נבדקים. ייתכן שלא ניתן יהיה להתקינם עם סביבת Python פעילה בלבד, וייתכן שיידרש מהדר C/C++ או תוכניות נוספות לבניית תלויות מקוד המקור כחלק מתהליך ההתקנה. התמיכה במערכות הפעלה אלה היא במאמץ מיטבי בלבד.
מערכות הפעלה בשכבה 3:
- Linux ppc64le (הפצות תואמות למפרט האריזה manylinux 2014)
- Linux s390x (הפצות תואמות למפרט האריזה manylinux 2014)
- Linux i686 (הפצות תואמות למפרט האריזה manylinux 2014)
- Windows 10 32-bit
הצעדים הבאים
-
הגדר את חשבון IBM Cloud שלך.
-
עקוב אחר השלבים ב-Hello world כדי לכתוב ולהריץ תוכנית קוונטית.
-
נסה מדריך מ-IBM Quantum Learning.