internlm/SWE-Fixer-Train-110K huggingface dataset:
Repository: ivy-llc/ivy

Issue:
baddbmm_
Related to: https://github.com/unifyai/ivy/issues/3612


Discussion:
Thank you @a0m0rajab
Anytime


Resolving patch:
diff --git a/ivy/functional/frontends/torch/tensor.py b/ivy/functional/frontends/torch/tensor.py
--- a/ivy/functional/frontends/torch/tensor.py
+++ b/ivy/functional/frontends/torch/tensor.py
@@ -1547,6 +1547,12 @@ def baddbmm(self, batch1, batch2, *, beta=1, alpha=1):
             self, batch1=batch1, batch2=batch2, beta=beta, alpha=alpha
         )
 
+    def baddbmm_(self, batch1, batch2, *, beta=1, alpha=1):
+        self.ivy_array = torch_frontend.baddbmm(
+            self, batch1=batch1, batch2=batch2, beta=beta, alpha=alpha
+        ).ivy_array
+        return self
+
     def bmm(self, mat2):
         return torch_frontend.bmm(self, mat2=mat2)
 


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_torch/test_tensor.py b/ivy_tests/test_ivy/test_frontends/test_torch/test_tensor.py
--- a/ivy_tests/test_ivy/test_frontends/test_torch/test_tensor.py
+++ b/ivy_tests/test_ivy/test_frontends/test_torch/test_tensor.py
@@ -10509,6 +10509,55 @@ def test_torch_baddbmm(
     )
 
 
+@handle_frontend_method(
+    class_tree=CLASS_TREE,
+    init_tree="torch.tensor",
+    method_name="baddbmm_",
+    dtype_and_matrices=_get_dtype_and_3dbatch_matrices(with_input=True, input_3d=True),
+    beta=st.floats(
+        min_value=-5,
+        max_value=5,
+        allow_nan=False,
+        allow_subnormal=False,
+        allow_infinity=False,
+    ),
+    alpha=st.floats(
+        min_value=-5,
+        max_value=5,
+        allow_nan=False,
+        allow_subnormal=False,
+        allow_infinity=False,
+    ),
+)
+def test_torch_baddbmm_(
+    dtype_and_matrices,
+    beta,
+    alpha,
+    frontend,
+    frontend_method_data,
+    init_flags,
+    method_flags,
+    on_device,
+):
+    input_dtype, x, batch1, batch2 = dtype_and_matrices
+    helpers.test_frontend_method(
+        init_input_dtypes=input_dtype,
+        init_all_as_kwargs_np={"data": x[0]},
+        method_input_dtypes=input_dtype,
+        method_all_as_kwargs_np={
+            "batch1": batch1,
+            "batch2": batch2,
+            "beta": beta,
+            "alpha": alpha,
+        },
+        frontend=frontend,
+        frontend_method_data=frontend_method_data,
+        init_flags=init_flags,
+        method_flags=method_flags,
+        on_device=on_device,
+    )
+
+
 @handle_frontend_method(
     class_tree=CLASS_TREE,
     init_tree="torch.tensor",
Repository: ivy-llc/ivy

Issue:
hardswish
Frontend implementation for mindspore.ops.hardswish


Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/mindspore/ops/function/nn_func.py b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
--- a/ivy/functional/frontends/mindspore/ops/function/nn_func.py
+++ b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
@@ -38,6 +38,25 @@ def softsign(x):
     return ivy.divide(x, ivy.add(1, ivy.abs(x)))
 
 
+@with_supported_dtypes(
+    {
+        "2.0 and below": (
+            "int8",
+            "int16",
+            "int32",
+            "int64",
+            "float16",
+            "float32",
+            "float64",
+        )
+    },
+    "mindspore",
+)
+@to_ivy_arrays_and_back
+def hardswish(x):
+    return ivy.hardswish(x)
+
+
 @with_supported_dtypes(
     {
         "2.0 and below": (


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
--- a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
+++ b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
@@ -79,6 +79,32 @@
 #     )
 
 
+# hardswish
+# @handle_frontend_test(
+#      fn_tree="mindspore.ops.function.nn_func.hardswish",
+#      dtype_and_x=helpers.dtype_and_values(
+#          available_dtypes=helpers.get_dtypes("valid"),
+#      ),
+# )
+# def test_mindspore_hardswish(
+#     *,
+#     dtype_and_x,
+#     on_device,
+#     fn_tree,
+#     frontend,
+#     test_flags,
+# ):
+#     input_dtype, x = dtype_and_x
+#     helpers.test_frontend_function(
+#         input_dtypes=input_dtype,
+#         frontend=frontend,
+#         test_flags=test_flags,
+#         fn_tree=fn_tree,
+#         on_device=on_device,
+#         x=x[0],
+#     )
+
+
 # pad
 # @handle_frontend_test(
 #     fn_tree="pad",
Repository: ivy-llc/ivy

Issue:
 cholesky_solve



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/paddle/tensor/linalg.py b/ivy/functional/frontends/paddle/tensor/linalg.py
--- a/ivy/functional/frontends/paddle/tensor/linalg.py
+++ b/ivy/functional/frontends/paddle/tensor/linalg.py
@@ -122,6 +122,16 @@ def solve(x1, x2, name=None):
     return ivy.solve(x1, x2)
 
 
+# cholesky_solve
+@with_supported_dtypes({"2.5.1 and below": ("float32", "float64")}, "paddle")
+@to_ivy_arrays_and_back
+def cholesky_solve(x, y, /, *, upper=False, name=None):
+    if upper:
+        y = ivy.matrix_transpose(y)
+    Y = ivy.solve(y, x)
+    return ivy.solve(ivy.matrix_transpose(y), Y)
+
+
 # cholesky
 @with_supported_dtypes({"2.5.1 and below": ("float32", "float64")}, "paddle")
 @to_ivy_arrays_and_back


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_paddle/test_tensor/test_linalg.py b/ivy_tests/test_ivy/test_frontends/test_paddle/test_tensor/test_linalg.py
--- a/ivy_tests/test_ivy/test_frontends/test_paddle/test_tensor/test_linalg.py
+++ b/ivy_tests/test_ivy/test_frontends/test_paddle/test_tensor/test_linalg.py
@@ -7,7 +7,10 @@
 import ivy_tests.test_ivy.helpers as helpers
 from ivy_tests.test_ivy.helpers import assert_all_close
 from ivy_tests.test_ivy.helpers import handle_frontend_test, matrix_is_stable
-
+from ivy_tests.test_ivy.test_frontends.test_tensorflow.test_linalg import (
+    _get_second_matrix,
+    _get_cholesky_matrix,
+)
 
 # Helpers #
 # ------ #
@@ -528,6 +531,49 @@ def test_paddle_solve(
     )
 
 
+# cholesky_solve
+@st.composite
+def _get_paddle_cholesky_matrix(draw):
+    input_dtype, spd_chol = draw(_get_cholesky_matrix())
+    probability = draw(st.floats(min_value=0, max_value=1))
+    if probability > 0.5:
+        spd_chol = spd_chol.T  # randomly transpose the matrix
+    return input_dtype, spd_chol
+
+
+@handle_frontend_test(
+    fn_tree="paddle.tensor.linalg.cholesky_solve",
+    x=_get_second_matrix(),
+    y=_get_paddle_cholesky_matrix(),
+    test_with_out=st.just(False),
+)
+def test_paddle_cholesky_solve(
+    *,
+    x,
+    y,
+    frontend,
+    backend_fw,
+    test_flags,
+    fn_tree,
+    on_device,
+):
+    input_dtype1, x1 = x
+    input_dtype2, x2 = y
+    helpers.test_frontend_function(
+        input_dtypes=[input_dtype1, input_dtype2],
+        frontend=frontend,
+        backend_to_test=backend_fw,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        rtol=1e-3,
+        atol=1e-3,
+        x=x1,
+        y=x2,
+        upper=np.array_equal(x2, np.triu(x2)),  # check whether the matrix is upper
+    )
+
+
 # cholesky
 @handle_frontend_test(
     fn_tree="paddle.tensor.linalg.cholesky",
Repository: ivy-llc/ivy

Issue:
trim_zeros



Discussion:
Hi!, Can I work on this? 

Resolving patch:
diff --git a/ivy/functional/frontends/jax/numpy/manipulations.py b/ivy/functional/frontends/jax/numpy/manipulations.py
--- a/ivy/functional/frontends/jax/numpy/manipulations.py
+++ b/ivy/functional/frontends/jax/numpy/manipulations.py
@@ -169,6 +169,26 @@ def tril(m, k=0):
     return ivy.tril(m, k=k)
 
 
+@to_ivy_arrays_and_back
+def trim_zeros(flit, trim="fb"):
+    start_index = 0
+    end_index = ivy.shape(flit)[0]
+    trim = trim.lower()
+    if "f" in trim:
+        for item in flit:
+            if item == 0:
+                start_index += 1
+            else:
+                break
+    if "b" in trim:
+        for item in flit[::-1]:
+            if item == 0:
+                end_index -= 1
+            else:
+                break
+    return flit[start_index:end_index]
+
+
 @to_ivy_arrays_and_back
 def block(arr):
     # TODO: reimplement block


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_manipulations.py b/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_manipulations.py
--- a/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_manipulations.py
+++ b/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_manipulations.py
@@ -1016,6 +1016,37 @@ def test_jax_tril(
     )
 
 
+# trim_zeros
+@handle_frontend_test(
+    fn_tree="jax.numpy.trim_zeros",
+    dtype_and_x=helpers.dtype_and_values(
+        available_dtypes=helpers.get_dtypes("numeric"), min_num_dims=1, max_num_dims=1
+    ),
+    trim=st.sampled_from(["f", "b", "fb"]),
+)
+def test_jax_numpy_trim_zeros(
+    frontend,
+    on_device,
+    *,
+    dtype_and_x,
+    backend_fw,
+    trim,
+    fn_tree,
+    test_flags,
+):
+    dtype, x = dtype_and_x
+    helpers.test_frontend_function(
+        input_dtypes=dtype,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        backend_to_test=backend_fw,
+        filt=x[0],
+        trim=trim,
+    )
+
+
 # block
 @st.composite
 def _get_input_and_block(draw):
Repository: ivy-llc/ivy

Issue:
log_softmax



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/mindspore/ops/function/nn_func.py b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
--- a/ivy/functional/frontends/mindspore/ops/function/nn_func.py
+++ b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
@@ -55,6 +55,12 @@ def softsign(x):
     return ivy.divide(x, ivy.add(1, ivy.abs(x)))
 
 
+@with_supported_dtypes({"2.0.0 and below": ("float16", "float32")}, "mindspore")
+@to_ivy_arrays_and_back
+def log_softmax(input, axis=-1):
+    return ivy.log_softmax(input)
+
+
 @with_supported_dtypes({"2.0 and below": ("float16", "float32")}, "mindspore")
 @to_ivy_arrays_and_back
 def kl_div(logits, labels, reduction="mean"):


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
--- a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
+++ b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
@@ -319,6 +319,27 @@
 #         x=x[0],
 #         output_size=output_size,
 #     )
+
+
+# log_softmax
+# @handle_frontend_test(
+#     fn_tree="mindspore.ops.function.nn_func.log_softmax",
+#     dtype_and_x=helpers.dtype_and_values(
+#         available_dtypes=helpers.get_dtypes("valid"),
+#         safety_factor_scale="log",
+#         small_abs_safety_factor=20,
+#     ),
+# )
+# def test_mindspore_log_softmax(
+#     *,
+#     dtype_and_x,
+#     on_device,
+#     fn_tree,
+#     frontend,
+#     test_flags,
+# ):
+#     input_dtype, x = dtype_and_x
+
 # def _is_same_padding(padding, stride, kernel_size, input_shape):
 #     output_shape = tuple(
 #         [
@@ -420,11 +441,16 @@
 # ):
 #     input_dtype, x = dtype_and_x
 
+
 #     helpers.test_frontend_function(
 #         input_dtypes=input_dtype,
 #         frontend=frontend,
 #         test_flags=test_flags,
 #         fn_tree=fn_tree,
 #         on_device=on_device,
+
+#         x=x[0],
+
 #         input=x[0],
+
 #     )
Repository: ivy-llc/ivy

Issue:
iota



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/jax/lax/operators.py b/ivy/functional/frontends/jax/lax/operators.py
--- a/ivy/functional/frontends/jax/lax/operators.py
+++ b/ivy/functional/frontends/jax/lax/operators.py
@@ -690,3 +690,12 @@ def erfc(x):
     value = ivy.erf(x)
     value = (1.0 - value) if value is not None else None
     return value
+
+
+@with_unsupported_dtypes(
+    {"0.4.14 and below": ("bool", "bfloat16")},
+    "jax",
+)
+@to_ivy_arrays_and_back
+def iota(dtype, size):
+    return ivy.arange(0, size, dtype=dtype)


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py b/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
--- a/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
+++ b/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
@@ -3050,3 +3050,32 @@ def test_jax_erfc(
         atol=1e-2,
         x=x[0],
     )
+
+
+# iota
+@handle_frontend_test(
+    fn_tree="jax.lax.iota",
+    dtypes=helpers.get_dtypes("valid", full=False),
+    size=helpers.ints(min_value=0, max_value=10),
+    test_with_out=st.just(False),
+)
+def test_jax_iota(
+    *,
+    dtypes,
+    size,
+    on_device,
+    fn_tree,
+    frontend,
+    test_flags,
+    backend_fw,
+):
+    helpers.test_frontend_function(
+        input_dtypes=dtypes,
+        backend_to_test=backend_fw,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        dtype=dtypes[0],
+        size=size,
+    )
Repository: ivy-llc/ivy

Issue:
cummin



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/jax/lax/operators.py b/ivy/functional/frontends/jax/lax/operators.py
--- a/ivy/functional/frontends/jax/lax/operators.py
+++ b/ivy/functional/frontends/jax/lax/operators.py
@@ -670,6 +670,15 @@ def cbrt(x):
     return ivy.pow(x, 1 / 3)
 
 
+@with_unsupported_dtypes(
+    {"0.4.14 and below": ("bfloat16", "float16", "bool", "complex64", "complex128")},
+    "jax",
+)
+@to_ivy_arrays_and_back
+def cummin(operand, axis=0, reverse=False):
+    return ivy.cummin(operand, axis=axis, reverse=reverse, dtype=operand.dtype)
+
+
 @to_ivy_arrays_and_back
 def tie_in(x, y):
     return y


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py b/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
--- a/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
+++ b/ivy_tests/test_ivy/test_frontends/test_jax/test_lax/test_operators.py
@@ -2991,6 +2991,47 @@ def test_jax_cbrt(
     )
 
 
+# cummin
+@handle_frontend_test(
+    fn_tree="jax.lax.cummin",
+    dtype_x_axis=helpers.dtype_values_axis(
+        available_dtypes=helpers.get_dtypes("valid"),
+        min_num_dims=1,
+        max_num_dims=5,
+        valid_axis=True,
+        allow_neg_axes=False,
+        max_axes_size=1,
+        force_int_axis=True,
+    ),
+    reverse=st.booleans(),
+    test_with_out=st.just(False),
+)
+def test_jax_cummin(
+    *,
+    dtype_x_axis,
+    reverse,
+    on_device,
+    fn_tree,
+    frontend,
+    test_flags,
+    backend_fw,
+):
+    input_dtype, x, axis = dtype_x_axis
+    helpers.test_frontend_function(
+        input_dtypes=input_dtype,
+        backend_to_test=backend_fw,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        rtol=1e-2,
+        atol=1e-2,
+        operand=x[0],
+        axis=axis,
+        reverse=reverse,
+    )
+
+
 # tie_in
 @handle_frontend_test(
     fn_tree="jax.lax.tie_in",
Repository: ivy-llc/ivy

Issue:
softsign



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/tensorflow/math.py b/ivy/functional/frontends/tensorflow/math.py
--- a/ivy/functional/frontends/tensorflow/math.py
+++ b/ivy/functional/frontends/tensorflow/math.py
@@ -791,3 +791,11 @@ def l2_normalize(x, axis=None, epsilon=1e-12, name=None):
     square_sum = ivy.sum(ivy.square(x), axis=axis, keepdims=True)
     x_inv_norm = ivy.reciprocal(ivy.sqrt(ivy.maximum(square_sum, epsilon)))
     return ivy.multiply(x, x_inv_norm)
+
+
+@with_supported_dtypes(
+    {"2.13.0 and below": ("bfloat32", "float32", "float64")}, "tensorflow"
+)
+@to_ivy_arrays_and_back
+def softsign(features, name=None):
+    return ivy.divide(features, ivy.abs(features) + 1)


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py b/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
--- a/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
+++ b/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
@@ -3145,3 +3145,32 @@ def test_tensorflow_cumprod(  # NOQA
         exclusive=exclusive,
         reverse=reverse,
     )
+
+
+# softsign
+@handle_frontend_test(
+    fn_tree="tensorflow.math.softsign",
+    dtype_and_x=helpers.dtype_and_values(
+        available_dtypes=helpers.get_dtypes("valid"),
+    ),
+    test_with_out=st.just(False),
+)
+def test_tensorflow_softsign(
+    *,
+    dtype_and_x,
+    on_device,
+    fn_tree,
+    frontend,
+    test_flags,
+    backend_fw,
+):
+    input_dtype, x = dtype_and_x
+    helpers.test_frontend_function(
+        input_dtypes=input_dtype,
+        backend_to_test=backend_fw,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        features=x[0],
+    )
Repository: ivy-llc/ivy

Issue:
l2_normalize



Discussion:
This issue has been labelled as stale. If you would like to continue working on this issue, then please add another comment or create a PR . If a PR has already been created which refers to this issue, then you should explicitly mention this issue in the relevant PR. For more information please refer to this page in our documentation: https://lets-unify.ai/ivy/contributing/1_the_basics.html#todo-list-issues

Resolving patch:
diff --git a/ivy/functional/frontends/tensorflow/math.py b/ivy/functional/frontends/tensorflow/math.py
--- a/ivy/functional/frontends/tensorflow/math.py
+++ b/ivy/functional/frontends/tensorflow/math.py
@@ -762,3 +762,11 @@ def bincount(
 @to_ivy_arrays_and_back
 def igamma(a, x, name=None):
     return ivy.igamma(a, x=x)
+
+
+@to_ivy_arrays_and_back
+@with_supported_dtypes({"2.13.0 and below": ("float32", "float64")}, "tensorflow")
+def l2_normalize(x, axis=None, epsilon=1e-12, name=None):
+    square_sum = ivy.sum(ivy.square(x), axis=axis, keepdims=True)
+    x_inv_norm = ivy.reciprocal(ivy.sqrt(ivy.maximum(square_sum, epsilon)))
+    return ivy.multiply(x, x_inv_norm)


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py b/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
--- a/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
+++ b/ivy_tests/test_ivy/test_frontends/test_tensorflow/test_math.py
@@ -2962,3 +2962,38 @@ def test_tensorflow_igamma(
         a=xs[0],
         x=xs[1],
     )
+
+
+# l2_normalize
+@handle_frontend_test(
+    fn_tree="tensorflow.math.l2_normalize",
+    dtype_values_axis=helpers.dtype_values_axis(
+        available_dtypes=helpers.get_dtypes("valid"),
+        min_num_dims=3,
+        max_num_dims=5,
+        min_dim_size=1,
+        max_dim_size=4,
+        min_axis=-3,
+        max_axis=2,
+    ),
+)
+def test_tensorflow_l2_normalize(
+    *,
+    dtype_values_axis,
+    frontend,
+    test_flags,
+    fn_tree,
+    on_device,
+    backend_fw,
+):
+    input_dtype, x, axis = dtype_values_axis
+    helpers.test_frontend_function(
+        input_dtypes=input_dtype,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        backend_to_test=backend_fw,
+        x=x[0],
+        axis=axis,
+    )
Repository: ivy-llc/ivy

Issue:
dropout



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/mindspore/ops/function/nn_func.py b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
--- a/ivy/functional/frontends/mindspore/ops/function/nn_func.py
+++ b/ivy/functional/frontends/mindspore/ops/function/nn_func.py
@@ -234,6 +234,25 @@ def conv3d(
     return _conv(input, weight, bias, stride, padding, dilation, groups)
 
 
+@with_supported_dtypes(
+    {
+        "2.0.0 and below": (
+            "int8",
+            "int16",
+            "int32",
+            "int64",
+            "float16",
+            "float32",
+            "float64",
+        )
+    },
+    "mindspore",
+)
+@to_ivy_arrays_and_back
+def dropout(input, p=0.5, training=True, seed=None):
+    return ivy.dropout(input, p, training=training, seed=seed)
+
+
 @with_supported_dtypes(
     {
         "2.0.0 and below": (


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
--- a/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
+++ b/ivy_tests/test_ivy/test_frontends/test_mindspore/test_ops/test_function/test_mindspore_nn_func.py
@@ -360,6 +360,40 @@ def test_mindspore_conv3d(
     )
 
 
+#dropout
+@pytest.mark.skip("Testing pipeline not yet implemented")
+@handle_frontend_test(
+    fn_tree="mindspore.ops.function.nn_func.dropout",
+    d_type_and_x=helpers.dtype_and_values(),
+    p=helpers.floats(min_value=0.0, max_value=1.0),
+    training=st.booleans(),
+    seed=helpers.ints(min_value=0, max_value=100)
+)
+def test_mindspore_dropout(
+    *,
+    d_type_and_x,
+    p,
+    training,
+    seed,
+    on_device,
+    fn_tree,
+    frontend,
+    test_flags,
+):
+    dtype, x = d_type_and_x
+    ret, frontend_ret = helpers.test_frontend_function(
+        input_dtypes=dtype,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        input=x[0],
+        p=p,
+        training=training,
+        seed=seed,
+    )
+
+
 # dropout2d
 @pytest.mark.skip("Testing pipeline not yet implemented")
 @handle_frontend_test(
Repository: ivy-llc/ivy

Issue:
multi_dot



Discussion:

Resolving patch:
diff --git a/ivy/functional/frontends/jax/numpy/linalg.py b/ivy/functional/frontends/jax/numpy/linalg.py
--- a/ivy/functional/frontends/jax/numpy/linalg.py
+++ b/ivy/functional/frontends/jax/numpy/linalg.py
@@ -126,3 +126,8 @@ def tensorinv(a, ind=2):
 @to_ivy_arrays_and_back
 def cond(x, p=None):
     return ivy.cond(x, p=p)
+
+
+@to_ivy_arrays_and_back
+def multi_dot(a):
+    return ivy.multi_dot(a)
\ No newline at end of file


Test patch:
diff --git a/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_linalg.py b/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_linalg.py
--- a/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_linalg.py
+++ b/ivy_tests/test_ivy/test_frontends/test_jax/test_numpy/test_linalg.py
@@ -839,3 +839,52 @@ def test_jax_cond(
         x=x[0],
         p=x[1],
     )
+
+
+# multi_dot
+@handle_frontend_test(
+    fn_tree="jax.lax.linalg.multi_dot",
+    dtype_and_x=helpers.dtype_and_values(
+        available_dtypes=helpers.get_dtypes("float"),
+        min_value=0,
+        max_value=10,
+        shape=helpers.ints(min_value=2, max_value=5).map(lambda x: tuple([x, x])),
+    ).filter(
+        lambda x: "float16" not in x[0]
+        and "bfloat16" not in x[0]
+        and np.linalg.cond(x[1][0]) < 1 / sys.float_info.epsilon
+        and np.linalg.det(np.asarray(x[1][0])) != 0
+    ),
+    test_with_out=st.just(False),
+)
+def test_jax_lax_multi_dot(
+    *,
+    dtype_and_x,
+    on_device,
+    fn_tree,
+    frontend,
+    test_flags,
+):
+    dtype, x = dtype_and_x
+    x = np.asarray(x[0], dtype=dtype[0])
+
+    ret, frontend_ret = helpers.test_frontend_function(
+        input_dtypes=dtype,
+        frontend=frontend,
+        test_flags=test_flags,
+        fn_tree=fn_tree,
+        on_device=on_device,
+        test_values=False,
+        args=(x,),
+    )
+
+    ret = ivy.to_numpy(ret)
+    frontend_ret = np.asarray(frontend_ret)
+
+    assert_all_close(
+        ret_np=ret,
+        ret_from_gt_np=frontend_ret,
+        rtol=1e-2,
+        atol=1e-2,
+        ground_truth_backend=frontend,
+    )