code: def test_retrieve_eia(config_for_framework, caplog):
      base_config = copy.deepcopy(BASE_CONFIG)
      del base_config["scope"]
  
      config = {
          "training": base_config,
          "eia": {
              "processors": ["cpu"],
              "versions": {
                  "1.0.0": {
                      "registries": {"us-west-2": "123412341234"},
                      "repository": "dummy-eia",
                      "py_versions": ["py3", "py37"],
                  },
              },
          },
      }
      config_for_framework.return_value = config
  
      uri = image_uris.retrieve(
          framework="useless-string",
          version="1.0.0",
          py_version="py3",
          instance_type="ml.c4.xlarge",
          accelerator_type="ml.eia1.medium",
          region="us-west-2",
      )
      assert (
          "123412341234.dkr.ecr.us-west-2.amazonaws.com/dummy-eia:1.0.0-cpu-py3"
          == uri
      )
  
      uri = image_uris.retrieve(
          framework="useless-string",
          version="1.0.0",
          py_version="py3",
          instance_type="ml.c4.xlarge",
          accelerator_type="local_sagemaker_notebook",
          region="us-west-2",
          image_scope="training",
      )
      assert (
          "123412341234.dkr.ecr.us-west-2.amazonaws.com/dummy-eia:1.0.0-cpu-py3"
          == uri
      )
      assert "Ignoring image scope: training." in caplog.text
  
imports: from __future__ import absolute_import
  import copy
  import logging
  import pytest
  from mock import patch
  from sagemaker import image_uris
  from sagemaker.workflow.functions import Join
  from sagemaker.workflow.parameters import ParameterString
label_desc: Use image node_id 4 for calling a global function with example usage: test_retrieve_eia(config_for_framework, caplog) without return types