Qiskit / platypus

Qiskit Textbook (beta)
https://learn.qiskit.org
Apache License 2.0
143 stars 251 forks source link

As a learner, I would like to run code on IBM Quantum hardware without leaving the textbook, so that I can understand the impacts of noise in my experiments. #1196

Closed lerongil closed 2 years ago

lerongil commented 2 years ago

Background

Learners in the textbook should be able to run code on hardware within the textbook to see that it exists and understand the concept of noise. The final implementation should seem like a magical experience where the user needs to merely learn and write code to run on hardware without any other sign-up flows or inputing their own API token. In an effort to remain agile, this user story has been broken up into 2 phases: Exploratory and Execution. We should take as little time as possible in both phases to release this user story so please comment on suggestions for scoping down or clarifying.

Goal

Learners should be able to run qiskit code on IBM Quantum hardware directly from the scratchpad and code cells within the qiskit textbook.

Exploratory Phase:

Acceptance Criteria:

Design file:

Tasks to be done to accomplish the criterias:

pandasa123 commented 2 years ago

Some guardrails / thoughts:

Current Experience in Textbook:

Open Questions:

Tansito commented 2 years ago

From previous conversations about the interaction between our users and IQX users:

https://github.com/Qiskit/qiskit.org/discussions/2268#discussioncomment-1577608

This time if we want to increase the priority on this issue maybe we can contact with @delapuente directly and maybe Jorge or Ismael Rozas (Salva can tell us who can be good to join the conversation).

pandasa123 commented 2 years ago

Summary

We're going to use a server side cookie instead of API token, for security purpose

From a user POV: they have to create accounts on Qiskit and IQX to start. If they have never added their API token on Qiskit, we can ask them to add it and store that server side

Next Steps

JRussellHuffman commented 2 years ago

Design file here: https://www.figma.com/file/RWKSDXw64Pm6WG4ObDAl6H/2475-Run-on-hardware?node-id=37%3A721

Also adding that link to the description

JRussellHuffman commented 2 years ago

Removing the design label because the designs are mostly done.

lerongil commented 2 years ago

One slight update to the acceptance criteria: we want to make sure that this is something that can be measured. The last bullet in the acceptance criteria ensure we have attribution to this feature development.

Tansito commented 2 years ago

One slight update to the acceptance criteria: we want to make sure that this is something that can be measured. The last bullet in the acceptance criteria ensure we have attribution to this feature development.

Do you mean to have an score (like I don't know, from 0 to 10) and not only a check that says if the user passes or not?

JRussellHuffman commented 2 years ago

I think it's purely for analytics. We want to know if our users are actually using this feature.

pandasa123 commented 2 years ago

@frankharkins, I've created an issue to add a hardware example