Skip to content

Commit 9383dee

Browse files
committed
add a OpenQAOA QASM example
1 parent d33730b commit 9383dee

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed

examples/cloud_api_task_qaoa.py

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
2+
import requests
3+
import json
4+
import getpass
5+
import time
6+
7+
token = getpass.getpass("Enter your token: ")
8+
9+
qasm = '''OPENQASM 2.0;
10+
include "qelib1.inc";
11+
qreg q1[6];
12+
h q1[0];
13+
h q1[1];
14+
h q1[2];
15+
h q1[3];
16+
h q1[4];
17+
h q1[5];
18+
rzz(0.457986902308) q1[0],q1[2];
19+
rzz(0.457986902308) q1[0],q1[3];
20+
rzz(0.457986902308) q1[0],q1[4];
21+
rzz(0.457986902308) q1[1],q1[2];
22+
rzz(0.457986902308) q1[1],q1[3];
23+
rzz(0.457986902308) q1[1],q1[5];
24+
rzz(0.457986902308) q1[2],q1[4];
25+
rzz(0.457986902308) q1[2],q1[5];
26+
rzz(0.457986902308) q1[3],q1[5];
27+
rzz(0.457986902308) q1[4],q1[5];
28+
rx(-0.937095045432) q1[0];
29+
rx(-0.937095045432) q1[1];
30+
rx(-0.937095045432) q1[2];
31+
rx(-0.937095045432) q1[3];
32+
rx(-0.937095045432) q1[4];
33+
rx(-0.937095045432) q1[5];
34+
rzz(0.845744593346) q1[0],q1[2];
35+
rzz(0.845744593346) q1[0],q1[3];
36+
rzz(0.845744593346) q1[0],q1[4];
37+
rzz(0.845744593346) q1[1],q1[2];
38+
rzz(0.845744593346) q1[1],q1[3];
39+
rzz(0.845744593346) q1[1],q1[5];
40+
rzz(0.845744593346) q1[2],q1[4];
41+
rzz(0.845744593346) q1[2],q1[5];
42+
rzz(0.845744593346) q1[3],q1[5];
43+
rzz(0.845744593346) q1[4],q1[5];
44+
rx(-3.70816562646) q1[0];
45+
rx(-3.70816562646) q1[1];
46+
rx(-3.70816562646) q1[2];
47+
rx(-3.70816562646) q1[3];
48+
rx(-3.70816562646) q1[4];
49+
rx(-3.70816562646) q1[5];
50+
'''
51+
52+
def create_task(src):
53+
url = "https://api.tyxonq.com/qau-cloud/tyxonq/api/v1/tasks/submit_task"
54+
headers = {"Authorization": "Bearer " + token}
55+
56+
data = {
57+
"device": "homebrew_s2?o=3",
58+
"shots": 1024,
59+
"source": src,
60+
"version": "1",
61+
"lang": "OPENQASM",
62+
"prior": 1,
63+
"remarks": "qaoa sample"
64+
}
65+
66+
response = requests.post(url, json=data, headers=headers)
67+
response_json = response.json()
68+
return response_json
69+
70+
def get_task_by_id(task_id):
71+
url = "https://api.tyxonq.com/qau-cloud/tyxonq/api/v1/tasks/detail"
72+
headers = {"Authorization": "Bearer " + token}
73+
response = requests.post(url, json={"task_id": task_id}, headers=headers)
74+
response_json = response.json()
75+
return response_json
76+
77+
res = create_task(qasm)
78+
print(res)
79+
80+
print("wait 60 seconds")
81+
time.sleep(60)
82+
83+
result = get_task_by_id(res['id'])
84+
print(result)

0 commit comments

Comments
 (0)