Folosește Qiskit Code Assistant în JupyterLab
Află cum să instalezi, să folosești, să configurezi și să dezinstalezi extensia oficială Qiskit Code Assistant în JupyterLab.
Instalează extensia JupyterLab
Pentru a instala extensia JupyterLab, rulează următoarea comandă dintr-un terminal:
pip install qiskit-code-assistant-jupyterlab
După instalarea extensiei, pornește JupyterLab:
jupyter lab
Extensia se încarcă automat și apare în bara de jos a ferestrei JupyterLab. Consultă documentația JupyterLab pentru ajutor în lucrul cu JupyterLab.
Configurează setările extensiei
Se recomandă să editezi următoarele setări JupyterLab accesând Settings -> Settings Editor:
-
Apasă pe Inline Completer, găsește „Show widget" și alege Always. Astfel, widget-ul de completare inline va fi afișat întotdeauna, putând parcurge și selecta un element de completare.
-
Apasă pe Code Completion și mărește valoarea pentru „Default timeout for a provider." la
10000sau 10 secunde. Valoarea implicită este de 1 secundă, dar API-ul Qiskit Code Assistant ar putea dura mai mult pentru a găsi o sugestie. Această setare se aplică doar meniului contextual standard invocat cuTab. Completarea inline are o valoare implicită de 10 secunde.
Alte setări pe care poate vrei să le modifici:
-
Scurtăturile de tastatură pot fi schimbate din Settings > Settings Editor > Keyboard Shortcuts.
-
Poți schimba token-ul API IBM Quantum utilizat din paleta de comenzi JupyterLab. Pentru aceasta, apasă
Alt+Shift+C, cautăqiskit, selectează comanda Qiskit Code Assistant: Set IBM Quantum API token și lipește cheia ta. -
[Avansat] Pentru a schimba instanța serviciului Qiskit Code Assistant pe care extensia ar trebui să o utilizeze, editează setarea
serviceUrldin Qiskit Code Assistant. -
[Avansat] Scurtăturile de tastatură pot fi modificate căutând
completerîn setările Keyboard Shortcuts (Settings -> Settings Editor -> Keyboard Shortcuts) și adăugând noi scurtături pentru comenzile relevante.
Începe să folosești extensia Qiskit Code Assistant pentru JupyterLab
Autentificare și configurare
După instalarea extensiei, aceasta încearcă să te autentifice. Implicit, pachetul încearcă să se autentifice la serviciile IBM Quantum cu cheia API definită și folosește cheia din variabila de mediu QISKIT_IBM_TOKEN sau din fișierul ~/.qiskit/qiskit-ibm.json (sub secțiunea default-ibm-quantum). Dacă ai nevoie de ajutor pentru configurarea contului, urmează instrucțiunile din Configurează-ți contul IBM Cloud.
Implicit, extensia folosește modelul mistral-small-3.2-24b-qiskit, care este listat în Model Picker din bara de stare de jos.
Prima dată când folosești modelul mistral-small-3.2-24b-qiskit, se deschide o fereastră care listează câteva restricții importante de care trebuie să fii conștient când utilizezi modelul. Apasă Accept pentru a activa modelul pentru generarea de cod.
Generează cod
Pe măsură ce îți dezvolți codul folosind Qiskit, poți cere ajutorul lui Qiskit Code Assistant. În general, asistentul sugerează cod mai bun ca răspuns la comentarii Python sau docstring-uri, dar îl poți folosi oriunde în fișierul tău.
Pentru a obține o sugestie de cod, tastează un prompt, apoi apasă Alt + . sau Alt + \. Există două tipuri de prompturi pe care le poți folosi:
- Introdu cod parțial și primești o sugestie pentru a-l finaliza. Exemplu:
from qiskit.circuit import QuantumCircuit
from qiskit.transpiler import generate_preset_pass_manager
from qiskit_ibm_runtime import SamplerV2 as Sampler
from qiskit_ibm_runtime.fake_provider import FakeManilaV2
# Bell Circuit
qc = QuantumCircuit(2)
qc.h(0)
qc.cx(0, 1)
qc.mea # Type Ctrl + . for a code suggestion. - Tastează semnul diez (#), apoi tastează promptul tău. Exemplu:
# Give me a random circuit of 5 qubits and a depth of 4.
Lucrează cu sugestiile de cod
Folosește următoarele comenzi pentru a accepta, respinge și parcurge sugestiile:
Alt+[șiAlt+]pot fi folosite pentru a parcurge lista de sugestii (dacă există mai mult de una).Alt+TabsauAlt+ENDacceptă codul sugerat și îl inserează la poziția curentă a cursorului.
În plus, după ce asistentul rulează, poți folosi butoanele de pe widget pentru a parcurge sau accepta sugestia:
Serviciul poate dura uneori câteva secunde pentru a returna o sugestie; poți vedea când serviciul lucrează verificând bara de stare.
JupyterLab include, de asemenea, un meniu contextual tradițional de sugestii. Folosește tasta Tab pentru a rula și afișa meniul contextual.
Meniul contextual include sugestii din JupyterLab pe lângă sugestiile făcute de Qiskit Code Assistant. Meniul contextual sanitizează și scurtează și sugestiile, ceea ce îl face mai puțin util pentru examinarea sugestiei de cod înainte de a o insera.
Dezinstalează extensia JupyterLab
Pentru a elimina extensia Qiskit Code Assistant din JupyterLab, rulează:
pip uninstall qiskit_code_assistant_jupyterlab
Depanare
Dacă vezi extensia frontend dar aceasta nu funcționează, verifică dacă extensia server este activată:
jupyter server extension list
Dacă extensia server este instalată și activată, dar nu vezi extensia frontend, verifică dacă extensia frontend este instalată:
jupyter labextension list
Contribuie la extensia JupyterLab
Codul acestei extensii este disponibil public și este open source. Consultă-l pe GitHub.
Pași următori
Vezi exemple pentru a folosi Qiskit Code Assistant pentru Circuit-uri, configurarea suprimării erorilor și transpilare cu pass managers.