Rollback of PR #54432

PiperOrigin-RevId: 432973315
diff --git a/tensorflow/python/kernel_tests/array_ops/array_ops_test.py b/tensorflow/python/kernel_tests/array_ops/array_ops_test.py
index 64e4dee..cabd4bd 100644
--- a/tensorflow/python/kernel_tests/array_ops/array_ops_test.py
+++ b/tensorflow/python/kernel_tests/array_ops/array_ops_test.py
@@ -318,13 +318,6 @@
     self.assertAllEqual(
         self.evaluate(f(constant_op.constant(0, dtype=dtypes.int32))), [1, 3])
 
-  def testMaskWithNonBoolTensor(self):
-    mask = [1, 2, 3]
-    tensor = [1, 2, 3]
-    with self.session():
-      with self.assertRaisesRegex(TypeError, "expected bool but got"):
-        self.evaluate(array_ops.boolean_mask(tensor, mask))
-
 
 @test_util.run_all_in_graph_and_eager_modes
 class OperatorShapeTest(test_util.TensorFlowTestCase):
diff --git a/tensorflow/python/ops/array_ops.py b/tensorflow/python/ops/array_ops.py
index 58f233f2..4ecd4c5 100644
--- a/tensorflow/python/ops/array_ops.py
+++ b/tensorflow/python/ops/array_ops.py
@@ -1881,8 +1881,6 @@
   with ops.name_scope(name, values=[tensor, mask]):
     tensor = ops.convert_to_tensor(tensor, name="tensor")
     mask = ops.convert_to_tensor(mask, name="mask")
-    if mask.dtype != dtypes.bool:
-      raise TypeError("Invalid `mask`: expected bool but got %s." % mask.dtype)
 
     shape_mask = mask.get_shape()
     ndims_mask = shape_mask.ndims