code: def get_conv2d_relu(
      data_shape,
      out_channels,
      kernel_size,
      strides,
      padding,
      dilation,
      groups,
      data_layout,
      kernel_layout,
      dtype,
  ):
      data = relay.var("data", relay.TensorType(data_shape, dtype))
      weight = relay.var("weight")
  
      net = relay.nn.conv2d(
          data=data,
          weight=weight,  # conv kernel
          strides=strides,
          padding=padding,
          dilation=dilation,
          groups=groups,
          channels=out_channels,
          kernel_size=kernel_size,
          data_layout=data_layout,
          kernel_layout=kernel_layout,
      )
      net = relay.add(net, net)
      net = relay.nn.relu(net)
  
      inputs = relay.analysis.free_vars(net)
      return relay.Function(inputs, net)
  
file_path: tvm/tests/python/meta_schedule/test_meta_schedule_byoc_tensorrt.py
imports: import sys
  from typing import List
  import pytest
  import tvm
  import tvm.testing
  from tvm import relay
  from tvm.meta_schedule.arg_info import TensorInfo
  from tvm.meta_schedule.builder import BuilderInput, LocalBuilder
  from tvm.meta_schedule.runner import EvaluatorConfig, LocalRunner, RunnerInput
  from tvm.meta_schedule.testing.custom_builder_runner import build_relay, build_relay_with_tensorrt, run_with_graph_executor
  from tvm.meta_schedule.testing.relay_workload import get_network
  from tvm.relay import testing
  from tvm.relay.op.contrib import tensorrt
  from tvm.target import Target
  from tvm.tir import FloatImm
label_desc: Use image node_id 1 for calling a global function with example usage: get_conv2d_relu(data_shape, out_channels, kernel_size, strides, padding, dilation, groups, data_layout, kernel_layout, dtype) and returns: relay