연습 - Quantum Development Kit를 사용하여 양자 프로그램 실행

완료됨

Visual Studio Code용 Azure QDK(Quantum Development Kit) 확장을 사용하면 로컬 개발 환경에서 프로그램을 만들고 실행할 수 있습니다. Azure Quantum 작업 영역에 연결하고 작업 영역에 대해 선택한 공급자의 양자 컴퓨터 및 시뮬레이터에서 프로그램을 실행할 수도 있습니다.

필수 조건

  • Visual Studio Code를 설치하거나 웹용 VS Code를 엽니다.

  • Azure Quantum Development Kit(최신 QDK) VS Code 확장을 설치합니다.

  • 실제 하드웨어에서 프로그램을 실행하려면 다음도 필요합니다.

    • Azure 구독 Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
    • Azure Quantum 작업 영역

    Azure Quantum 작업 영역이 있는 경우 Q# 프로그램을 Azure Quantum에 제출하면 Azure Quantum 크레딧으로 무료 $500 USD 혜택을 활용할 수 있습니다.

Visual Studio Code에서 Q# 프로그램 만들기 및 실행

  1. Visual Studio Code를 열고 파일>새 텍스트 파일을 선택하여 새 파일을 만듭니다.

  2. 파일을 RandomNum.qs로 저장합니다. 이 파일에는 프로그램에 대한 Q# 코드가 포함됩니다.

  3. 다음 코드를 복사하여 RandomNum.qs 파일에 저장합니다.

    namespace Sample {
    
        @EntryPoint()
        operation RandomBit() : Result {
            // Qubits are only accessible for the duration of the scope where they
            // are allocated and are automatically released at the end of the scope.
            use qubit = Qubit();
    
            // Set the qubit in superposition by applying a Hadamard transformation.
            H(qubit);
    
            // Measure the qubit. There is a 50% probability of measuring either 
            // `Zero` or `One`.
            let result = M(qubit);
    
            // Reset the qubit so it can be safely released.
            Reset(qubit);
            return result;
        }
    }
    

최신 QDK에는 Q# 및 양자 컴퓨팅에 대해 자세히 알아보는 데 사용할 수 있는 Q# 샘플 집합이 포함되어 있습니다. 샘플을 보려면 새 Q# 파일을 열고 sample을 입력한 다음 옵션 목록에서 보려는 샘플을 선택합니다.

Q# 코드 살펴보기

  1. 정의에 대한 간략한 요약을 보려면 H 작업을 마우스로 가리키세요.
  2. H 작업 앞에 커서를 놓고 마우스 오른쪽 단추를 클릭한 후 정의로 이동을 선택합니다. 그러면 해당 함수에 대한 표준 라이브러리 코드의 읽기 전용 보기가 열립니다.

프로그램을 로컬에서 실행

  1. 기본 제공 시뮬레이터에서 로컬로 프로그램을 테스트로 실행하려면 오른쪽 상단에 있는 재생 아이콘 드롭다운에서 Q# 파일 실행을 선택하거나 Ctrl+F5를 누릅니다. 디버그 콘솔에 출력이 표시됩니다.
  2. 프로그램을 Azure Quantum에 제출하기 전에 디버깅하려면 재생 아이콘에서 Q# 파일 디버그를 선택하거나 F5 키를 누릅니다. 상단에 있는 디버깅 컨트롤을 사용하여 코드를 프로시저 단위로 실행합니다.

Azure Quantum에 연결하고 작업 제출

Azure Quantum 작업 영역이 있는 경우 VS Code에서 연결하고 Q# 프로그램을 Azure Quantum에 제출할 수 있습니다. 이 예에서는 RandomNum.qs 프로그램을 Rigetti 시뮬레이터에 제출합니다.

  1. VS Code 사이드바의 탐색기 보기에서 QUANTUM WORKSPACES 섹션을 엽니다.
  2. 기존 작업 영역 추가를 선택하고 메시지에 따라 원하는 디렉터리, 구독 및 작업 영역에 연결합니다.
  3. 연결되면 작업 영역을 확장하고 Rigetti 공급자를 확장합니다.
  4. 대상으로 rigetti.sim.qvm을 선택합니다.
  5. 대상 오른쪽에 있는 ⏵︎(재생) 아이콘을 클릭하거나 "Q#: 현재 Q# 프로그램 제출" 명령(명령 팔레트에 있음)을 실행합니다. 팝업이 나타나면 QIR 대상 프로필 변경 및 계속을 선택합니다.
  6. 입력 상자에 작업 제출에 대한 이름과 샷 수를 입력합니다.
  7. 작업을 제출하려면 Enter 키를 누릅니다. 작업 상태가 화면 하단에 표시됩니다.
  8. 작업을 확장하고 작업을 마우스로 가리키면 작업 시간과 상태가 표시됩니다.
  9. 결과를 보려면 작업 이름 옆에 있는 클라우드 아이콘을 선택하여 작업 영역 스토리지에서 결과를 다운로드하고 VS Code에 표시합니다.

추가 - Azure Quantum Notebook 만들기

최신 QDK를 사용하면 VS Code에서 Azure Quantum Notebooks를 만들 수 있습니다. Azure Quantum Notebooks는 Azure Quantum 작업 영역에 대해 선택한 공급자의 시뮬레이터 및 양자 컴퓨터에서 양자 프로그램을 실행할 수 있는 Jupyter Notebooks입니다.

Azure Quantum Notebook을 만들려면 다음을 수행합니다.

  1. VS Code에서 보기 메뉴를 열고 명령 팔레트를 선택합니다.
  2. Q#을 입력합니다. Azure Quantum Notebook을 만듭니다.
  3. Jupyter Notebook이 새 탭에서 열립니다. Notebook에는 샘플에 필요한 패키지를 가져오고, Azure Quantum 서비스에 연결하고, Q# 프로그램을 실행하는 코드 셀이 포함되어 있습니다.