Перейти до основного вмісту

Використання Qiskit Code Assistant у JupyterLab

Дізнайся, як встановити, використовувати, налаштувати та видалити офіційне розширення Qiskit Code Assistant для JupyterLab.

Встановлення розширення JupyterLab

Щоб встановити розширення JupyterLab, виконай таку команду в терміналі:

pip install qiskit-code-assistant-jupyterlab

Після встановлення розширення запусти JupyterLab:

jupyter lab

Розширення завантажується автоматично і відображається в нижній частині вікна JupyterLab. Зверни увагу на документацію JupyterLab для отримання допомоги з роботою в JupyterLab.

Налаштування параметрів розширення

Рекомендується відредагувати такі параметри JupyterLab, перейшовши до Settings -> Settings Editor:

  • Натисни Inline Completer, знайди "Show widget" і вибери Always. Це означає, що віджет вбудованого доповнення завжди відображатиметься, щоб ти міг(-ла) переглядати і вибирати варіанти доповнення.

  • Натисни Code Completion і збільш значення параметра "Default timeout for a provider." до 10000 або 10 секунд. Стандартне значення — 1 секунда, але Qiskit Code Assistant API може витрачати більше часу на пошук підказки. Це налаштування стосується лише стандартного контекстного меню, що викликається клавішею Tab. Для вбудованого доповнення стандартне значення становить 10 секунд.

Інші параметри, які ти можеш змінити:

  • Комбінації клавіш можна змінити через Settings > Settings Editor > Keyboard Shortcuts.

  • Ти можеш змінити токен IBM Quantum API в палітрі команд JupyterLab. Для цього натисни Alt + Shift + C, знайди qiskit, вибери команду Qiskit Code Assistant: Set IBM Quantum API token і встав свій ключ.

  • [Розширено] Щоб змінити екземпляр сервісу Qiskit Code Assistant, який використовує розширення, відредагуй параметр serviceUrl у налаштуваннях Qiskit Code Assistant.

  • [Розширено] Комбінації клавіш можна змінити, знайшовши completer у налаштуваннях клавіатурних скорочень (Settings -> Settings Editor -> Keyboard Shortcuts) і додавши нові скорочення для відповідних команд.

Початок роботи з розширенням Qiskit Code Assistant для JupyterLab

Автентифікація та налаштування

Після встановлення розширення воно спробує тебе автентифікувати. За замовчуванням пакет намагається автентифікуватись у сервісах IBM Quantum з визначеним ключем API, використовуючи твій ключ із змінної середовища QISKIT_IBM_TOKEN або з файлу ~/.qiskit/qiskit-ibm.json (у розділі default-ibm-quantum). Якщо тобі потрібна допомога з налаштуванням облікового запису, дотримуйся інструкцій у налаштуванні облікового запису IBM Cloud.

За замовчуванням розширення використовує модель mistral-small-3.2-24b-qiskit, яка відображається у Model Picker в нижньому рядку стану.

Першого разу, коли ти використовуєш модель mistral-small-3.2-24b-qiskit, відкривається вікно з переліком основних обмежень, про які варто знати. Натисни Accept, щоб увімкнути модель для генерації коду.

Генерація коду

Під час написання коду за допомогою Qiskit ти можеш звертатись до Qiskit Code Assistant за допомогою. Загалом асистент пропонує кращий код у відповідь на коментарі Python або рядки документації, але ти можеш використовувати асистент у будь-якому місці файлу.

Щоб отримати підказку коду, введи запит, а потім натисни Alt + . або Alt + \. Є два типи запитів:

  • Введи частковий код і отримай підказку для його завершення. Приклад:
    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.
  • Введи символ решітки (#), а потім свій запит. Приклад: # Give me a random circuit of 5 qubits and a depth of 4.

Робота з підказками коду

Використовуй наступне для прийняття, відхилення та перегляду підказок:

  • Alt + [ і Alt + ] — для переходу між підказками (якщо їх більше однієї).
  • Alt + Tab або Alt + END — для прийняття запропонованого коду та вставки його на місці курсора.

Крім того, після запуску асистента ти можеш скористатись кнопками на віджеті для перегляду або прийняття підказки:

Відображається спливаюча панель із кнопками.

примітка

Сервіс іноді може витрачати кілька секунд на повернення підказки — ти можеш побачити, що сервіс працює, перевіривши рядок стану.

Jupyterlab також містить традиційне контекстне меню підказок. Натисни клавішу Tab, щоб запустити та відобразити контекстне меню.

Контекстне меню містить підказки від JupyterLab на додаток до підказок Qiskit Code Assistant. Контекстне меню також очищує й обрізає підказки, що робить його менш зручним для перегляду підказки коду перед вставкою.

Видалення розширення JupyterLab

Щоб видалити розширення Qiskit Code Assistant із JupyterLab, виконай:

pip uninstall qiskit_code_assistant_jupyterlab

Усунення несправностей

Якщо ти бачиш інтерфейсне розширення, але воно не працює, перевір, чи ввімкнено серверне розширення:

jupyter server extension list

Якщо серверне розширення встановлено та ввімкнено, але інтерфейсне розширення не відображається, перевір, чи встановлено інтерфейсне розширення:

jupyter labextension list

Внесок у розробку розширення JupyterLab

Код цього розширення є загальнодоступним та відкритим. Ознайомся з ним на GitHub.

Наступні кроки

Рекомендації