code: def conv2d(
      x: JaxArray,
      filters: JaxArray,
      strides: Union[int, Tuple[int, int]],
      padding: Union[str, int, Sequence[Tuple[int, int]]],
      /,
      *,
      data_format: str = "NHWC",
      filter_format: str = "channel_last",
      x_dilations: Union[int, Tuple[int, int]] = 1,
      dilations: Union[int, Tuple[int, int]] = 1,
      bias: Optional[JaxArray] = None,
      out: Optional[JaxArray] = None,
  ) -> JaxArray:
      data_format = (
          "channel_last" if data_format == "NHWC" else "channel_first"
      )
      return conv_general_dilated(
          x,
          filters,
          strides,
          padding,
          dims=2,
          data_format=data_format,
          filter_format=filter_format,
          x_dilations=x_dilations,
          dilations=dilations,
          bias=bias,
      )
  
file_path: ivy/ivy/functional/backends/jax/layers.py
imports: import jax.lax
  import jax.numpy
  import ivy
  from ivy.functional.backends.jax import JaxArray
  from typing import Union, Tuple, Optional, Sequence
  from ivy.functional.ivy.layers import _handle_padding, _deconv_length, _get_x_data_format
label_desc: Use image node_id 6 for calling a global function with example usage: conv2d() and returns: conv_general_dilated