code: def artifact_obj1(sagemaker_session):
      obj = artifact.Artifact.create(
          artifact_name="foo",
          artifact_type="Context",
          source_uri=name(),
          properties={"k1": "v1"},
          sagemaker_session=sagemaker_session,
      )
      yield obj
      time.sleep(SLEEP_TIME_SECONDS)
      obj.delete(disassociate=True)
  
imports: from __future__ import absolute_import
  import time
  import boto3
  import pytest
  import logging
  import uuid
  import json
  from sagemaker.lineage import action, context, association, artifact
  from sagemaker.model import ModelPackage
  from sagemaker.utils import retry_with_backoff
  from tests.integ.sagemaker.workflow.test_workflow import test_end_to_end_pipeline_successful_execution
  from sagemaker.workflow.pipeline import _PipelineExecution
  from sagemaker.session import get_execution_role
  from smexperiments import trial_component, trial, experiment
  from random import randint
  from botocore.exceptions import ClientError
  from sagemaker.lineage.query import LineageQuery, LineageFilter, LineageSourceEnum, LineageEntityEnum, LineageQueryDirectionEnum
  from sagemaker.lineage.lineage_trial_component import LineageTrialComponent
  from tests.integ.sagemaker.lineage.helpers import name, names
label_desc: Use image node_id 14 for calling a global function with example usage: artifact_obj1(sagemaker_session) without return types