code: def _validate_route(route: str):
      if re.findall(
          r"[?#]+|^(//)|^:", route
      ):  # contains '?' or '#' OR  start with '//' OR start with ':'
          # https://tools.ietf.org/html/rfc3986#page-22
          raise InvalidArgument(
              "The path {} contains illegal url characters".format(
                  route
              )
          )
      if route in RESERVED_API_NAMES:
          raise InvalidArgument(
              "Reserved API route: '{}' is reserved for infra endpoints".format(
                  route
              )
          )
  
file_path: BentoML/grpc-client/bentoml/_internal/service/inference_api.py
imports: from __future__ import annotations
  import inspect
  import re
  import typing
  import yaml
  from ...exceptions import InvalidArgument
  from ..context import ServiceContext
  from ..io_descriptors import IODescriptor
  from ..io_descriptors.base import IOType
  from ..types import is_compatible_type
label_desc: Use image node_id 4 for calling the InferenceAPI obj's underlying member method code with example usage: obj._validate_route(route) without return types