{"record":{"id":"1566dc6dc8420ce9","repo":"tensorflow/models","slug":"optimizer-type-must-be-specified","errorCode":null,"errorMessage":"Optimizer type must be specified","messagePattern":"Optimizer type must be specified","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"official/modeling/optimization/optimizer_factory.py","lineNumber":154,"sourceCode":"  optimizer = opt_factory.build_optimizer(lr)\n  ```\n  \"\"\"\n\n  def __init__(self, config: opt_cfg.OptimizationConfig):\n    \"\"\"Initializing OptimizerFactory.\n\n    Args:\n      config: OptimizationConfig instance contain optimization config.\n    \"\"\"\n    self._config = config\n    self._optimizer_config = config.optimizer.get()\n    self._optimizer_type = config.optimizer.type\n\n    self._use_ema = config.ema is not None\n    self._ema_config = config.ema\n\n    if self._optimizer_config is None:\n      raise ValueError('Optimizer type must be specified')\n\n    self._lr_config = config.learning_rate.get()\n    self._lr_type = config.learning_rate.type\n\n    if self._lr_type is None:\n      raise ValueError('Learning rate type must be specified')\n\n    self._warmup_config = config.warmup.get()\n    self._warmup_type = config.warmup.type\n\n  def build_learning_rate(self):\n    \"\"\"Build learning rate.\n\n    Builds learning rate from config. Learning rate schedule is built according\n    to the learning rate config. If learning rate type is consant,\n    lr_config.learning_rate is returned.\n\n    Returns:","sourceCodeStart":136,"sourceCodeEnd":172,"githubUrl":"https://github.com/tensorflow/models/blob/e006f5f0d534913e49c1f1dae87364039fa607e2/official/modeling/optimization/optimizer_factory.py#L136-L172","documentation":"Error \"Optimizer type must be specified\" thrown in tensorflow/models.","triggerScenarios":"Thrown at official/modeling/optimization/optimizer_factory.py:154 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"}