code: def convert_file(
      vlsp_include_spaces,
      input_filename,
      output_filename,
      shard,
      split_filename=None,
      split_shard=None,
      pos_data=None,
  ):
      with open(input_filename) as fin:
          lines = fin.readlines()
  
      sentences = []
      set_sentences = set()
      for line in lines:
          if len(line.replace("_", " ").split()) > 1:
              words = line.split()
              # one syllable lines are eliminated
              if len(words) == 1 and len(words[0].split("_")) == 1:
                  continue
              else:
                  words = [w.replace("_", " ") for w in words]
                  # only add sentences that hasn't been added before
                  if words not in sentences:
                      sentences.append(words)
                      set_sentences.add(" ".join(words))
  
      if split_filename is not None:
          # even this is a larger dev set than the train set
          split_point = int(len(sentences) * 0.95)
          # check pos_data that aren't overlapping with current VLSP WS dataset
          sentences_pos = (
              []
              if pos_data is None
              else [
                  sent
                  for sent in pos_data
                  if " ".join(sent) not in set_sentences
              ]
          )
          print(
              "Added ",
              len(sentences_pos),
              " sentences from POS dataset.",
          )
          write_file(
              vlsp_include_spaces,
              output_filename,
              sentences[:split_point] + sentences_pos,
              shard,
          )
          write_file(
              vlsp_include_spaces,
              split_filename,
              sentences[split_point:],
              split_shard,
          )
      else:
          write_file(
              vlsp_include_spaces, output_filename, sentences, shard
          )
  
imports: import os
label_desc: Use image node_id 5 for calling a global function with example usage: convert_file(vlsp_include_spaces, input_filename, output_filename, shard, split_filename, split_shard, pos_data) without return types