키스킷 소개
“Qiskit”이라는 이름은 양자 컴퓨터에서 프로그램을 실행하기 위한 소프트웨어 모음을 지칭하는 총칭입니다. 이러한 소프트웨어 도구 중 가장 주목할 만한 것은 오픈소스인 ‘ Qiskit SDK ’와, ‘ IBM Quantum Compute Service’(이전 명칭: ‘ Qiskit Runtime Service’)를 통해 액세스할 수 있는 런타임 환경으로, 이를 통해 ‘ IBM® ’ 양자 처리 장치(QPU)에서 워크로드를 실행할 수 있습니다. 양자 기술이 발전함에 따라 Qiskit도 함께 발전하고 있으며, 매년 새로운 기능이 출시되어 이 핵심 양자 소프트웨어 모음을 확장하고 있습니다.
또한, 많은 오픈소스 프로젝트가 더 넓은 키스킷 생태계의 일부입니다. 이러한 소프트웨어 도구는 키스킷 자체의 일부가 아니라 키스킷과 인터페이스하며 중요한 추가 기능을 제공할 수 있습니다.
IBM 는 양자 컴퓨팅의 책임감 있는 발전을 위해 최선을 다하고 있습니다. 책임감 있는 양자 컴퓨팅 주제에서 책임감 있는 양자 원칙에 대해 자세히 알아보고 검토하세요.
Qiskit SDK
Qiskit SDK (패키지 이름 qiskit)은 확장된(정적, 동적 및 예약된) 양자 회로, 연산자 및 프리미티브 수준에서 양자 컴퓨터로 작업할 수 있는 오픈 소스 SDK입니다. 이 라이브러리는 키스킷의 핵심 구성 요소로, 양자 계산을 위한 가장 광범위한 도구 모음을 갖춘 키스킷 이름 아래 가장 큰 패키지이며, 다른 많은 구성 요소와도 연동됩니다.
Qiskit SDK 의 가장 유용한 기능 중 일부는 다음과 같습니다:
-
회로 구축 도구 (
qiskit.circuit) - 레지스터, 회로, 명령어, 게이트, 매개변수 및 제어 흐름 개체를 초기화하고 조작하는 데 사용됩니다. -
회로 라이브러리 (
qiskit.circuit.library) - 회로 기반 양자 계산을 위한 핵심 구성 요소인 방대한 회로, 명령어, 게이트로 구성되어 있습니다. -
양자 정보 라이브러리 (
qiskit.quantum_info) - 정확한 계산(샘플링 노이즈 없음)을 사용하여 양자 상태, 연산자 및 채널로 작업할 수 있는 툴킷입니다. 이 모듈을 사용하여 입력 관측값을 지정하고 프리미티브 쿼리에서 출력의 충실도를 분석할 수 있습니다. -
트랜스파일러 (
qiskit.transpiler) - 특정 장치 토폴로지에 맞게 양자 회로를 변환 및 조정하고 실제 양자 처리 장치(QPU)에서 실행되도록 최적화하는 데 사용됩니다. -
Primitives (
qiskit.primitives) - 샘플러(Sampler) 및 에스티메이터(Estimator) 프리미티브의 기본 정의와 참조 구현을 포함하는 모듈로, 다양한 양자 하드웨어 공급업체들이 이를 바탕으로 자체 구현을 도출할 수 있습니다. IBM Quantum 의 기본 요소에 대한 자세한 내용은 설명서를 참조하십시오.
설치
Qiskit SDK 설치에 대한 자세한 내용은 설치 페이지를 참조하세요. 지금 설치할 준비가 되셨다면, 다음 명령을 실행하세요:
pip install qiskit벤치마킹과 벤치프레스 패키지
벤치마킹은 개발 워크플로우의 여러 단계에서 퀀텀 소프트웨어의 상대적 성능을 비교하는 데 중요합니다. 예를 들어 양자 소프트웨어에 대한 벤치마킹 테스트에서는 회로를 구축, 조작, 변환하는 속도와 품질을 살펴볼 수 있습니다. IBM Quantum 는 가능한 가장 성능이 뛰어난 SDK를 제공하기 위해 최선을 다하고 있으며, 이를 위해 주요 대학, 국립 연구소 및 연구원들이 개발한 1,000개 이상의 테스트를 사용하여 Qiskit SDK 에서 벤치마킹하고 있습니다( IBM ). 이러한 테스트에 사용되는 벤치마킹 제품군인 Benchpress는 이제 오픈 소스 패키지로 제공됩니다. 이제 Benchpress 패키지를 사용하여 퀀텀 SDK 성능에 대한 자체 분석을 수행할 수 있습니다.
Qiskit 애드온
키스킷 애드온은 유틸리티 규모의 알고리즘 검색을 위한 연구 기능 모음입니다. 이러한 기능은 양자 알고리즘을 생성하고 실행하기 위한 키스킷의 강력한 도구 기반을 기반으로 합니다. 애드온은 워크플로에 연결하여 새로운 양자 알고리즘을 확장하거나 설계하는 모듈식 소프트웨어 구성 요소입니다. 사용 가능한 키스킷 애드온 세트와 사용을 시작하는 방법에 대해 자세히 알아보려면 문서를 참조하세요.
Qiskit 생태계
키스킷 외에도 "키스킷" 이름을 사용하지만 키스킷 자체의 일부가 아닌, 키스킷과 인터페이스하며 핵심 키스킷 워크플로우를 보완하는 중요한 추가 기능을 제공하는 많은 오픈소스 프로젝트가 있습니다. 이러한 프로젝트 중 일부는 IBM Quantum 팀에서 관리하지만, 다른 프로젝트는 광범위한 오픈소스 커뮤니티의 지원을 받습니다. Qiskit SDK 은 개발자가 이와 같은 기능을 확장하는 프로젝트를 쉽게 만들 수 있도록 모듈식 확장 방식으로 설계되었습니다.
키스킷 생태계에서 인기 있는 프로젝트는 다음과 같습니다:
- 키스킷 에어 (
qiskit-aer) - 사실적인 노이즈 모델을 갖춘 양자 컴퓨팅 시뮬레이터용 패키지입니다. 여러 가지 시뮬레이션 방법을 사용하여 노이즈가 있거나 없는 양자 회로를 실행할 수 있는 인터페이스를 제공합니다. 에 의해 유지 관리 IBM Quantum. - qBraid SDK (
qbraid) - 양자 소프트웨어 및 하드웨어 제공업체 모두를 위한 플랫폼에 구애받지 않는 양자 런타임 프레임워크로, 프로그램 사양 정의부터 작업 제출, 결과의 사후 처리 및 시각화에 이르기까지 양자 작업의 전체 수명 주기 관리를 간소화하도록 설계되었습니다. 에 의해 유지 관리 qBraid. - mthree
mthree- 직접 LU 인수분해 또는 명목상 O(1) 단계로 수렴하는 사전 조건부 반복 방식에 이어 차원 축소 단계를 사용하여 수정된 측정 확률을 해결하는 측정 완화 기술인 M3 (매트릭스 없는 측정 완화)을 구현하기 위한 패키지로, 병렬로 계산할 수 있습니다. 에 의해 유지 관리 IBM Quantum.
키스킷 생태계 페이지에서 프로젝트 카탈로그와 자신의 프로젝트를 추천하는 방법에 대한 정보를 찾을 수 있습니다.