diff --git a/azure-quantum/azure/quantum/cirq/service.py b/azure-quantum/azure/quantum/cirq/service.py index 926b8a2b..f9551b03 100644 --- a/azure-quantum/azure/quantum/cirq/service.py +++ b/azure-quantum/azure/quantum/cirq/service.py @@ -96,11 +96,11 @@ def targets( cirq_targets.append(target) continue - # Only apply the generic QIR fallback to targets that advertise a QIR - # target profile. Providers like Pasqal use pulse-level input formats - # (e.g. pasqal.pulser.v1) that are incompatible with QIR submission. - # target_profile is None for non-QIR targets. - if not status.target_profile: + # Pasqal uses a pulse-level input format (pasqal.pulser.v1) that is + # incompatible with QIR submission. All other public Azure Quantum + # targets are assumed to be QIR-compatible. + _NON_QIR_PROVIDERS = {"pasqal"} + if str(pid).strip().lower() in _NON_QIR_PROVIDERS: continue cirq_targets.append( diff --git a/azure-quantum/azure/quantum/qiskit/provider.py b/azure-quantum/azure/quantum/qiskit/provider.py index 838ad9c4..62fe1d80 100644 --- a/azure-quantum/azure/quantum/qiskit/provider.py +++ b/azure-quantum/azure/quantum/qiskit/provider.py @@ -143,11 +143,11 @@ def backends(self, name=None, **kwargs): if (target_id, pid) in existing_pairs: continue status = status_by_target.get((target_id, pid)) - # Only create a generic QIR backend for targets that advertise a QIR - # target profile. Providers like Pasqal use pulse-level input formats - # (e.g. pasqal.pulser.v1) that are incompatible with QIR submission. - # target_profile is None for non-QIR targets. - if status is not None and not status.target_profile: + # Pasqal uses a pulse-level input format (pasqal.pulser.v1) that is + # incompatible with QIR submission. All other public Azure Quantum + # targets are assumed to be QIR-compatible. + _NON_QIR_PROVIDERS = {"pasqal"} + if str(pid).strip().lower() in _NON_QIR_PROVIDERS: continue backend_list.append( AzureGenericQirBackend(