비용 추적 및 절감 - Amazon Braket

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

비용 추적 및 절감

작은 정보

를 사용하여 양자 컴퓨팅의 기초를 알아봅니다 AWS! Amazon Braket Digital Learning Plan에 등록하고 일련의 학습 과정과 디지털 평가를 완료한 후 자체 디지털 배지를 획득합니다.

Amazon Braket을 사용하면 선결제 없이 온디맨드 양자 컴퓨팅 리소스에 액세스할 수 있습니다. 사용한 만큼만 지불합니다. 요금에 대한 자세한 내용은 요금 페이지를 참조하세요.

실시간에 가까운 비용 추적

Braket는 양자 워크로드에 거의 실시간에 가까운 비용 추적을 추가할 수 있는 옵션을 SDK 제공합니다. 각 예제 노트북에는 Braket의 양자 처리 단위(QPUs) 및 온디맨드 시뮬레이터에 대한 최대 비용 견적을 제공하는 비용 추적 코드가 포함되어 있습니다. 최대 비용 추정치는에 표시USD되며 크레딧 또는 할인을 포함하지 않습니다.

참고

표시된 요금은 Amazon Braket 시뮬레이터 및 양자 처리 단위(QPU) 작업 사용량을 기반으로 한 추정치입니다. 표시된 예상 요금은 실제 요금과 다를 수 있습니다. 예상 요금은 할인이나 크레딧에 반영되지 않으며 Amazon Elastic Compute Cloud(Amazon )와 같은 다른 서비스의 사용에 따라 추가 요금이 발생할 수 있습니다EC2.

에 대한 비용 추적 SV1

비용 추적 함수를 사용하는 방법을 보여주기 위해 Bell 상태 회로를 구성하고 SV1 시뮬레이터에서 실행합니다. 먼저 Braket SDK 모듈을 가져오고, Bell 상태를 정의하고, Tracker() 함수를 회로에 추가합니다.

#import any required modules from braket.aws import AwsDevice from braket.circuits import Circuit from braket.tracking import Tracker #create our bell circuit circ = Circuit().h(0).cnot(0,1) device = AwsDevice("arn:aws:braket:::device/quantum-simulator/amazon/sv1") with Tracker() as tracker: task = device.run(circ, shots=1000).result() #Your results print(task.measurement_counts)
Counter({'00': 500, '11': 500})

노트북을 실행할 때 Bell 상태 시뮬레이션에 대해 다음 출력을 예상할 수 있습니다. 트래커 함수는 전송된 샷 수, 완료된 양자 작업, 실행 기간, 청구된 실행 기간 및의 최대 비용을 보여줍니다USD. 실행 시간은 시뮬레이션마다 다를 수 있습니다.

import datetime tracker.quantum_tasks_statistics() {'arn:aws:braket:::device/quantum-simulator/amazon/sv1': {'shots': 1000, 'tasks': {'COMPLETED': 1}, 'execution_duration': datetime.timedelta(microseconds=4000), 'billed_execution_duration': datetime.timedelta(seconds=3)}} tracker.simulator_tasks_cost()
Decimal('0.0037500000')

비용 추적기를 사용하여 최대 비용 설정

비용 추적기를 사용하여 프로그램에 대한 최대 비용을 설정할 수 있습니다. 지정된 프로그램에 지출하려는 금액에 대한 최대 임계값이 있을 수 있습니다. 이렇게 하면 비용 추적기를 사용하여 실행 코드에서 비용 제어 로직을 빌드할 수 있습니다. 다음 예제에서는에서 동일한 회로를 사용합니다.Rigetti QPU 및는 비용을 1로 제한합니다USD. 코드에서 회로를 한 번 반복 실행하는 데 드는 비용은 0.48입니다USD. 총 비용이 1을 초과할 때까지 반복하도록 로직을 설정했습니다. USD따라서 코드 조각은 다음 반복이 1을 초과할 때까지 세 번 실행됩니다USD. 일반적으로 프로그램은 원하는 최대 비용에 도달할 때까지 계속 반복됩니다.이 경우 - 3회 반복입니다.

device = AwsDevice("arn:aws:braket:us-west-1::device/qpu/rigetti/Ankaa-2") with Tracker() as tracker: while tracker.qpu_tasks_cost() < 1: result = device.run(circ, shots=200).result() print(tracker.quantum_tasks_statistics()) print(tracker.qpu_tasks_cost(), "USD")
{'arn:aws:braket:us-west-1::device/qpu/rigetti/Ankaa-2': {'shots': 600, 'tasks': {'COMPLETED': 3}}} 1.4400000000 USD
참고

비용 추적기는 실패한 기간을 추적하지 않습니다.TN1 양자 작업. 중 TN1 리허설이 완료되었지만 수축 단계가 실패하면 리허설 요금이 비용 추적기에 표시되지 않습니다.

비용 절감 모범 사례

Amazon Braket 사용에 대한 다음 모범 사례를 고려하세요. 시간을 절약하고 비용을 최소화하며 일반적인 오류를 방지합니다.

시뮬레이터로 확인

  • 에서 시뮬레이터를 실행하기 전에 시뮬레이터를 사용하여 회로를 확인합니다. QPU그러면 QPU 사용량에 대한 요금이 부과되지 않고 회로를 미세 조정할 수 있습니다.

  • 시뮬레이터에서 회로를 실행한 결과가에서 회로를 실행한 결과와 동일하지 않을 수 있지만 시뮬레이터를 사용하여 코딩 오류 또는 구성 문제를 식별할 QPU수 있습니다.

특정 디바이스에 대한 사용자 액세스 제한

  • 권한이 없는 사용자가 특정 디바이스에서 양자 작업을 제출하지 못하도록 제한할 수 있습니다. 액세스를 제한하는 권장 방법은 입니다 AWS IAM. 이 작업을 수행하는 방법에 대한 자세한 내용은 액세스 제한을 참조하세요.

  • Amazon Braket 디바이스에 대한 사용자 액세스를 부여하거나 제한하는 방법으로 관리자 계정을 사용하지 않는 것이 좋습니다.

결제 경보 설정

  • 청구서가 사전 설정된 한도에 도달하면 알리도록 청구 경보를 설정할 수 있습니다. 경보를 설정하는 권장 방법은 다음과 같습니다 AWS Budgets. 사용자 지정 예산을 설정하고 비용 또는 사용량이 예산 금액을 초과할 수 있는 경우 알림을 받을 수 있습니다. 정보는에서 확인할 수 있습니다AWS Budgets.

테스트 TN1 샷 수가 적은 양자 작업

  • 시뮬레이터의 비용은 보다 적지만 QHPs샷 수가 많은 양자 작업을 실행하는 경우 특정 시뮬레이터는 비용이 많이 들 수 있습니다. 를 테스트하는 것이 좋습니다.TN1 가 낮은 태스크 shot 개수입니다.Shot 개수는의 비용에 영향을 주지 않습니다.SV1 및 로컬 시뮬레이터 작업.

양자 작업에 대한 모든 리전 확인

  • 콘솔에는 현재에 대한 양자 작업만 표시됩니다 AWS 리전. 제출된 청구 가능한 양자 작업을 찾을 때는 모든 리전을 확인해야 합니다.

  • 지원되는 디바이스 설명서 페이지에서 디바이스 및 관련 리전 목록을 볼 수 있습니다.