{"record":{"id":"3bb8bb6d5c09905e","repo":"tensorflow/models","slug":"must-set-vocab-file-or-sp-model-file","errorCode":null,"errorMessage":"Must set vocab_file or sp_model_file.","messagePattern":"Must set vocab_file or sp_model_file\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/nlp/tools/export_tfhub_lib.py","lineNumber":74,"sourceCode":"  return bert_encoder\n\n\ndef get_do_lower_case(do_lower_case, vocab_file=None, sp_model_file=None):\n  \"\"\"Returns do_lower_case, replacing None by a guess from vocab file name.\"\"\"\n  if do_lower_case is not None:\n    return do_lower_case\n  elif vocab_file:\n    do_lower_case = \"uncased\" in vocab_file\n    logging.info(\"Using do_lower_case=%s based on name of vocab_file=%s\",\n                 do_lower_case, vocab_file)\n    return do_lower_case\n  elif sp_model_file:\n    do_lower_case = True  # All public ALBERTs (as of Oct 2020) do it.\n    logging.info(\"Defaulting to do_lower_case=%s for Sentencepiece tokenizer\",\n                 do_lower_case)\n    return do_lower_case\n  else:\n    raise ValueError(\"Must set vocab_file or sp_model_file.\")\n\n\ndef _create_model(\n    *,\n    bert_config: Optional[configs.BertConfig] = None,\n    encoder_config: Optional[encoders.EncoderConfig] = None,\n    with_mlm: bool,\n) -> Tuple[tf_keras.Model, tf_keras.Model]:\n  \"\"\"Creates the model to export and the model to restore the checkpoint.\n\n  Args:\n    bert_config: A legacy `BertConfig` to create a `BertEncoder` object. Exactly\n      one of encoder_config and bert_config must be set.\n    encoder_config: An `EncoderConfig` to create an encoder of the configured\n      type (`BertEncoder` or other).\n    with_mlm: A bool to control the second component of the result. If True,\n      will create a `BertPretrainerV2` object; otherwise, will create a\n      `BertEncoder` object.","sourceCodeStart":56,"sourceCodeEnd":92,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/nlp/tools/export_tfhub_lib.py#L56-L92","documentation":"Error \"Must set vocab_file or sp_model_file.\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/nlp/tools/export_tfhub_lib.py:74 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e006f5f0d534913e49c1f1dae87364039fa607e2","analyzedAt":"2026-08-24T14:09:15.576Z","schemaVersion":2},"datasetVersion":"2026-08-24T17:17:21.512Z"}