code: def _create_artifacts(
      self, client_code_file, args_file, workspace_new, files
  ):
      artifacts = {
          "retval": {"mutable": True, "unpack": True},
          "clientscript": {
              "mutable": False,
              "local": client_code_file,
              "unpack": True,
          },
          "args": {
              "mutable": False,
              "local": args_file,
              "unpack": True,
          },
          "workspace": {
              "mutable": False,
              "local": workspace_new,
              "unpack": True,
          },
      }
  
      for tag, name in six.iteritems(files):
          artifacts[tag] = {}
          url_schema = re.compile("^https{0,1}://")
          s3_schema = re.compile("^s3://")
          gcs_schema = re.compile("^gs://")
          studio_schema = re.compile(
              "studio://(?P<experiment>.+)/(?P<artifact>.+)"
          )
  
          if url_schema.match(name):
              artifacts[tag]["url"] = name
              artifacts[tag]["unpack"] = False
          elif s3_schema.match(name) or gcs_schema.match(name):
              artifacts[tag]["qualified"] = name
              artifacts[tag]["unpack"] = False
          elif studio_schema.match(name):
              ext_experiment_key = studio_schema.match(name).group(
                  "experiment"
              )
              ext_tag = studio_schema.match(name).group("artifact")
              with model.get_db_provider(self.config) as db:
                  ext_experiment = db.get_experiment(ext_experiment_key)
  
              artifacts[tag]["key"] = ext_experiment.artifacts[ext_tag][
                  "key"
              ]
              artifacts[tag]["unpack"] = True
          else:
              artifacts[tag]["local"] = os.path.abspath(
                  os.path.expanduser(name)
              )
              artifacts[tag]["unpack"] = True
  
          artifacts[tag]["mutable"] = False
  
      return artifacts
  
imports: import os
  import subprocess
  import uuid
  import pickle
  import tempfile
  import re
  import six
  import time
  from studio import experiment_submitter, model, fs_tracker, logs
  from studio.util import rsync_cp, parse_verbosity
  from studio.experiment import create_experiment
label_desc: Use image node_id 9 for calling the CompletionService obj's underlying member method code with example usage: obj._create_artifacts(client_code_file, args_file, workspace_new, files) and returns: artifacts