class_docstr: The `FunctionMetadataCatalog` catalog stores information about the metadata of user-defined functions (Functions).
  Metadata is implemented a key-value pair that can be used to store additional information about the Function.
  It maintains the following information for each attribute:
      `_row_id:` an autogenerated identifier
      `_key: ` key/identifier of the metadata (as a string)
      `_value:` value of the metadata (as a string)
      `_function_id:` the `_row_id` of the `FunctionCatalog` entry to which the attribute belongs
code: def __init__(self, key: str, value: str, function_id: int):
      self._key = key
      self._value = value
      self._function_id = function_id
  
imports: from sqlalchemy import Column, ForeignKey, Integer, String, UniqueConstraint
  from sqlalchemy.orm import relationship
  from evadb.catalog.models.base_model import BaseModel
  from evadb.catalog.models.utils import FunctionMetadataCatalogEntry, TextPickleType
label_desc: Use image node_id 1 to create a new FunctionMetadataCatalog object from inherited base classes: BaseModel with example: obj = FunctionMetadataCatalog(key, value, function_id)