docstr: This function is used to create tag "ray_node_tag" under category "category_id"
docstr_tok: ["This","function","is","used","to","create","tag","``","ray_node_tag","''","under","category","``","category_id","''"]
code: def create_node_tag(self, ray_node_tag, category_id):
      """
      This function is used to create tag "ray_node_tag" under category "category_id"
      """
      logger.debug(f"Creating {ray_node_tag} tag")
      tag_spec = self.vsphere_sdk_client.tagging.Tag.CreateSpec(
          ray_node_tag, "Ray node tag", category_id
      )
      tag_id = None
      try:
          tag_id = self.vsphere_sdk_client.tagging.Tag.create(tag_spec)
      except ErrorClients.Unauthorized as e:
          logger.critical(
              f"Unauthorized to create the tag. Exception: {e}"
          )
          raise e
      except Exception as e:
          logger.critical(e)
          raise e
  
      logger.debug(f"Tag {tag_id} created")
      return tag_id
  
imports: import logging
  import time
  import uuid
  from threading import RLock
  import com.vmware.vapi.std.errors_client
  import requests
  from com.vmware.cis.tagging_client import CategoryModel
  from com.vmware.content.library_client import Item
  from com.vmware.vapi.std.errors_client import Unauthenticated
  from com.vmware.vapi.std_client import DynamicID
  from com.vmware.vcenter.ovf_client import DiskProvisioningType, LibraryItem
  from com.vmware.vcenter.vm.hardware_client import Cpu, Memory
  from com.vmware.vcenter.vm_client import Power
  from com.vmware.vcenter_client import VM, Host, ResourcePool
  from vmware.vapi.vsphere.client import create_vsphere_client
  from ray.autoscaler._private.vsphere.utils import Constants, singleton_client
  from ray.autoscaler.tags import TAG_RAY_CLUSTER_NAME
label_desc: Use image node_id 17 for calling the VsphereSdkProvider obj's underlying member method code with example usage: obj.create_node_tag(ray_node_tag, category_id) and returns: tag_id