{"record":{"id":"9ceeb3e82eab00ea","repo":"tensorflow/models","slug":"onedevicestrategy-can-not-be-used-for-more-than","errorCode":null,"errorMessage":"`OneDeviceStrategy` can not be used for more than one device.","messagePattern":"`OneDeviceStrategy` can not be used for more than one device\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/common/distribute_utils.py","lineNumber":186,"sourceCode":"          == tf.tpu.experimental.HardwareFeature.EmbeddingFeature.V2  # pyrefly: ignore[missing-attribute]\n      ):\n        tpu_metadata = cluster_resolver.get_tpu_system_metadata()\n        device_assignment = tf.tpu.experimental.DeviceAssignment.build(\n            topology, num_replicas=tpu_metadata.num_cores\n        )\n\n    return tf.distribute.TPUStrategy(\n        cluster_resolver, experimental_device_assignment=device_assignment)\n\n  if distribution_strategy == \"multi_worker_mirrored\":\n    return tf.distribute.experimental.MultiWorkerMirroredStrategy(\n        communication=_collective_communication(all_reduce_alg))\n\n  if distribution_strategy == \"one_device\":\n    if num_gpus == 0:\n      return tf.distribute.OneDeviceStrategy(\"device:CPU:0\")\n    if num_gpus > 1:\n      raise ValueError(\"`OneDeviceStrategy` can not be used for more than \"\n                       \"one device.\")\n    return tf.distribute.OneDeviceStrategy(\"device:GPU:0\")\n\n  if distribution_strategy == \"mirrored\":\n    if num_gpus == 0:\n      devices = [\"device:CPU:0\"]\n    else:\n      devices = [\"device:GPU:%d\" % i for i in range(num_gpus)]\n    return tf.distribute.MirroredStrategy(\n        devices=devices,\n        cross_device_ops=_mirrored_cross_device_ops(all_reduce_alg, num_packs))\n\n  if distribution_strategy == \"parameter_server\":\n    cluster_resolver = tf.distribute.cluster_resolver.TFConfigClusterResolver()\n    return tf.distribute.experimental.ParameterServerStrategy(cluster_resolver)\n\n  raise ValueError(\"Unrecognized Distribution Strategy: %r\" %\n                   distribution_strategy)","sourceCodeStart":168,"sourceCodeEnd":204,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/common/distribute_utils.py#L168-L204","documentation":"Error \"`OneDeviceStrategy` can not be used for more than one device.\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/common/distribute_utils.py:186 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e006f5f0d534913e49c1f1dae87364039fa607e2","analyzedAt":"2026-08-24T14:09:15.576Z","schemaVersion":2},"datasetVersion":"2026-08-24T17:17:21.512Z"}