code: def preprocess_corpora_multilingual(args):
      source_langs = multilingual_utils.get_source_langs(
          args.lang_pairs.split(",")
      )
      target_langs = multilingual_utils.get_target_langs(
          args.lang_pairs.split(",")
      )
  
      dict_paths, dict_objects = multilingual_utils.prepare_dicts(
          args, list(set(source_langs + target_langs))
      )
      train_binary_path_config = []
      eval_binary_path_config = []
      for lang_pair in args.lang_pairs.split(","):
          source_lang, target_lang = lang_pair.split("-")
          (
              source_corpus,
              target_corpus,
          ) = multilingual_utils.get_parallel_corpus_for_lang_pair(
              args.multilingual_train_text_file, lang_pair
          )
          source_binary_path = maybe_generate_temp_file_path(
              multilingual_utils.default_binary_path(
                  args.save_dir, lang_pair, source_lang, "train"
              )
          )
          binarize_text_file(
              text_file=source_corpus,
              dictionary=dict_objects[source_lang],
              output_path=source_binary_path,
              append_eos=args.append_eos_to_source,
              reverse_order=args.reverse_source,
          )
          target_binary_path = maybe_generate_temp_file_path(
              multilingual_utils.default_binary_path(
                  args.save_dir, lang_pair, target_lang, "train"
              )
          )
          binarize_text_file(
              text_file=target_corpus,
              dictionary=dict_objects[target_lang],
              output_path=target_binary_path,
              append_eos=True,
              reverse_order=False,
          )
          train_binary_path_config.append(
              f"{lang_pair}:{source_binary_path},{target_binary_path}"
          )
          (
              source_corpus,
              target_corpus,
          ) = multilingual_utils.get_parallel_corpus_for_lang_pair(
              args.multilingual_eval_text_file, lang_pair
          )
          source_binary_path = maybe_generate_temp_file_path(
              multilingual_utils.default_binary_path(
                  args.save_dir, lang_pair, source_lang, "eval"
              )
          )
          binarize_text_file(
              text_file=source_corpus,
              dictionary=dict_objects[source_lang],
              output_path=source_binary_path,
              append_eos=args.append_eos_to_source,
              reverse_order=args.reverse_source,
          )
          target_binary_path = maybe_generate_temp_file_path(
              multilingual_utils.default_binary_path(
                  args.save_dir, lang_pair, target_lang, "eval"
              )
          )
          binarize_text_file(
              text_file=target_corpus,
              dictionary=dict_objects[target_lang],
              output_path=target_binary_path,
              append_eos=True,
              reverse_order=False,
          )
          eval_binary_path_config.append(
              f"{lang_pair}:{source_binary_path},{target_binary_path}"
          )
      args.vocabulary = [
          f"{lang}:{dict_paths[lang]}" for lang in dict_paths
      ]
      args.multilingual_train_binary_path = train_binary_path_config
      args.multilingual_eval_binary_path = eval_binary_path_config
  
imports: import argparse
  import os
  import tempfile
  from typing import Dict, List, Optional
  from pytorch_translate import constants, multilingual_utils, options, utils
  from pytorch_translate.data import char_data, data
  from pytorch_translate.data.dictionary import Dictionary
label_desc: Use image node_id 10 for calling a global function with example usage: preprocess_corpora_multilingual(args) without return types