German
Sprachen
English
Bengali
French
German
Japanese
Korean
Portuguese
Spanish
Tamil

Erste Schritte

Installation

Lassen Sie uns mit Qiskit beginnen! Als Erstes wählen Sie, wie Sie die Pakete ausführen und installieren. Hierzu gibt es drei verschiedene Möglichkeiten:

Qiskit unterstützt Python 3.7 oder neuere Versionen. Allerdings entwickeln sich sowohl Python als auch Qiskit weiter, so daß es Probleme mit der Kompatibilität geben kann, wenn es neue Versionen in dem einen oder anderen gibt.

Sie müssen ` Python <https://wiki.python.org/moin/BeginnersGuide/Download>` __ auf Ihr lokales System herunterladen, um beginnen zu können. ` Jupyter <https://jupyter.org/install>` __ wird für die Interaktion mit Qiskit empfohlen.

Um Qiskit sauber von anderen Anwendungen zu trennen und die Nutzung zu vereinfachen, wird die Verwendung einer virtuellen Python Umgebung empfohlen.

Erstellen Sie eine minimale Umgebung, in der nur Python installiert ist.

python3 -m venv /path/to/virtual/environment

Aktivieren Sie Ihre neue Umgebung.

source /path/to/virtual/environment/bin/activate

Hinweis: Wenn Sie Windows verwenden, verwenden Sie die folgenden Befehle in PowerShell.

python3 -m venv c:\path\to\virtual\environment
c:\path\to\virtual\environment\Scripts\Activate.ps1

Installieren Sie als Nächstes das Qiskit Paket.

pip install qiskit

Wenn die Pakete korrekt installiert wurden, können Sie pip list ausführen, um die aktiven Pakete in Ihrer virtuellen Umgebung zu sehen.

Wenn Sie beabsichtigen, Visualisierungsfunktionen oder Jupyter-Notebooks zu verwenden, wird empfohlen, Qiskit mit der zusätzlichen Visualisierungs-Unterstützung zu installieren:

pip install qiskit[visualization]

Als ein Benutzer von zsh (was die Standard-Shell für neuere Versionen von macOS ist) muss qiskit[visualization] in Anführungszeichen gesetzt werden:

pip install 'qiskit[visualization]'

Folgende Cloud-Anbieter haben Qiskit in ihrer Umgebung vorinstalliert:


IBM Quantum Lab

Build quantum applications and experiments with Qiskit in a cloud programming environment.

Strangeworks

A platform that enables users and organizations to easily apply quantum computing to their most pressing problems and research.

Eine Installation aus dem Quellcode bietet den Zugriff auf die aktuellste Version von Qiskit, statt auf die Version im Python Package Index (PyPI). Damit hat man die Möglichkeit, sich leichter die neueste Version von Qiskit anzusehen und zu erweitern.

Wenn Elemente und Komponenten aus dem Quelltext installiert werden, ist die Voreinstellung, dass die development-Version (welche mit dem git-master-Branch übereinstimmt) verwendet wird, und nicht die stable-Version (welche die Quelltextbasis der veröffentlichten pip-Pakete enthält). Weil die development-Versionen eines Elements oder einer Komponente üblicherweise die neuesten Funktionen und Änderungen beinhalten, erfordern diese in der Regel die Verwendung der development-Versionen aller übrigen Objekte.

Das Installieren von Elementen aus dem Quellcode erfordert die folgende Reihenfolge, um die Installation von Elementen aus einer älteren als der gewünschten Version zu vermeiden, falls die pip Versionen älter als die Quellversionen ist:

  1. qiskit-terra

  2. qiskit-aer

Um mit mehreren Komponenten und Elementen gleichzeitig zu arbeiten, müssen die folgenden Schritte für jedes Element ausgeführt werden.

Bemerkung

Die Terra- und Aer-Pakete benötigen beide zum Kompilieren aus dem Quelltext einen Compiler, bevor man diese installieren kann. Ignis, Aqua und das „IBM Quantum Provider“-Backend benötigen keinen Compiler.

Bemerkung

Aufgrund der Verwendung von Namespaces in Python muss darauf geachtet werden, wie Pakete installiert werden. Wenn Sie ein Element aus der Quelle installieren möchten, verwenden Sie nicht das qiskit -Meta-Paket. Folgen Sie diesem Handbuch und verwenden Sie eine separate virtuelle Umgebung für die Entwicklung. Wenn Sie vorhaben, eine vorhandene Installation mit Ihrer Entwicklung zu mischen, lesen Sie die Informationen unter https://github.com/pypa/sample-namespace-packages/blob/master/table.md für die Kombinationen von Installationsmethoden, die zusammen funktionieren.

Set up the Virtual Development Environment

python3 -m venv QiskitDevenv
source QiskitDevenv/bin/activate

Installing Terra from Source

Die Installation aus dem Quellcode erfordert, dass der Rust Compiler auf dem System installiert ist. Um den Rust Compiler zu installieren, empfehlen wir rustup zu nutzen, welches ein plattformübergreifender Rust Installer ist. Für die Verwendung von rustup kann der folgende Link verwendet werden:

https://rustup.rs/

, welcher die Anweisungen zur Installation von Rust auf Ihrer Plattform zur Verfügung stellt. Neben rustup sind auch andere Installationsmethoden verfügbar.

Sobald der Rust-Compiler installiert ist, kann man mit der Installation von Qiskit Terra fortfahren.

  1. Klonen Sie das Terra-Repository.

    git clone https://github.com/Qiskit/qiskit-terra.git
    
  2. Das Klonen des Repositorys erzeugt einen lokalen Ordner namens qiskit-terra.

    cd qiskit-terra
    
  3. Sollen Tests oder Linting Prüfungen durchgeführt werden, müssen die dazu erforderlichen Developer Anforderungen installiert werden.

    pip install -r requirements-dev.txt
    
  4. Install qiskit-terra.

    pip install .
    

Möchten Sie eine Installation im editierbaren Modus vornehmen, was bedeutet, dass Codeänderungen am Projekt keine Neuinstallation erfordern, kann man das wie folgt machen:

pip install -e .

Bei der Installation im editierbaren Modus werden die kompilierten Erweiterungen im Debugmodus ohne Optimierungen erstellt. Dies wirkt sich auf die Laufzeitleistung des kompilierten Codes aus. Wenn Sie den editierbaren Modus verwenden und den kompilierten Code in der Version mit aktivierten Optimierungen erstellen möchten, können Sie Folgendes ausführen:

python setup.py build_rust --release --inplace

nach dem Ausführen von pip wird die Binärdatei im Release-Modus erneut erstellt. Wenn Sie an Rust Code in Qiskit arbeiten, müssen Sie den Erweiterungscode jedes Mal neu erstellen, wenn Sie eine lokale Änderung vornehmen. pip install -e . wird die Rust-Erweiterung nur dann erstellen, wenn sie aufgerufen wird. Daher werden alle lokalen Änderungen, die Sie nach dem Ausführen von pip an den Rust-Code vornehmen, nicht im installierten Paket wiedergegeben, sofern Sie die Erweiterung nicht erneut erstellen. Sie können den obigen build_rust -Befehl nutzen, um dies zu tun (mit oder ohne --release basierend darauf, ob Sie im Debug-Modus oder im Release-Modus bauen wollen).

Anschließend können Sie die Codebeispiele nach der Installation von Terra ausführen. Sie können das Beispiel mit dem folgenden Befehl ausführen.

python examples/python/using_qiskit_terra_level_0.py

Installing Aer from Source

  1. Klonen Sie das Aer-Repository.

    git clone https://github.com/Qiskit/qiskit-aer
    

Die Installation von Aer ist abhängig vom verwendeten Betriebssystem. Da Aer ein kompiliertes C++ Programm mit Python-Schnittstelle ist, gibt es noch Nicht-Python-Abhängigkeiten für die Erstellung der Aer Binärdatei. Diese können je nach Betriebssystem nicht universell installiert werden.

Linux
  1. Compiler-Anforderungen installieren.

    Das Kompilieren von Aer benötigt einen C++-Compiler und entsprechende Header-Dateien.

    Wenn Sie Fedora oder eine gleichwertige Linux-Distribution verwenden, installieren Sie mit:

    dnf install @development-tools
    

    Für Ubuntu/Debian installieren Sie es mit:

    apt-get install build-essential
    
  2. Installieren Sie OpenBLAS Entwicklungs-Header.

    Wenn Sie Fedora oder eine gleichwertige Linux-Distribution verwenden, installieren Sie mit:

    dnf install openblas-devel
    

    Für Ubuntu/Debian installieren Sie es mit:

    apt-get install libopenblas-dev
    
macOS
  1. Abhängigkeiten installieren.

    Um den Clang Compiler auf macOS zu verwenden, benötigt man eine separate Bibliothek, welche OpenMP unterstützt. Diese und andere Abhängigkeiten kann man mit brew installieren.

    brew install libomp
    
  2. Installieren Sie dann eine BLAS-Implementierung; OpenBLAS ist die Standardauswahl.

    brew install openblas
    

    Als nächstes installiert man die Xcode Command Line Tools.

    xcode-select --install
    
Windows
  1. Alle Abhängigkeiten werden als Teil des oben installierten Visual C + + -Compilers hinzugefügt, so dass keine zusätzliche Konfiguration erforderlich ist.

Qiskit Aer ist ein Hochleistungs-Simulator-Framework für Quantenschaltkreise. Es bietet ` mehrere Backends <apidoc/aer_provider.html#simulator-backends>` __, um verschiedene Simulationsziele zu erreichen.

  1. Qiskit-aer direkt erstellen und installieren

    Hat man pip < 19.0.0 installiert und es wird keine benutzerdefinierte Konfiguration benötigt, kann man folgenden Befehl verwenden:

    cd qiskit-aer
    pip install .
    

    Dies wird sowohl die Binärdateien erstellen als auch Aer installieren.

    Alternativ, wenn Sie eine neuere Version von pip installiert haben oder eine spezielle Konfiguration benötigen, können Sie das Python-Wheel manuell erstellen.

    cd qiskit-aer
    python ./setup.py bdist_wheel
    

    If you need to set a custom option during the wheel build, refer to Custom options.

    Nachdem das Python-Wheel erstellt wurde, wird es im dist/ Verzeichnis des Aer Repositorys gespeichert. Die genaue Version is abhängig von

    cd dist
    pip install qiskit_aer-*.whl
    

    Der genaue Dateiname der ausgegebenen Wheel-Datei hängt von der aktuellen Version von Aer ab.

Custom options

Das Aer-Build-System verwendet scikit-build um die Kompilierung auszuführen, wenn es mit der Python-Schnittstelle erstellt wird. Es fungiert als Schnittstelle für setuptools um CMake aufzurufen und die Binärdateien für das lokales System zu kompilieren.

Durch die Komplexität, die mit dem Kompilieren von Binärdateien einhergeht, kann es sein, dass man für einen bestimmten Teil des Prozesses benutzerdefinierte Optionen angeben muss. Wie man Variablen übergibt, ist wie folgt beschrieben:

python setup.py bdist_wheel [skbuild_opts] [-- [cmake_opts] [-- build_tool_opts]]

wobei die Elemente in eckigen Klammern [] optional sind und skbuild_opts, cmake_opts, build_tool_opts durch ausgewählte Flags ersetzt werden. Eine Liste der CMake Optionen ist hier verfügbar: https://cmake.org/cmake/help/v3.6/manual/cmake.1.html#Optionen. Beispielsweise kann man folgenden Befehl verwenden:

python setup.py bdist_wheel -- -- -j8

Dadurch wird das Flag -j8 an das zugrunde liegende Build-System durchgereicht (in diesem Fall Automake), wodurch diesem mitgeteilt wird, dass man mit 8 parallelen Prozessen kompilieren möchte.

Ein typischer Anwendungsfall für solche Flags in Linux ist beispielsweise die Angabe einer bestimmten Version von C++-Compiler, welcher genutzt werden soll (normalerweise wenn der Standard-Version zu alt ist):

python setup.py bdist_wheel -- -DCMAKE_CXX_COMPILER=g++-7

der CMake vorgibt, den Befehl g++-7 anstelle des standardmäßigen g++, beim Kompilieren von Aer zu verwenden.

Ein weiterer typischer Anwendungsfall, abhängig von der Entwicklungsumgebung, is es die Plattform anzugeben und das statische Verlinken zu deaktivieren.

python setup.py bdist_wheel --plat-name macosx-10.9-x86_64 \
-- -DSTATIC_LINKING=False -- -j8

Hierbei ist --plat-name ein Flag für setuptools, um den in den Paket-Metadaten zu verwendenden Plattform-Namen anzugeben. -DSTATIC_LINKING ist ein Flag für CMake, um das statische Verlinken zu deaktivieren und -j8 ist ein Flag für Automake, um 8 Prozesse bei der Kompilierung zu verwenden.

Eine Liste der gängigen Optionen je nach Plattform sind:

Plattform

Tool

Option

Use-Case

Alle

Automake

-j

Gefolgt von einer Zahl, setzt diese Option die Anzahl der Prozesse fest, die zur Kompilierung verwendet werden sollen.

Linux

CMake

-DCMAKE_CXX_COMPILER

Wird verwendet, um einen bestimmten C++ -Compiler anzugeben. Dies ist häufig erforderlich, wenn der standardmäßig verwendete g++ zu alt ist.

OSX

setuptools

–plat-name

Wird verwendet, um den Plattformnamen im ausgegebenen Python-Paket anzugeben.

OSX

CMake

-DSTATIC_LINKING

Wird verwendet um anzugeben, ob statisch gelinkt werden soll oder nicht.

Bemerkung

Manche dieser Optionen sind nicht plattformspezifisch. Die entsprechenden Plattformen sind aufgeführt, weil sie meistens dort genutzt werden. In der jeweiligen Dokumentation des Tools findet man bei Bedarf weitere Informationen.

Plattformunterstützung

Qiskit bemüht sich, so viele Plattformen wie möglich zu unterstützen, aber aufgrund von Einschränkungen bei verfügbaren Testressourcen und Plattformverfügbarkeit können nicht alle Plattformen unterstützt werden. Die Plattformunterstützung für Qiskit ist in 3 Stufen mit unterschiedlichen Unterstützungsstufen für jede Schicht unterteilt. Für Plattformen außerhalb dieser Systeme ist Qiskit wahrscheinlich noch installierbar, aber es ist nicht getestet und Sie müssen Qiskit (und wahrscheinlich Qiskit-Abhängigkeiten) von der Quelle aus erstellen.

Darüber hinaus unterstützt Qiskit nur CPython. Die Ausführung mit anderen Python-Interpreten wird derzeit nicht unterstützt.

Tier 1 (Stufe 1)

Auf Tier 1 (Stufe 1) unterstützte Plattformen werden im Rahmen der Entwicklungsprozesse vollständig getestet, um sicherzustellen, dass eine vorgeschlagene Änderung ordnungsgemäß funktioniert. Vorkompilierte Binärdateien werden als Teil des Releaseprozesses erstellt, getestet und für PyPI veröffentlicht. Diese Plattformen werden voraussichtlich mit nur einer funktionierenden Python-Umgebung installierbar sein, da alle Abhängigkeiten auf diesen Plattformen verfügbar sind.

Tier 1 (Stufe 1) -Plattformen sind derzeit:

  • Linux x86_64 (Distributionen, kompatibel mit der manylinux 2010 Package-Spezifikation).

  • macOS x86_64 (10.9 oder neuer)

  • Windows 64-Bit

Tier 2 (Stufe 2)

Tier 2 (Stufe-2)-Plattformen werden nicht im Vorfeld als Teil des Entwicklungsprozesses getestet. Vorkompilierte Binärdateien werden jedoch als Teil des Releaseprozesses erstellt, getestet und für PyPI veröffentlicht, und diese Pakete können mit nur einer funktionierenden Python-Umgebung installiert werden.

Tier 2 (Stufe 2) Plattformen sind derzeit:

Stufe 3

Stufe-3-Plattformen werden nicht als Teil des Entwicklungsprozesses getestet. Vorkompilierte Binärdateien werden in PyPI als Teil des Release-Prozesses erstellt und veröffentlicht, ohne dass es überhaupt zu Testen kommt. Möglicherweise sind sie nicht nur mit einer funktionierenden Python-Umgebung installierbar und benötigen möglicherweise einen C/C++-Compiler oder zusätzliche Programme, um Abhängigkeiten aus dem Quellcode als Teil des Installationsprozesses zu erstellen. Diese Plattformen werden nur auf der Grundlage von „best effort support“ unterstützt.

Stufe 3 Plattformen sind derzeit:

  • Linux aarch64 (Distributionen kompatibel mit der manylinux 2014 Paketspezifikation)

  • Linux aarch64 (Distributionen kompatibel mit der manylinux 2014 Paketspezifikation)

  • macOS arm64 (10.15 oder neuer)

  • Linux i686 (Distributionen kompatibel mit der ` manylinux 2010 <https://www.python.org/dev/peps/pep-0599/>` __ Paketspezifikation) für Python > = 3.10

  • Windows 32bit für Python > = 3.10

Bereit loszulegen?

Qiskit from the ground up

Learn how to build, execute, and post-process quantum circuits with Qiskit.

Start learning Qiskit

Dive into the tutorials

Find out how to leverage Qiskit for everything from single-circuits to full quantum application development.

Qiskit tutorials