tensorflow/models · error · ValueError
`OneDeviceStrategy` can not be used for more than one device
Error message
`OneDeviceStrategy` can not be used for more than one device.
What it means
Error "`OneDeviceStrategy` can not be used for more than one device." thrown in tensorflow/models.
Source
Thrown at official/common/distribute_utils.py:186
== tf.tpu.experimental.HardwareFeature.EmbeddingFeature.V2 # pyrefly: ignore[missing-attribute]
):
tpu_metadata = cluster_resolver.get_tpu_system_metadata()
device_assignment = tf.tpu.experimental.DeviceAssignment.build(
topology, num_replicas=tpu_metadata.num_cores
)
return tf.distribute.TPUStrategy(
cluster_resolver, experimental_device_assignment=device_assignment)
if distribution_strategy == "multi_worker_mirrored":
return tf.distribute.experimental.MultiWorkerMirroredStrategy(
communication=_collective_communication(all_reduce_alg))
if distribution_strategy == "one_device":
if num_gpus == 0:
return tf.distribute.OneDeviceStrategy("device:CPU:0")
if num_gpus > 1:
raise ValueError("`OneDeviceStrategy` can not be used for more than "
"one device.")
return tf.distribute.OneDeviceStrategy("device:GPU:0")
if distribution_strategy == "mirrored":
if num_gpus == 0:
devices = ["device:CPU:0"]
else:
devices = ["device:GPU:%d" % i for i in range(num_gpus)]
return tf.distribute.MirroredStrategy(
devices=devices,
cross_device_ops=_mirrored_cross_device_ops(all_reduce_alg, num_packs))
if distribution_strategy == "parameter_server":
cluster_resolver = tf.distribute.cluster_resolver.TFConfigClusterResolver()
return tf.distribute.experimental.ParameterServerStrategy(cluster_resolver)
raise ValueError("Unrecognized Distribution Strategy: %r" %
distribution_strategy)View on GitHub (pinned to e006f5f0d5)
When it happens
Trigger: Thrown at official/common/distribute_utils.py:186 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tensorflow/models@e006f5f0d5 (2026-08-24).
Data as JSON: /api/errors/9ceeb3e82eab00ea.
Report an issue: GitHub.