{"record":{"id":"05db731b2ead121d","repo":"tensorflow/models","slug":"unknown-distillation-mode-self-mode","errorCode":null,"errorMessage":"Unknown distillation mode: {self.mode}.","messagePattern":"Unknown distillation mode: (.+?)\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/projects/edgetpu/nlp/mobilebert_edgetpu_trainer.py","lineNumber":229,"sourceCode":"              student_attention_score=student_attention_score,\n              teacher_output_feature=teacher_output_feature,\n              teacher_attention_score=teacher_attention_score))\n    elif self.mode == DistillationMode.END2END:\n      # Build a model that outputs teacher's and student's MLM/NSP outputs.\n      inputs = self.student_model.inputs\n      student_pretrainer_outputs = self.student_model(inputs)\n      teacher_pretrainer_outputs = self.teacher_model(inputs)\n      model = tf_keras.Model(\n          inputs=inputs,\n          outputs=dict(\n              student_pretrainer_outputs=student_pretrainer_outputs,\n              teacher_pretrainer_outputs=teacher_pretrainer_outputs,\n          ))\n      # Checkpoint the student encoder which is the goal of distillation.\n      model.checkpoint_items = self.student_model.checkpoint_items\n      return model\n    else:\n      raise ValueError(f'Unknown distillation mode: {self.mode}.')\n\n  def build_optimizer(self, config):\n    \"\"\"Creates optimier for the fused model.\"\"\"\n    optimizer_config = self.optimizer_config.replace(\n        learning_rate={\n            'polynomial': {\n                'decay_steps': config.decay_steps,\n                'initial_learning_rate': config.initial_learning_rate,\n                'end_learning_rate': config.end_learning_rate,\n            }\n        },\n        warmup={\n            'type': 'linear',\n            'linear': {\n                'warmup_steps': config.warmup_steps,\n            }\n        })\n    logging.info('The optimizer config is: %s', optimizer_config.as_dict())","sourceCodeStart":211,"sourceCodeEnd":247,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/projects/edgetpu/nlp/mobilebert_edgetpu_trainer.py#L211-L247","documentation":"Error \"Unknown distillation mode: {self.mode}.\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/projects/edgetpu/nlp/mobilebert_edgetpu_trainer.py:229 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"}