Configurar o uso da IBM Quantum Platform com a REST API
Você pode acessar processadores quânticos com REST APIs, o que permite trabalhar com QPUs usando qualquer linguagem de programação ou framework.
1. Obter acesso
- Se você ainda não tem uma conta de usuário, crie uma na página de login do IBM Quantum.
- Crie uma chave de API (também chamada de token) no painel. Observe que a mesma chave de API pode ser usada em qualquer região.
- Gere um token bearer do IBM Cloud Identity and Access Management (IAM). Esse é um token de curta duração usado para autenticar requisições à REST API. Para gerá-lo, chame a API de Serviços de Identidade IAM conforme mostrado na requisição de exemplo a seguir:
- Curl
- Python
curl -X POST 'https://iam.cloud.ibm.com/identity/token' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey=MY_APIKEY'
Resposta esperada
{
"access_token": "eyJhbGciOiJIUz......sgrKIi8hdFs",
"refresh_token": "SPrXw5tBE3......KBQ+luWQVY=",
"token_type": "Bearer",
"expires_in": 3600,
"expiration": 1473188353
}
# Use 'service' to invoke operations.
import requests
import json
url = 'https://iam.cloud.ibm.com/identity/token'
api_key = 'MY_APIKEY'
headers = {
'Content-Type': 'application/x-www-form-urlendcoded',
}
data = f'grant_type=urn:ibm:params:oauth:grant-type:apikey&apikey={api_key}'
response = requests.post(url, headers=headers, data=data)
# Bearer token to authorize requests to the REST API
bearer_token = response.json()['access_token']
2. Escolher um método de autenticação
Escolha o método de autenticação adequado para o seu ambiente de trabalho:
- Criar uma variável de ambiente para sua chave de API (ambientes Python confiáveis)
- Usar sua chave de API diretamente (ambiente não confiável)
Criar uma variável de ambiente (ambiente confiável)
-
Para definir a variável de ambiente IQP_API_TOKEN no seu sistema, você pode adicionar a seguinte linha ao seu perfil de shell (por exemplo, .bashrc ou .zshrc) ou defini-la diretamente no terminal:
export IQP_API_TOKEN=<your-API_KEY> # Use the 44-character API_KEY you created and saved from the IBM Quantum Platform Home dashboardAo invocar a variável de ambiente no seu código, inclua
import os, como neste exemplo:import os
api_token = os.environ['IQP_API_TOKEN']Observe que, ao criar uma variável de ambiente, sua chave de API ainda é armazenada localmente em texto simples e deve ser protegida.
-
Autentique as requisições à REST API do Qiskit Runtime incluindo o CRN e o token bearer nos cabeçalhos da requisição.
curl -X 'GET' \
'https://quantum.cloud.ibm.com/api/v1/usage' \
'-H accept: application/json' \
'-H authorization: Bearer <BEARER_TOKEN>' \
'-H Service-CRN: <INSTANCE_CRN>'
3. Opcional: Configurar o firewall
Se necessário, use estas informações para habilitar o acesso aos endpoints da API do IBM Quantum.
Próximos passos
- Visão geral dos planos disponíveis.
- Configure o Qiskit SDK localmente.
- Siga os passos em Hello world para escrever e executar um programa quântico.
- Experimente um tutorial.