Qiskit / qiskit-tutorials

A collection of Jupyter notebooks showing how to use the Qiskit SDK
Apache License 2.0
2.28k stars 1.28k forks source link

Tutorial moving status #1473

Closed HuangJunye closed 10 months ago

HuangJunye commented 1 year ago

As part of https://github.com/Qiskit/RFCs/issues/41, we are planning to migrate qiskit-tutorials content to qiskit-terra. This issue assess the current status of the tutorials content and recommend actions. This is a draft. This list will be reformatted and linked with existing issues.

Quantum circuits -> moved to Terra

Advanced circuits -> moved to Terra

Classical simulators -> moved to Aer

Algorithms -> moved to qiskit-algorithms

The content in this section is pretty good. I recommend making the introduction notebook a full fledge tutorial with more hand holding and background information and convert all the other tutorials into how-to guides.

Operators -> moved to Terra, will be removed

As stated in https://github.com/Qiskit/qiskit-terra/issues/10666

Sample algorithms in Qiskit

woodsp-ibm commented 1 year ago

I wonder with this one

vqe_simulation_with_noise: can be moved to Aer. We can link to it from algorithms_introduction tutorial.

When it was based on QuantumInstance it use to show not only adding a noise model but also QI's noise mitigation. The latter is something only the Runtime does at present. There is an issue around adding some sort of mitigation there so you could experiment a bit further with local simulator before moving to the runtime.

Now in regards of algorithms and running on different backends it comes up all the time as primitives are still new. A tutorial/howto in this regard might involve primitives from different providers - switching backends is again more related to runtime but the connection to switching primitives often needs to be explained. I mention this since sometimes I refer to that Aer tutorial as its using a different primitive (other than qiskit.primitives one) with VQE.

ElePT commented 10 months ago

An update on the status of the algorithm tutorials to make sure we are all on the same page, the move to qiskit-algorithms is happening in this PR, and following the list above with 2 main differences:

  1. tutorial 03 vqe_simulation_with_noise is being moved to qiskit-algorithms, and not aer. This is due to the need to completely decouple qiskit-algorithms, we could not (and should not) add it as a dependency to aer.
  2. tutorial 09 IQPE is not being moved to qiskit-algorithms because, as mentioned above, is not using the qiskit_algorithms IQPE class, but rather showing how to build it from scratch. I suggest keeping in mind that this material exists in case we ever want to submit a new qiskit tutorial for IQPE, although I am not sure how much interest there would be to have it as a qiskit tutorial (I am aware that the QPE tutorial was removed from the runtime tutorials https://github.com/Qiskit/qiskit-ibm-runtime/pull/925). The best location for it would probably be the textbook, I can see that there is a QPE entry already, but the link seems to be broken: https://qiskit.org/learn/course/ch-applications/tsp/
Eric-Arellano commented 10 months ago

Now that the tutorials are almost done being moved, I'm closing this in favor of https://github.com/Qiskit/documentation/issues/874.