Q# 프로그램을 실행하는 다양한 방법

QDK(Microsoft 퀀텀 개발 키트)는 Q# 프로그램을 작성하고 실행하는 두 가지 개발 옵션을 제공합니다. 두 옵션 모두 Azure Quantum 인터페이스를 통해 시뮬레이터에서 Q# 프로그램을 실행하고 Azure Quantum 공급자의 양자 하드웨어를 실행할 수 있습니다. QDK에는 개인용 컴퓨터에서 Q# 프로그램을 실행하는 여러 로컬 시뮬레이터도 포함되어 있습니다.

Q# 프로그램을 개발하고 실행하는 옵션

Q# 프로그램을 개발하고 다음 개발 환경을 통해 Azure Quantum 제출하는 Q# 작업을 관리합니다.

  • Visual Studio Code: 로컬 환경에서 Q# 코드를 작성, 실행 및 디버그하고 Visual Studio Code(VS Code)의 QDK 확장을 사용하여 Azure Quantum 작업을 제출합니다. 설치가 필요합니다.
  • Jupyter Notebook: Q# 코드를 개발하고 qdk.qsharp Python 모듈을 사용하여 Jupyter Notebook Azure Quantum 작업을 제출합니다. 설치가 필요합니다.
  • Azure Portal: Azure 구독 및 Azure Quantum 작업 영역을 관리하고 양자 공급자 및 작업 제출에 대한 정보에 액세스합니다. Azure 계정이 필요합니다.

선택하는 옵션은 코딩 환경, 양자 지식 및 목표에 따라 달라집니다. 각 옵션에는 서로 다른 기능과 기능이 있으므로 함께 사용할 수 있습니다. 예를 들어 VS Code에서 QDK 확장을 사용하여 Q# 프로그램을 작성하고 Azure 포털에서 양자 작업 영역을 관리합니다.

비주얼 스튜디오 코드

VS Code는 Microsoft 무료 오픈 소스 코드 편집기입니다. VS Code용 QDK 확장을 사용하면 Q# 프로그램을 만들고 기본 제공 Q# 샘플을 로드할 수 있습니다. VS Code의 QDK는 Q# 프로그램(파일).qs 에 대해 다음과 같은 로컬 개발 기능 등을 제공합니다.

  • 오류 메시지
  • 구문 강조
  • 디버깅
  • CodeLens
  • IntelliSense
  • 양자 컴퓨터 리소스 예측

참고

QDK 확장은 OpenQASM 프로그램(.qasm 파일)에 대한 언어 지원도 제공합니다.

VS Code에서 QDK를 사용하기 위해 Azure 계정이 필요하지 않지만 QDK를 사용하여 Azure Quantum 작업을 제출하려면 Azure 계정이 필요합니다. QDK를 사용하여 VS Code에서 Azure Quantum 작업 영역에 연결하고 서로 다른 Azure Quantum 공급자의 양자 컴퓨터 및 시뮬레이터에서 Q# 프로그램을 실행할 수 있습니다. 자세한 내용은 Visual Studio Code사용하여 Q# 프로그램을 제출하는 방법을 참조하세요.

VS Code에서 QDK 확장을 시작하려면 QDK 설정을 참조하세요.

참고

QDK 확장은 데스크톱 버전과 동일한 Azure 연결 및 Q# 언어 기능을 제공하는 웹용 VS Code에서도 사용할 수 있습니다. 그러나 웹은 Python, Qiskit 또는 Cirq 프로그램을 지원하지 않습니다.

VS Code의 QDK 확장이 적합한가요?

VS Code는 Q# 및 OpenQASM 양자 프로그램을 작성, 실행 및 디버그하는 데 도움이 되는 CodeLens 및 IntelliSense를 포함하는 기능이 풍부한 환경입니다. 코딩 경험이 있고 Q#을 자세히 탐색하려는 경우 VS Code가 적합합니다.

다음 표에서는 VS Code에서 수행할 수 있는 작업과 수행할 수 없는 작업을 보여줍니다.

마케팅 목록의 구성원을 관리할 수 있습니다. 다음을 수행할 수 없습니다. 필요 항목:
  • Q# 및 OpenQASM 프로그램을 실행합니다.
  • 코드 샘플을 로드합니다.
  • 프로그램을 디버그합니다.
  • 프로그램 및 결과를 저장합니다.
  • 컴파일러 오류 메시지를 봅니다.
  • Azure Quantum 작업 영역에 연결합니다.
  • 양자 회로를 시각화합니다.
  • 리소스 추정기를 사용합니다.
  • 구독 및 작업 영역을 관리합니다.
  • 양자 작업을 관리합니다.
  • 양자 컴퓨팅 공급자 및 계획을 선택합니다.
  • VS Code를 설치하려면
  • QDK 확장을 설치하려면
  • Azure 구독 및 양자 작업 영역(실제 하드웨어에서 프로그램을 실행하려는 경우).

Jupyter Notebook

QDK에는 qdk Python 파일 또는 Jupyter Notebook Q# 프로그램을 개발할 수 있는 풍부한 .py Python 라이브러리가 있습니다. QDK Python 라이브러리는 Qiskit, Cirq 및 PennyLane과 같은 다른 양자 언어도 지원합니다.

qdk Python 라이브러리에는 양자 프로그램을 개발하고 Azure Quantum 작업을 관리하는 데 도움이 되는 여러 모듈이 포함되어 있습니다. 예를 들어 qsharp 모듈을 사용하면 Jupyter Notebook에서 Q# 코드를 작성할 수 있으며, azure 모듈을 사용하면 양자 작업 영역에 연결하고 작업을 Azure Quantum에 제출할 수 있습니다.

qdk Python 라이브러리 및 모듈 기능에 대한 개요는 PyPi 웹 사이트의 QDK 프로젝트 설명을 참조하세요.

Python Jupyter Notebook 나에게 옳은가?

Jupyter Notebook Python 코드를 작성하고 모든 출력을 하나의 개발 환경에서 시각화하는 데 편리합니다. Python 개발하려는 경우 여러 양자 프로그래밍 언어를 지원하려는 경우 QDK Python 라이브러리 및 Jupyter Notebook 적합합니다.

다음 표에서는 Python 및 Jupyter Notebook 수행할 수 있는 것과 수행할 수 없는 작업을 보여줍니다.

마케팅 목록의 구성원을 관리할 수 있습니다. 다음을 수행할 수 없습니다. 필요 항목:
  • 여러 양자 프로그래밍 언어로 개발합니다.
  • 프로그램 및 결과를 저장합니다.
  • Azure Quantum 작업 영역에 연결합니다.
  • 양자 회로를 시각화합니다.
  • 리소스 추정기를 사용합니다.
  • 구독 및 작업 영역을 관리합니다.
  • 양자 작업을 관리합니다.
  • 양자 컴퓨팅 공급자 및 계획을 선택합니다.

Azure Portal

Azure Portal은 Microsoft Azure 클라우드 컴퓨팅 플랫폼의 기본 인터페이스입니다. 포털에서 Azure Quantum 작업 영역 만들어 양자 프로그램을 실행하고, 작업을 quantum 하드웨어 공급자로 보내고, 작업 결과를 Azure Quantum 스토리지 계정에 저장할 수 있습니다. 구독, 활동, 크레딧 사용량, 할당량 및 액세스 제어를 관리할 수도 있습니다.

Azure Portal이 적합한가요?

Azure Portal에서 팀 구성원 또는 학생과 같은 사용자 그룹에 양자 작업 영역에 대한 액세스 권한을 부여할 수 있습니다. 작업 및 구독을 관리하거나, 청구서를 검토하거나, 다른 양자 공급자를 사용해 보려는 경우 Azure 포털이 적합합니다.

다음 표에서는 Azure Portal에서 수행할 수 있는 것과 수행할 수 없는 작업을 보여 줍니다.

마케팅 목록의 구성원을 관리할 수 있습니다. 다음을 수행할 수 없습니다. 필요 항목:
  • 양자 작업 영역을 만듭니다.
  • 구독 및 작업 영역을 관리합니다.
  • 작업 영역 액세스 키를 복사합니다.
  • 양자 작업을 관리합니다.
  • 프로그램 및 결과를 저장합니다.
  • 양자 컴퓨팅 공급자 및 계획을 선택합니다.
  • 양자 프로그램 개발
  • 양자 회로 및 결과를 시각화합니다.
  • 프로그램에 대한 리소스 예상치를 계산합니다.
  • Azure 구독
  • Azure Quantum 작업 영역입니다.

Q# 학습 리소스

Q# 프로그래밍 언어를 배우고 탐색하려면 다음 리소스를 사용합니다.

  • Azure Quantum 학습 경로: 양자 컴퓨팅에 관심이 있지만 어디서 시작해야 할지 모르는 경우 이 학습 경로를 수행합니다. 일련의 대화형 모듈을 통해 Q# 및 QDK를 사용하여 Azure Quantum 양자 컴퓨팅 및 양자 솔루션을 개발하는 방법에 대해 알아봅니다.
  • Quantum Katas: 이러한 자체 진행 자습서와 함께 양자 컴퓨팅 및 프로그래밍에 대해 알아보고, 각각 관련 이론 및 Q# 연습을 통해 지식을 테스트합니다.
  • Q# 코드 샘플: 바로 사용할 수 있는 이러한 Q# 샘플을 사용하여 첫 번째 양자 솔루션을 빌드합니다. 양자 알고리즘, 리소스 예측, 언어 구문 및 Jupyter Notebook의 네 가지 영역을 다룹니다.
  • QDK 플레이그라운드: Q#으로 작성된 일반적인 양자 알고리즘을 탐색합니다. 플레이그라운드는 웹용 VS Code에서 호스트되며 QDK를 사용하여 미리 구성되므로 아무것도 설치할 필요가 없습니다.