code: def test_lightgcn_deep_dive_functional(
      notebooks,
      output_notebook,
      kernel_name,
      yaml_file,
      data_path,
      size,
      epochs,
      batch_size,
      expected_values,
      seed,
  ):
      notebook_path = notebooks["lightgcn_deep_dive"]
      execute_notebook(
          notebook_path,
          output_notebook,
          kernel_name=kernel_name,
          parameters=dict(
              TOP_K=10,
              MOVIELENS_DATA_SIZE=size,
              EPOCHS=epochs,
              BATCH_SIZE=batch_size,
              SEED=seed,
              yaml_file=yaml_file,
              user_file=os.path.join(data_path, r"user_embeddings"),
              item_file=os.path.join(data_path, r"item_embeddings"),
          ),
      )
      results = read_notebook(output_notebook)
  
      for key, value in expected_values.items():
          assert results[key] == pytest.approx(
              value, rel=TOL, abs=ABS_TOL
          )
  
imports: import os
  import pytest
  from recommenders.utils.gpu_utils import get_number_gpus
  from recommenders.utils.notebook_utils import execute_notebook, read_notebook
label_desc: Use image node_id 12 for calling a global function with example usage: test_lightgcn_deep_dive_functional(notebooks, output_notebook, kernel_name, yaml_file, data_path, size, epochs, batch_size, expected_values, seed) without return types