code: def gen_mace_engine_factory(model_name, embed_model_data, output):
      util.mkdir_p(output)
      cwd = os.path.dirname(__file__)
      j2_env = Environment(
          loader=FileSystemLoader(cwd + "/template"), trim_blocks=True
      )
      # generate mace_run BUILD file
      template_name = "mace_engine_factory.h.jinja2"
      model_name = list(model_name)
      source = j2_env.get_template(template_name).render(
          model_tags=model_name,
          embed_model_data=embed_model_data,
      )
      with open(output + "/mace_engine_factory.h", "w") as f:
          f.write(source)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import argparse
  import datetime
  import os
  import hashlib
  from jinja2 import Environment, FileSystemLoader
  from py_proto import mace_pb2
  from utils import device
  from utils import util
  from utils.util import mace_check
  from utils.util import MaceLogger
  from utils import config_parser
  from utils.config_parser import CPP_KEYWORDS
  from transform.base_converter import MaceKeyword
label_desc: Use image node_id 11 for calling a global function with example usage: gen_mace_engine_factory(model_name, embed_model_data, output) without return types