code: def _construct_bids_filename(base, ext, part_idx, validate=True):
      """Construct a BIDS compatible filename for split files."""
      # insert index in filename
      dirname = op.dirname(base)
      base = op.basename(base)
      deconstructed_base = base.split("_")
      if len(deconstructed_base) < 2 and validate:
          raise ValueError(
              "Filename base must end with an underscore followed "
              f"by the modality (e.g., _eeg or _meg), got {base}"
          )
      suffix = deconstructed_base[-1]
      base = "_".join(deconstructed_base[:-1])
      use_fname = f"{base}_split-{part_idx + 1:02}_{suffix}{ext}"
      if dirname:
          use_fname = op.join(dirname, use_fname)
      return use_fname
  
file_path: mne-python/mne/_fiff/utils.py
imports: import os
  import os.path
  import numpy
  from .constants import FIFF
  from .meas_info import _get_valid_units
label_desc: Use image node_id 10 for calling a global function with example usage: _construct_bids_filename(base, ext, part_idx, validate) and returns: use_fname