-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
When I run the following code
from mis import MISSolver, MISInstance, SolverConfig, BackendConfig, BackendType, MethodType
import networkx as nx
import my_functions as mf
my_cloud_credentials = mf.get_cloud_credentials("my_cloud_credentials.txt")
G = nx.Graph([(4, 9), (4, 10), (5, 6), (5, 7), (6, 7), (9, 10)])
config = SolverConfig(
backend = BackendConfig(
backend=BackendType.REMOTE_EMUMPS,#
username=my_cloud_credentials["username"],
project_id=my_cloud_credentials["project_id"],
password=my_cloud_credentials["password"]
),
method = MethodType.EAGER,
max_iterations=1,
preprocessor=None,
postprocessor=None
)
instance = MISInstance(G)
# Run the solver
solver = MISSolver(instance, config)
solutions = solver.solve()
# Display results
print("MIS solution:", solutions[0].nodes)
print("Solution cost:", solutions[0].frequency)
solutions[0].draw()
I get the following error
---------------------------------------------------------------------------
HTTPError Traceback (most recent call last)
Cell In[13], line 23
21 # Run the solver
22 solver = MISSolver(instance, config)
---> 23 solutions = solver.solve()
25 # Display results
26 print("MIS solution:", solutions[0].nodes)
File ~/fasttrack/lib/python3.10/site-packages/mis/solver/solver.py:61, in MISSolver.solve(self)
59 nodes = list(self.instance.graph.nodes)
60 return [MISSolution(self.instance, nodes, frequency=1)]
---> 61 return self._solver.solve()
File ~/fasttrack/lib/python3.10/site-packages/mis/solver/solver.py:208, in MISSolverQuantum.solve(self)
196 register = self._embedder.embed(
197 instance=preprocessed_instance,
198 config=self.config,
199 backend=self.backend,
200 )
202 pulse = self._shaper.generate(
203 config=self.config,
204 register=register,
205 backend=self.backend,
206 instance=preprocessed_instance,
207 )
--> 208 execution_result = self.execute(pulse, register)
209 return self._process(instance=preprocessed_instance, data=execution_result)
File ~/fasttrack/lib/python3.10/site-packages/mis/solver/solver.py:223, in MISSolverQuantum.execute(self, pulse, register)
212 """
213 Execute the pulse schedule on the backend and retrieve the solution.
214
(...)
220 Result: The solution from execution.
221 """
222 program = QuantumProgram(register=register, pulse=pulse, device=self.backend.device())
--> 223 counts = self.backend.run(program=program, runs=self.config.runs).counts
224 assert isinstance(counts, Counter) # Not sure why mypy expects that `counts` is `Any`.
225 return counts
File ~/fasttrack/lib/python3.10/site-packages/qoolqit/_solvers/backends/base_backend.py:120, in BaseBackend.run(self, program, runs)
103 def run(self, program: QuantumProgram, runs: int | None = None) -> Result:
104 """
105 Submit a quantum program for execution and wait for its result.
106
(...)
118 performance of other threads.
119 """
--> 120 return self.submit(program, runs).wait()
File ~/fasttrack/lib/python3.10/site-packages/qoolqit/_solvers/backends/remote_backends.py:95, in RemoteJob.wait(self)
93 # FIXME: This is subject to race condition.
94 raise self._error
---> 95 counter = job.result
96 assert isinstance(counter, dict)
97 counter = cast(Counter[str], counter)
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/job.py:68, in Job.result(self)
65 @property
66 def result(self) -> Optional[Dict[str, Any]]:
67 counter_result = None
---> 68 if self.full_result:
69 counter_result = self.full_result["counter"]
70 return counter_result
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/job.py:62, in Job.full_result(self)
59 @property
60 def full_result(self) -> Optional[JobResult]:
61 if self._full_result is None:
---> 62 self._full_result = self._client.get_job_results(self.id)
63 return self._full_result
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/client.py:342, in Client.get_job_results(self, job_id)
338 results_link = self._authenticated_request(
339 "GET", self._get_url("get_job_results_link", job_id=job_id)
340 )["data"]["results_link"]
341 if results_link:
--> 342 return self._download_results(results_link)
343 return None
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/utils/retry.py:46, in retry_http_error..decorator..wrapper(*args, **kwargs)
37 except HTTPError as e:
38 if (
39 e.response is None
40 or (
(...)
44 or iteration == max_retries
45 ):
---> 46 raise e
47 time.sleep(delay)
48 except Exception as e:
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/utils/retry.py:36, in retry_http_error..decorator..wrapper(*args, **kwargs)
34 delay = 2**iteration
35 try:
---> 36 response = func(*args, **kwargs)
37 except HTTPError as e:
38 if (
39 e.response is None
40 or (
(...)
44 or iteration == max_retries
45 ):
File ~/fasttrack/lib/python3.10/site-packages/pasqal_cloud/client.py:325, in Client._download_results(self, results_link)
322 @retry_http_error(max_retries=5, retry_exceptions=(requests.ConnectionError,))
323 def _download_results(self, results_link: str) -> JobResult:
324 response = self.session.request("GET", results_link)
--> 325 response.raise_for_status()
326 data = response.json()
327 return JobResult(
328 raw=data.pop("raw", None), counter=data.pop("counter", None), **data
329 )
File ~/fasttrack/lib/python3.10/site-packages/requests/models.py:1026, in Response.raise_for_status(self)
1021 http_error_msg = (
1022 f"{self.status_code} Server Error: {reason} for url: {self.url}"
1023 )
1025 if http_error_msg:
-> 1026 raise HTTPError(http_error_msg, response=self)
HTTPError: 404 Client Error: Not Found for url: https://storage.googleapis.com/sw-workloads-prod-fr/batches/58d05799-3984-4d0e-b37f-dc1757335cfd/results/6f326c4f-cfdc-4a29-9382-3f609271fc29?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=GOOG1EWBZFXPYMZV2IFS7LRNLI4X2AQTTP3YECNUGJ3A4AHXMZIA7S4NMQBKX%2F20251013%2Feurope-west9%2Fs3%2Faws4_request&X-Amz-Date=20251013T112740Z&X-Amz-Expires=60&X-Amz-SignedHeaders=host&X-Amz-Signature=3870bd347db1b59128ff8c4f91174c3f58832e0e9536c1ea5d4e85016803f2ad
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels