Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Средство оценки ресурсов Microsoft Quantum является частью Microsoft Quantum Development Kit (QDK). Из этой статьи вы узнаете, как установить квантовый оценщик ресурсов и запустить оценку простой программы Q# с моделью архитектуры по умолчанию.
Предупреждение
В расширении QDK для VS Code средство оценки ресурсов скоро будет выведено из эксплуатации.
qdk.qre
Python Используйте модуль для оценки ресурсов.
Prerequisites
Чтобы выполнить действия, описанные в этой статье, необходимо установить следующее:
- Последняя версия Visual Studio Code (VS Code)
- Последняя версия расширения QDK , установленного в VS Code
- Последние версии Python расширения и расширения Jupyter в VS Code
Установка средства оценки квантовых ресурсов
Оценка ресурсов доступна через qdk.qrePython модуль. Чтобы использовать средство оценки ресурсов, установите последнюю версию qdkPython пакета с дополнительными qre сведениями:
pip install --upgrade "qdk[qre]"
Tip
У вас нет учетной записи Azure для использования средства оценки ресурсов.
Выполнение простой оценки ресурсов с параметрами по умолчанию
Чтобы выполнить базовую оценку ресурсов, передайте модель приложения, модель аппаратной архитектуры и модель исправления ошибок в оценщик ресурсов. Затем запустите средство оценки ресурсов, чтобы получить результаты. В следующем примере выполняется средство оценки ресурсов из Jupyter Notebook в VS Code.
Создание модели приложения
В этом примере используйте алгоритм модели 1D Ising из примеров Q# в расширении QDK VS Code. Или используйте одну из существующих программ Q#.
Написание программы Q#
- В VS Code создайте текстовый файл и сохраните файл как
ising-1d-sample.qs. - В первой строке файла введите пример , чтобы открыть список примеров программы Q#.
- Выберите пример «Модель Изинга (простая 1D)», а затем сохраните файл.
Создание приложения
Используйте программу Q# для создания модели приложения для оценщика ресурсов.
Чтобы создать файл Jupyter Notebook в VS Code, откройте палитру команд и введите create: New Jupyter Notebook.
В первой ячейке записной книжки оцените программу Q#.
from pathlib import Path from qdk import qsharp qsharp.eval(Path("ising-1d-sample.qs").read_text(encoding="utf-8"))Этот код создает
Mainобъект вqdk.codeпространстве имен, содержащее программу Q#.В новой ячейке создайте приложение оценки ресурсов из программы Q#.
import qdk from qdk.qre.application import QSharpApplication app = QSharpApplication(qdk.code.Main)
Создание модели архитектуры
Для аппаратной архитектуры используйте модель GateBased по умолчанию, которая входит в состав оценщика ресурсов. Для GateBased модели требуются входные данные для частоты ошибок, времени ворот и времени измерения.
В новой ячейке создайте архитектуру на основе вентилей с уровнем ошибок $10^{-4}$, длительностью вентиля 100 нс и временем измерения 500 нс.
from qdk.qre.models import GateBased
# Times are in units of nanoseconds
arch = GateBased(error_rate=1e-4, gate_time=100, measurement_time=500)
Запустить оценку
Чтобы выполнить оценку, используйте estimate функцию и передайте следующие входные данные:
- Application
- Architecture
- Запрос набора физических инструкций (ISA)
- Максимальная частота ошибок
Запрос ISA сообщает оценщику ресурсов, какие сочетания кода коррекции ошибок и протоколов дистилляции T-фабрики следует оценивать. Оценка ресурсов находит оптимизированный набор результатов из этих сочетаний для границы Pareto. В этом примере используйте код QEC по умолчанию SurfaceCode и протокол дистилляции RoundBasedFactory, которые входят в состав оценщика ресурсов.
from qdk.qre import estimate
from qdk.qre.models import SurfaceCode, RoundBasedFactory
results = estimate(app, arch, isa_query=SurfaceCode.q() * RoundBasedFactory.q(), max_error=0.01)```
Просмотр результатов
Чтобы просмотреть оптимальные сочетания количества физических кубитов и времени выполнения программы, используйте метод as_frame для отображения результатов оценки в DataFrame pandas.
results.as_frame()
Чтобы отобразить результаты, используйте plot_estimates метод и передайте единицу времени выполнения.
from qdk.qre import plot_estimates
plot_estimates(results, figsize=(6, 4), runtime_unit="ms")