Что такое Azure Quantum?
Azure Quantum — это облачная служба квантовых вычислений Azure с набором различных квантовых решений и технологий. Azure Quantum обеспечивает открытый, гибкий и перспективный путь к квантовым вычислениям, которые адаптируются к вашему способу работы, ускоряют выполнение и защищают ваши инвестиции в технологии.
Azure Quantum предоставляет лучшую среду разработки для создания квантовых алгоритмов для нескольких платформ одновременно, сохраняя гибкость для настройки одинаковых алгоритмов для конкретных систем. Вы можете написать код один раз и запускать его без изменений или с минимальными изменениями на нескольких целевых объектах одного семейства. Это позволяет вам уделить больше внимания программированию на уровне алгоритмов.
- Открытая экосистема, которая предоставляет доступ к различному программному обеспечению, оборудованию и решениям для квантовых вычислений от корпорации Майкрософт и ее партнеров. Вы можете выбрать один из квантовых языков, таких как Qiskit, Cirq и Q#, и запустить алгоритмы в нескольких квантовых системах.
- Квантовое воздействие сегодня дает возможность одновременно изучать современные квантовые системы и подготовиться к масштабируемым квантовым системам будущего благодаря готовым решениям, которые работают на основе классических и ускоренных вычислительных ресурсов (также называемых решениями для оптимизации).
Совет
Если у вас нет учетной записи Azure, зарегистрируйтесь бесплатно и зарегистрируйтесь для получения подписки с оплатой по мере использования. Если вы студент, вы можете воспользоваться бесплатной учетной записью Azure для учащихся.
- Элементы Azure Quantum
- Начало работы с Azure Quantum
- Оценка ресурсов в квантовых вычислениях
- Общие сведения о Q# и пакете средств разработки Quantum
- Рабочий процесс разработки квантового программного обеспечения
- Поставщики, доступные в Azure Quantum
Элементы Azure Quantum
С помощью Azure Quantum вы можете воспользоваться преимуществами квантовых вычислений в открытой облачной экосистеме с полным стеком с доступом к программному обеспечению, оборудованию и готовым решениям. Azure Quantum предлагает два типа квантовых решений: квантовые вычисления и оптимизация.
Квантовые вычисления
Если вы планируете имитировать задачи квантовой механики, такие как химические и биологические реакции или образование материалов, квантовые вычисления будут крайне эффективны, так как используют квантовые явления. Квантовые компьютеры также позволяют ускорить ход работы в таких областях, как финансовые услуги, машинное обучение и поиск неструктурированных данных, где требуется большой объем вычислений.
Благодаря Azure Quantum исследователи и предприятия могут использовать квантовые вычисления для моделирования сложных сценариев в области управления рисками, кибербезопасности, анализа сети, поиска данных, разработки вакцин или науки о материалах. Дополнительные сведения о способах использования квантовых вычислений и квантовых алгоритмов см. в статье Общие сведения о квантовых вычислениях.
Оптимизация
Десятилетия моделирования квантовых эффектов на классических компьютерах привели к разработке новых типов квантовых решений, названных квантовой оптимизацией. Оптимизация — это процесс поиска наилучшего решения проблемы с учетом желаемого результата и ограничений. Сложные задачи оптимизации характерны для таких отраслей, как маршрутизация транспортных средств, управление логистическими цепочками, планирование, оптимизация портфеля, управление энергосистемой и многие другие. Решение этих практических проблем позволяет получить значительные преимущества, такие как снижение затрат, ускорение процессов или снижение рисков.
Квантовые алгоритмы оптимизации используют некоторые преимущества квантовых вычислений на классическом оборудовании, обеспечивая ускорение по сравнению с традиционными подходами.
Azure Quantum предоставляет доступ к широкому набору современных алгоритмов квантовой оптимизации, разработанных корпорацией Майкрософт и ее партнерами. Дополнительные сведения о решениях для оптимизации в Azure Quantum см. в статье Общие сведения об оптимизации.
Начало работы с Azure Quantum
Совет
Пользователи впервые автоматически получают бесплатные кредиты Azure Quantum в размере 500 долл. США для использования с каждым участвующим поставщиком квантового оборудования. Если вы используете все кредиты и вам потребуются дополнительные, вы можете подать заявку на участие в программе кредитов Azure Quantum.
Если вы хотите начать работу с Azure Quantum, сделать это очень просто и бесплатно для новых пользователей. Чтобы отправить квантовые программы и решения оптимизации в Azure Quantum, вам потребуется только две вещи:
- Учетная запись Azure. Если у вас нет учетной записи Azure, зарегистрируйтесь бесплатно и зарегистрируйтесь для получения подписки с оплатой по мере использования.
- Рабочая область Azure Quantum. Это коллекция ресурсов, связанных с выполнением квантовых приложений или приложений оптимизации. Чтобы создать рабочую область Azure Quantum, перейдите на портал Azure, выберите Быстро создать, чтобы автоматически создать рабочую область и добавить поставщиков по умолчанию. Или выберите Создать с настройками и введите сведения о рабочей области и выберите поставщиков.
Дополнительные сведения см. в статье Создание рабочей области Azure Quantum.
Оценка ресурсов в квантовых вычислениях
В квантовых вычислениях оценка ресурсов — это способность понимать ресурсы, т. е. количество кубитов, количество квантовых вентили, время обработки и т. д., которые потребуются для заданного алгоритма, предполагая (или принимая в качестве параметров) определенные характеристики оборудования. Понимание количества кубитов, необходимых для квантового решения, и различий между кубитными технологиями позволяет новаторам подготавливать и совершенствовать свои квантовые решения для работы на будущих масштабируемых квантовых машинах и в конечном итоге ускорять их квантовое воздействие.
Azure Quantum предлагает собственный целевой объект оценки ресурсов, который вычисляет и выводит время выполнения настенных часов и оценки физических ресурсов для программы при условии, что он выполняется на отказоустойчивом квантовом компьютере с исправлением ошибок. Оценщик ресурсов Azure Quantum, разработанный специально для масштабируемых квантовых вычислений (пост-NISQ, отказоустойчивые системы), позволяет оценивать архитектурные решения, сравнивать кубитные технологии и определять ресурсы, необходимые для выполнения заданного квантового алгоритма. Вы можете выбрать один из предварительно определенных отказоустойчивых протоколов и указать предположения для базовой физической модели кубитов.
Оценщик ресурсов Azure Quantum вычисляет оценку физических ресурсов после макета, принимая предположения о параметрах кубитов, кодах квантового исправления ошибок (QEC) и бюджете ошибок. Она принимает программу квантового промежуточного представления (QIR) в качестве входных данных и, следовательно, поддерживает любой язык, который преобразуется в QIR. Например, вы можете использовать оценщик ресурсов Azure Quantum с популярными квантовыми пакетами SDK и такими языками, как Q# и Qiskit.
Оценщик ресурсов Azure Quantum принимает набор входных данных с предварительно определенными значениями, чтобы легко приступить к работе:
- Параметры физического кубита
- Схема квантовой коррекции ошибок (QEC)
- Бюджет ошибки
Дополнительные сведения см. на странице справочника по оценщику ресурсов Azure Quantum .
Что такое Q# и Quantum Development Kit?
Пакет средств разработки Microsoft Quantum (QDK) — это комплект SDK с открытым кодом для Azure Quantum. Он встроен на портал Azure Quantum, где можно разрабатывать программы с помощью размещенных записных книжек Jupyter Notebook. Вы также можете установить QDK в собственной локальной среде и работать как со службой Azure Quantum в Интернете, так и в автономном режиме. QDK включает квантовый язык программирования Q#. Это высокоуровневый язык, который позволяет сосредоточить усилия на уровне алгоритма и приложения для создания квантовых программ.
Quantum Development Kit
QDK содержит набор средств, которые помогут вам при разработке квантового программного обеспечения:
- Готовые к использованию библиотеки для поддержки высокого уровня кода, включая стандартные библиотеки с распространенными шаблонами для множества квантовых алгоритмов, и библиотеки для конкретных предметных областей, таких как химия и машинное обучение.
- Локальные и облачные симуляторы квантовых вычислений, которые имитируют текущие и будущие квантовые компьютеры, позволяя вам выполнять и отлаживать квантовые алгоритмы, написанные на Q#.
- Симуляторы шума, позволяющие имитировать поведение программ Q#, в которых присутствует шум, а также представления стабилизатора.
- Расширения для Visual Studio 2022 и Visual Studio Code, а также интеграция с записными книжками Jupyter Notebook.
- Взаимодействие с Python и другими языками .NET, а также интеграция с Qiskit и Cirq, которые позволяют разработчикам квантовых программ, уже работающим с другими языками, запускать свои схемы в Azure Quantum.
Примечание
Azure Quantum — это гибкая экосистема. В Azure Quantum можно выполнять код Python без явного вызова кода Q#, например отправлять на выполнение цепи Qiskit, Cirq или задачи оптимизации. Чтобы использовать эти функции, необходимо установить пакет Python azure-quantum.
Язык квантового программирования Q#
Зачем нужен язык квантового программирования? Если говорить кратко, чтобы создавать алгоритмы, а не цепи.
Квантовую программу можно рассматривать как определенный набор классических подпрограмм, которые при их вызове выполняют вычисления путем взаимодействия с квантовой системой. Программа, написанная на Q#, не моделирует квантовое состояние напрямую, а описывает, как классический управляющий компьютер взаимодействует с кубитами. Это позволяет вам полностью не зависеть от определения квантового состояния на любом целевом компьютере, которое может отличаться в зависимости от компьютера. Вы можете написать код один раз и запускать его без изменений или с минимальными изменениями на нескольких целевых объектах одного семейства. Это позволяет вам уделить больше внимания программированию на уровне алгоритмов.
Вы можете писать квантовые программы на Q# или Python на портале Azure Quantum, используя записные книжки Jupyter Notebook, или вести разработку локально в привычной вам среде IDE. Любая из этих сред позволяет отправлять задания на квантовое оборудование через службу Azure Quantum или использовать облачные и локальные квантовые симуляторы. Дополнительные сведения см. в статье о различных способах запуска программы Q#.
Рабочий процесс разработки квантового программного обеспечения
Azure Quantum предоставляет лучшую среду разработки для создания квантовых алгоритмов для нескольких платформ одновременно, сохраняя гибкость для настройки одинаковых алгоритмов для конкретных систем. Вы можете выбрать один из квантовых языков, таких как Qiskit, Cirq и Q#, и запустить алгоритмы в нескольких квантовых системах. С помощью Azure Quantum можно легко одновременно исследовать современные квантовые системы и подготовиться к масштабируемым квантовым системам будущего.
На следующей схеме представлены этапы, которые проходит квантовая программа от идеи до полной реализации в Azure Quantum, а также средства, предлагаемые QDK для каждого этапа.
Написание квантового кода. Вы можете написать программу Q# с помощью размещенных записных книжек Jupyter Notebook, доступных в рабочей области Azure Quantum. Если вы предпочитаете локальную среду разработки, вы можете создать программу Q# с помощью расширений QDK для Visual Studio, Visual Studio Code или Jupyter Notebook.
Использование библиотек для обеспечения высокого уровня кода. Квантовые библиотеки позволят обеспечить высокий уровень кода, выполняя за вас наиболее трудную часть работы и предоставляя вам возможность сосредоточиться на логике алгоритмов.
Интеграция с классическим программным обеспечением. Комплект Quantum Development Kit позволяет интегрировать программы Q# с Python и .NET, благодаря чему разработчик квантового программного обеспечения может пользоваться достижениями, сделанными в области классических вычислений за последние 70 лет. Вы также можете повторно использовать и отправлять существующий исходный код Qiskit и Cirq практически без изменений.
Запуск квантового кода в симуляции. После написания программы следует использовать квантовые симуляторы, классические программы, имитирующие поведение квантовой системы, чтобы можно было запустить небольшой экземпляр программы и посмотреть, что он делает, не требуя доступа к реальному оборудованию.
Оценка ресурсов. Перед запуском на квантовом оборудовании необходимо выяснить, можно ли выполнять программу на имеющемся оборудовании. Вы можете использовать оценщик ресурсов Azure Quantum , чтобы сообщить о необходимых оценках физических ресурсов и о том, сколько времени займет программа.
Выполнение кода на квантовом оборудовании. Наконец, последний этап — использование Azure Quantum для запуска программы на квантовом оборудовании!
Примечание
На всех этапах рабочего процесса используется один и тот же код Q#. В краткосрочной перспективе может потребоваться незначительное изменение некоторых частей кода с учетом текущих ограничений оборудования. Однако в долгосрочной перспективе вы сможете переключаться между различными симуляторами и поставщиками оборудования, не внося изменений в код.
Поставщики, доступные в Azure Quantum
Azure Quantum предлагает некоторые из самых интересных и разнообразных квантовых ресурсов, предоставляемых сегодня лидерами в отрасли. В настоящее время Azure Quantum сотрудничает со следующими поставщиками, позволяющими запускать квантовые программы Q# на реальном оборудовании, а также возможность тестирования кода на симулируемых квантовых компьютерах.
Поставщики решений для квантовых вычислений
Выберите поставщика, характеристики которого более всего соответствуют требуемым для решения вашей задачи и удовлетворения ваших потребностей.
- Quantinuum. Система на основе технологии захваченных ионов с высоким уровнем точности, полностью связанными кубитами, низкой частотой ошибок, повторным использованием кубитов и способностью выполнять измерение средних значений по цепи.
- IONQ. Динамически перенастраиваемый квантовый компьютер на основе технологии захваченных ионов, который поддерживает до 11 полностью связанных кубитов и позволяет запускать двухкубитный вентиль между любыми парами.
- Rigetti: сверхпроводящие процессоры на основе шлюза, использующие квантовое промежуточное представление (QIR) для обеспечения низкой задержки и параллельного выполнения.
- Pasqal. Квантовые процессоры на основе нейтральных атомов, работающие при комнатной температуре, с длительным временем когерентности и впечатляющей связности кубитов. Сейчас можно предварительно зарегистрироваться на закрытую предварительную версию Pasqal в Azure Quantum.
- Quantum Circuits, Inc. Полнофункциональные сверхпроводящие цепи с обратной связью в режиме реального времени, которая обеспечивает исправление ошибок, не зависящих от кодирования запутывающих вентилей. Сейчас можно предварительно зарегистрироваться на закрытую предварительную версию QCI в Azure Quantum.
Дополнительные сведения о спецификациях каждого поставщика см. в статье Целевой список поставщиков решений для квантовых вычислений.
Поставщики средств оптимизации
Доступны следующие поставщики решений для оптимизации:
- 1QBit. Итеративные эвристические алгоритмы, использующие методику поиска для решения задач QUBO.
- Microsoft QIO. Набор из нескольких целевых объектов, которые переопределяют задачу оптимизации на основе результатов квантовых исследований, проводившихся десятки лет.
- Toshiba SQBM+: компьютер имитируемой квантовой бифуркации Toshiba — это компьютер на модели Изинга на базе графического процессора, который с высокой скоростью решает крупномасштабные задачи комбинаторной оптимизации.
Дополнительные сведения о спецификациях каждого поставщика см. в статье Целевой список поставщиков решений для оптимизации.
Дальнейшие действия
Начните использовать Azure Quantum: