code: def _generate_eigh_tridiagonal_args(draw):
      dtype, alpha = draw(
          helpers.dtype_and_values(
              min_dim_size=2,
              min_num_dims=1,
              max_num_dims=1,
              min_value=2.0,
              max_value=5,
              available_dtypes=helpers.get_dtypes("float"),
          )
      )
      beta_shape = len(alpha[0]) - 1
      dtype, beta = draw(
          helpers.dtype_and_values(
              available_dtypes=dtype,
              shape=(beta_shape,),
              min_value=2.0,
              max_value=5,
          )
      )
  
      select = draw(st.sampled_from(("a", "i", "v")))
      if select == "a":
          select_range = None
      elif select == "i":
          range_slice = draw(
              st.slices(beta_shape).filter(
                  lambda x: x.start
                  and x.stop
                  and x.step
                  and x.start >= 0
                  and x.stop >= 0
                  and x.step >= 0
                  and x.start < x.stop
              )
          )
  
          select_range = [range_slice.start, range_slice.stop]
      else:
          select_range = [-100, 100]
  
      eigvals_only = draw(st.booleans())
      tol = draw(st.floats(1e-5, 1e-3) | st.just(None))
      return dtype, alpha, beta, eigvals_only, select, select_range, tol
  
imports: import math
  from hypothesis import strategies
  from hypothesis import assume
  import numpy
  import pytest
  import itertools
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_test, BackendHandler
  import ivy
label_desc: Use image node_id 4 for calling a global function with example usage: _generate_eigh_tridiagonal_args(draw) and returns: dtype,  alpha,  beta,  eigvals_only,  select,  select_range,  tol