기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
QuEra Aquila를 사용하여 아날로그 프로그램 제출
이 페이지에서는 의 기능에 대한 포괄적인 설명서를 제공합니다.Aquila 의 시스템 QuEra. 여기에서 다루는 세부 정보는 다음과 같습니다. 1) 에서 시뮬레이션한 파라미터화된 Hamiltonian Aquila, 2) AHS 프로그램 파라미터, 3) AHS 결과 콘텐츠, 4) Aquila 기능 파라미터. Ctrl+F 텍스트 검색을 사용하여 질문과 관련된 파라미터를 찾는 것이 좋습니다.
해밀턴
는 Aquila 의 시스템 QuEra 는 기본적으로 다음(시간 종속) Hamiltonian을 시뮬레이션합니다.
참고
로컬 디튜닝에 대한 액세스는 실험 기능이며 Braket Direct 를 통해 요청하여 사용할 수 있습니다.
여기서 각 항목은 다음과 같습니다.
-
H drive,k(t)=( 1/2 Ω(t)ei'(t)S −,k+ 1/2 Ω(t)e−i'(t) S +,k) + (−Δglobal(t)n k),
-
Ω(t)는 시간에 따라 달라지는 글로벌 주행 진폭(라비 주파수)으로, 단위는 (rad/s)입니다.
-
“(t)는 라디안 단위로 측정된 시간 의존적 글로벌 단계입니다.
-
S−,k와 S+,k는 원자 k의 스핀 하강 및 상승 연산자입니다(기본적으로 |↓⟩=|g', |↑'=|r', S −=|g'''r|, S +=(S −)†=|r'''g|)입니다.
-
Δglobal(t)는 시간 의존적인 글로벌 디튜닝입니다.
-
nk은 원자 k의 Rydberg 상태에 대한 프로젝션 연산자입니다(예: n=|r''''r|).
-
-
H local detuning,k(t)=-Δ local(t)h knk
-
Δlocal(t)는 (rad / s) 단위로 나타낸 로컬 주파수 이동의 시간 의존적 요인입니다.
hk는 0.0에서 1.0 사이의 차원 없는 숫자인 사이트 종속 인자입니다.
-
-
V vdw,k,l=C 6/(d k,l)6n kn l,
-
C6는 van der Waals 계수로, (rad / s) * (m)^6 단위입니다.
-
dk,l는 원자 k와 l 사이의 유클리드 거리로, 미터 단위로 측정됩니다.
-
사용자는 Braket AHS 프로그램 스키마를 통해 다음 파라미터를 제어할 수 있습니다.
-
2-d 원자 배열(각 원자 k의 x k및 y k좌표, um 단위), k,l=1,2,...N으로 페어와이즈 원자 거리 dk,l를 제어합니다.
-
Ω(t), 시간 종속, 글로벌 Rabi 주파수, 단위(rad/s)
-
“(t), 시간 의존적 글로벌 단계, (rad) 단위
-
Δglobal(t), 시간 종속, 전역 디튜닝, 단위(rad/s)
-
Δlocal(t), (rad/s) 단위로 나타낸 로컬 디튜닝 크기의 시간 종속(글로벌) 계수
-
h k, 로컬 디튜닝 크기의 (정적) 사이트 종속 인자, 0.0~1.0 사이의 차원 없는 숫자
참고
사용자는 관련된 수준(예: S −, S +, n 연산자가 고정됨)이나 Rydberg-Rydberg 상호 작용 계수(C )의 강도를 제어할 수 없습니다6.
Braket AHS 프로그램 스키마
braket.ir.ahs.program_v1.Program 객체(예)
Program( braketSchemaHeader=BraketSchemaHeader( name='braket.ir.ahs.program', version='1' ), setup=Setup( ahs_register=AtomArrangement( sites=[ [Decimal('0'), Decimal('0')], [Decimal('0'), Decimal('4e-6')], [Decimal('4e-6'), Decimal('0')], ], filling=[1, 1, 1] ) ), hamiltonian=Hamiltonian( drivingFields=[ DrivingField( amplitude=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('15700000.0'), Decimal('15700000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern='uniform' ), phase=PhysicalField( time_series=TimeSeries( values=[Decimal('0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ), detuning=PhysicalField( time_series=TimeSeries( values=[Decimal('-54000000.0'), Decimal('54000000.0')], times=[Decimal('0'), Decimal('0.000001')] ), pattern='uniform' ) ) ], localDetuning=[ LocalDetuning( magnitude=PhysicalField( times_series=TimeSeries( values=[Decimal('0'), Decimal('25000000.0'), Decimal('25000000.0'), Decimal('0')], times=[Decimal('0'), Decimal('0.000001'), Decimal('0.000002'), Decimal('0.000003')] ), pattern=Pattern([Decimal('0.8'), Decimal('1.0'), Decimal('0.9')]) ) ) ] ) )
JSON (예)
{ "braketSchemaHeader": { "name": "braket.ir.ahs.program", "version": "1" }, "setup": { "ahs_register": { "sites": [ [0E-7, 0E-7], [0E-7, 4E-6], [4E-6, 0E-7], ], "filling": [1, 1, 1] } }, "hamiltonian": { "drivingFields": [ { "amplitude": { "time_series": { "values": [0.0, 15700000.0, 15700000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": "uniform" }, "phase": { "time_series": { "values": [0E-7, 0E-7], "times": [0E-9, 0.000001000] }, "pattern": "uniform" }, "detuning": { "time_series": { "values": [-54000000.0, 54000000.0], "times": [0E-9, 0.000001000] }, "pattern": "uniform" } } ], "localDetuning": [ { "magnitude": { "time_series": { "values": [0.0, 25000000.0, 25000000.0, 0.0], "times": [0E-9, 0.000001000, 0.000002000, 0.000003000] }, "pattern": [0.8, 1.0, 0.9] } } ] } }
프로그램 필드 | type | 설명 |
---|---|---|
setup.ahs_register.sites |
List[List[Decimal]] |
핀셋이 원자를 트랩하는 2-d 좌표 목록 |
setup.ahs_register.filling |
List[int] |
트랩 사이트를 차지하는 원자를 1로 표시하고 빈 사이트를 0으로 표시합니다. |
hamiltonian.drivingFields[].amplitude.time_series.times |
List[십진수] |
주행 진폭 시점, Omega(t) |
hamiltonian.drivingFields[].amplitude.time_series.values |
List[십진수] |
주행 진폭 값, Omega(t) |
hamiltonian.drivingFields[].amplitude.pattern |
str |
주행 진폭의 공간 패턴, Omega(t); '균일'해야 함 |
hamiltonian.drivingFields[].phase.time_series.times |
List[십진수] |
주행 단계의 시점, phi(t) |
hamiltonian.drivingFields[].phase.time_series.values |
List[십진수] |
주행 단계의 값, phi(t) |
hamiltonian.drivingFields[].phase.pattern |
str |
주행 단계의 공간 패턴, phi(t); '균일'해야 함 |
hamiltonian.drivingFields[].detuning.time_series.times |
List[십진수] |
주행 디튜닝 시점, Delta_global(t) |
hamiltonian.drivingFields[].detuning.time_series.values |
List[십진수] |
주행 디튜닝 값, Delta_global(t) |
hamiltonian.drivingFields[].detuning.pattern |
str |
주행 디튜닝의 공간 패턴, Delta_global(t); '균일'해야 함 |
hamiltonian.localDetuning[].magnitude.time_series.times |
List[십진수] |
로컬 디튜닝 크기의 시간 종속 인자 시점, Delta_local(t) |
hamiltonian.localDetuning[].magnitude.time_series.values |
List[십진수] |
Delta_local(t)의 로컬 디튜닝 크기 시간 종속 인자 값 |
hamiltonian.localDetuning[].magnitude.pattern |
List[십진수] |
로컬 디튜닝 크기의 사이트 종속 요소, h_k(값은 setup.ahs_register.sites의 사이트에 해당) |
프로그램 필드 | type | 설명 |
---|---|---|
braketSchemaHeader.name |
str |
스키마의 이름입니다. 'braket.ir.ahs.program'이어야 합니다. |
braketSchemaHeader.version |
str |
스키마 버전 |
Braket AHS 작업 결과 스키마
braket.tasks.analog_hamiltonian_simulation_quantum_task_result .AnalogHamiltonianSimulationQuantumTaskResult (예)
AnalogHamiltonianSimulationQuantumTaskResult( task_metadata=TaskMetadata( braketSchemaHeader=BraketSchemaHeader( name='braket.task_result.task_metadata', version='1' ), id='arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef', shots=2, deviceId='arn:aws:braket:us-east-1::device/qpu/quera/Aquila', deviceParameters=None, createdAt='2022-10-25T20:59:10.788Z', endedAt='2022-10-25T21:00:58.218Z', status='COMPLETED', failureReason=None ), measurements=[ ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 1, 1]), post_sequence=array([0, 1, 1, 1]) ), ShotResult( status=<AnalogHamiltonianSimulationShotStatus.SUCCESS: 'Success'>, pre_sequence=array([1, 1, 0, 1]), post_sequence=array([1, 0, 0, 0]) ) ] )
JSON (예)
{ "braketSchemaHeader": { "name": "braket.task_result.analog_hamiltonian_simulation_task_result", "version": "1" }, "taskMetadata": { "braketSchemaHeader": { "name": "braket.task_result.task_metadata", "version": "1" }, "id": "arn:aws:braket:us-east-1:123456789012:quantum-task/12345678-90ab-cdef-1234-567890abcdef", "shots": 2, "deviceId": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila", "createdAt": "2022-10-25T20:59:10.788Z", "endedAt": "2022-10-25T21:00:58.218Z", "status": "COMPLETED" }, "measurements": [ { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 1, 1], "postSequence": [0, 1, 1, 1] } }, { "shotMetadata": {"shotStatus": "Success"}, "shotResult": { "preSequence": [1, 1, 0, 1], "postSequence": [1, 0, 0, 0] } } ], "additionalMetadata": { "action": {...} "queraMetadata": { "braketSchemaHeader": { "name": "braket.task_result.quera_metadata", "version": "1" }, "numSuccessfulShots": 100 } } }
작업 결과 필드 | type | 설명 |
---|---|---|
측정[].shotResult.preSequence |
List[int] |
각 주입에 대한 시퀀스 전 측정 비트(각 원자 사이트에 대해 하나): 사이트가 비어 있는 경우 0, 사이트가 채워진 경우 1, 양자 진화를 실행하는 펄스 시퀀스 전에 측정 |
측정[].shotResult.postSequence |
List[int] |
각 샷의 시퀀스 후 측정 비트: 원자가 Rydberg 상태이거나 사이트가 비어 있는 경우 0, 원자가 지상 상태인 경우 1, 양자 진화를 실행하는 펄스 시퀀스의 끝에 측정 |
작업 결과 필드 | type | 설명 |
---|---|---|
braketSchemaHeader.name |
str |
스키마의 이름입니다. 'braket.task_result.analog_hamiltonian_simulation_task_result'여야 합니다. |
braketSchemaHeader.version |
str |
스키마 버전 |
taskMetadata.braketSchemaHeader.이름 |
str |
스키마의 이름입니다. 'braket.task_result.task_metadata'여야 합니다. |
taskMetadata.braketSchemaHeader.version |
str |
스키마 버전 |
taskMetadata.id |
str |
양자 작업의 ID입니다. AWS 양자 태스크의 경우 이 는 양자 태스크입니다ARN. |
taskMetadata.shots |
int |
양자 작업에 대한 샷 수 |
taskMetadata.shots.deviceId |
str |
양자 작업이 실행된 디바이스의 ID입니다. AWS 디바이스의 경우 디바이스 입니다ARN. |
taskMetadata.shots.createdAt |
str |
생성 타임스탬프. 형식은 ISO-8601/RFC3339 문자열 형식 YYYY-MM-DDTHH:mm:ss.sssZ 합니다. 기본값은 없음입니다. |
taskMetadata.shots.endedAt |
str |
양자 작업이 종료된 시점의 타임스탬프입니다. 형식은 ISO-8601/RFC3339 문자열 형식 YYYY-MM-DDTHH:mm:ss.sssZ 합니다. 기본값은 없음입니다. |
taskMetadata.shots.status |
str |
양자 작업의 상태(CREATED, QUEUED, RUNNING, COMPLETED, FAILED). 기본값은 없음입니다. |
taskMetadata.shots.failureReason |
str |
양자 작업의 실패 원인입니다. 기본값은 없음입니다. |
additionalMetadata.action |
braket.ir.ahs.program_v1.Program |
( Braket AHS 프로그램 스키마 섹션 참조) |
additionalMetadata.action.braketSchemaHeader.queraMetadata.name |
str |
스키마의 이름입니다. 'braket.task_result.quera_metadata'여야 합니다. |
additionalMetadata.action.braketSchemaHeader.queraMetadata.version |
str |
스키마 버전 |
additionalMetadata.action.numSuccessfulShots |
int |
완전히 성공한 샷 수. 요청된 샷 수와 같아야 합니다. |
측정[].shotMetadata.shotStatus |
int |
샷 상태(성공, 부분 성공, 실패)는 '성공'이어야 합니다. |
QuEra 디바이스 속성 스키마
braket.device_schema.quera.quera_device_capabilities_v1.QueraDeviceCapabilities(예)
QueraDeviceCapabilities( service=DeviceServiceProperties( braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.device_service_properties', version='1' ), executionWindows=[ DeviceExecutionWindow( executionDay=<ExecutionDay.MONDAY: 'Monday'>, windowStartHour=datetime.time(1, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.TUESDAY: 'Tuesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.WEDNESDAY: 'Wednesday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ), DeviceExecutionWindow( executionDay=<ExecutionDay.FRIDAY: 'Friday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SATURDAY: 'Saturday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(23, 59, 59) ), DeviceExecutionWindow( executionDay=<ExecutionDay.SUNDAY: 'Sunday'>, windowStartHour=datetime.time(0, 0), windowEndHour=datetime.time(12, 0) ) ], shotsRange=(1, 1000), deviceCost=DeviceCost( price=0.01, unit='shot' ), deviceDocumentation= DeviceDocumentation( imageUrl='https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png', summary='Analog quantum processor based on neutral atom arrays', externalDocumentationUrl='https://www.quera.com/aquila' ), deviceLocation='Boston, USA', updatedAt=datetime.datetime(2024, 1, 22, 12, 0, tzinfo=datetime.timezone.utc), getTaskPollIntervalMillis=None ), action={ <DeviceActionType.AHS: 'braket.ir.ahs.program'>: DeviceActionProperties( version=['1'], actionType=<DeviceActionType.AHS: 'braket.ir.ahs.program'> ) }, deviceParameters={}, braketSchemaHeader=BraketSchemaHeader( name='braket.device_schema.quera.quera_device_capabilities', version='1' ), paradigm=QueraAhsParadigmProperties( ... # See https://github.com/amazon-braket/amazon-braket-schemas-python/blob/main/src/braket/device_schema/quera/quera_ahs_paradigm_properties_v1.py ... ) )
JSON (예)
{ "service": { "braketSchemaHeader": { "name": "braket.device_schema.device_service_properties", "version": "1" }, "executionWindows": [ { "executionDay": "Monday", "windowStartHour": "01:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Tuesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Wednesday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" }, { "executionDay": "Friday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Saturday", "windowStartHour": "00:00:00", "windowEndHour": "23:59:59" }, { "executionDay": "Sunday", "windowStartHour": "00:00:00", "windowEndHour": "12:00:00" } ], "shotsRange": [ 1, 1000 ], "deviceCost": { "price": 0.01, "unit": "shot" }, "deviceDocumentation": { "imageUrl": "https://a.b.cdn.console.awsstatic.com/59534b58c709fc239521ef866db9ea3f1aba73ad3ebcf60c23914ad8c5c5c878/a6cfc6fca26cf1c2e1c6.png", "summary": "Analog quantum processor based on neutral atom arrays", "externalDocumentationUrl": "https://www.quera.com/aquila" }, "deviceLocation": "Boston, USA", "updatedAt": "2024-01-22T12:00:00+00:00" }, "action": { "braket.ir.ahs.program": { "version": [ "1" ], "actionType": "braket.ir.ahs.program" } }, "deviceParameters": {}, "braketSchemaHeader": { "name": "braket.device_schema.quera.quera_device_capabilities", "version": "1" }, "paradigm": { ... # See Aquila device page > "Calibration" tab > "JSON" page ... } }
서비스 속성 필드 | type | 설명 |
---|---|---|
service.executionWindows[].executionDay |
ExecutionDay |
실행 기간의 일 수. '매일', '평일', '주말', '월요일', '화요일', '수요일', 목요일', '금요일', '토요일' 또는 '일요일'이어야 합니다. |
service.executionWindows[].windowStartHour |
datetime.time |
UTC 실행 기간이 시작되는 24시간 형식 |
service.executionWindows[].windowEndHour |
datetime.time |
UTC 실행 기간이 종료되는 24시간 형식 |
service.qpu_capabilities.service.shotsRange |
Tuple[int, int] |
디바이스의 최소 및 최대 샷 수 |
service.qpu_capabilities.service.deviceCost.price |
float |
미국 달러 기준 디바이스 가격 |
service.qpu_capabilities.service.deviceCost.unit |
str |
요금 부과 단위, 예: '분', '시간', '샷', '작업' |
메타데이터 필드 | type | 설명 |
---|---|---|
작업[].version |
str |
AHS 프로그램 스키마 버전 |
작업[].actionType |
ActionType |
AHS 프로그램 스키마 이름. 'braket.ir.ahs.program'이어야 합니다. |
service.braketSchemaHeader.name |
str |
스키마의 이름입니다. 'braket.device_schema.device_service_properties'여야 합니다. |
service.braketSchemaHeader.version |
str |
스키마 버전 |
서비스.deviceDocumentation.imageUrl |
str |
URL 디바이스 이미지 |
service.deviceDocumentation.summary |
str |
디바이스에 대한 간략한 설명 |
서비스.deviceDocumentation.externalDocumentationUrl |
str |
외부 설명서 URL |
서비스.deviceLocation |
str |
디바이스의 지리적 위치 |
서비스.updatedAt |
datetime |
디바이스 속성이 마지막으로 업데이트된 시간 |