{"record":{"id":"02f23e5142e2f606","repo":"tensorflow/models","slug":"eos-token-not-in-tokenizer-vocab-please-make-sure","errorCode":null,"errorMessage":"EOS token not in tokenizer vocab.Please make sure the tokenizer generates a single token for an empty string.","messagePattern":"EOS token not in tokenizer vocab\\.Please make sure the tokenizer generates a single token for an empty string\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/nlp/serving/serving_modules.py","lineNumber":431,"sourceCode":"\nclass Translation(export_base.ExportModule):\n  \"\"\"The export module for the translation task.\"\"\"\n\n  @dataclasses.dataclass\n  class Params(base_config.Config):\n    sentencepiece_model_path: str = \"\"\n    # Needs to be specified if padded_decode is True/on TPUs.\n    batch_size: Optional[int] = None\n\n  def __init__(self, params, model: tf_keras.Model, inference_step=None):\n    super().__init__(params, model, inference_step)\n    self._sp_tokenizer = tf_text.SentencepieceTokenizer(\n        model=tf.io.gfile.GFile(params.sentencepiece_model_path, \"rb\").read(),\n        add_eos=True)\n    try:\n      empty_str_tokenized = self._sp_tokenizer.tokenize(\"\").numpy()\n    except tf.errors.InternalError:\n      raise ValueError(\n          \"EOS token not in tokenizer vocab.\"\n          \"Please make sure the tokenizer generates a single token for an \"\n          \"empty string.\")\n    self._eos_id = empty_str_tokenized.item()\n    self._batch_size = params.batch_size\n\n  @tf.function\n  def serve(self, inputs) -> Dict[str, tf.Tensor]:\n    return self.inference_step(inputs)\n\n  @tf.function\n  def serve_text(self, text: tf.Tensor) -> Dict[str, tf.Tensor]:\n    tokenized = self._sp_tokenizer.tokenize(text).to_tensor(0)\n    return self._sp_tokenizer.detokenize(\n        self.serve({\"inputs\": tokenized})[\"outputs\"])\n\n  def get_inference_signatures(self, function_keys: Dict[Text, Text]):\n    signatures = {}","sourceCodeStart":413,"sourceCodeEnd":449,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/nlp/serving/serving_modules.py#L413-L449","documentation":"Error \"EOS token not in tokenizer vocab.Please make sure the tokenizer generates a single token for an empty string.\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/nlp/serving/serving_modules.py:431 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"}