{"record":{"id":"bd2ef24678bcc3e7","repo":"babysor/MockingBird","slug":"unknown-input-layer-bd2ef2","errorCode":null,"errorMessage":"unknown input_layer: ","messagePattern":"unknown input_layer: ","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"models/ppg_extractor/encoder/encoder.py","lineNumber":131,"sourceCode":"            )\n        elif input_layer == \"vgg2l\":\n            self.embed = VGG2L(idim, attention_dim)\n        elif input_layer == \"embed\":\n            self.embed = torch.nn.Sequential(\n                torch.nn.Embedding(idim, attention_dim, padding_idx=padding_idx),\n                pos_enc_class(attention_dim, positional_dropout_rate),\n            )\n        elif isinstance(input_layer, torch.nn.Module):\n            self.embed = torch.nn.Sequential(\n                input_layer,\n                pos_enc_class(attention_dim, positional_dropout_rate),\n            )\n        elif input_layer is None:\n            self.embed = torch.nn.Sequential(\n                pos_enc_class(attention_dim, positional_dropout_rate)\n            )\n        else:\n            raise ValueError(\"unknown input_layer: \" + input_layer)\n        self.normalize_before = normalize_before\n        if positionwise_layer_type == \"linear\":\n            positionwise_layer = PositionwiseFeedForward\n            positionwise_layer_args = (\n                attention_dim,\n                linear_units,\n                dropout_rate,\n                activation,\n            )\n        elif positionwise_layer_type == \"conv1d\":\n            positionwise_layer = MultiLayeredConv1d\n            positionwise_layer_args = (\n                attention_dim,\n                linear_units,\n                positionwise_conv_kernel_size,\n                dropout_rate,\n            )\n        elif positionwise_layer_type == \"conv1d-linear\":","sourceCodeStart":113,"sourceCodeEnd":149,"githubUrl":"https://github.com/babysor/MockingBird/blob/28dc5e14f12d7c754612af2fde8e78a4b03f8616/models/ppg_extractor/encoder/encoder.py#L113-L149","documentation":"The transformer Encoder constructor rejects input_layer values other than 'conv2d', 'conv2d6', 'conv2d8', 'linear', or None.","triggerScenarios":"Constructing the ppg_extractor Encoder with an unrecognized input_layer value from config.","commonSituations":"Typos, or configs copied from newer ESPnet that supports additional input layers (e.g. 'embed').","solutions":["Set input_layer to one of conv2d/conv2d6/conv2d8/linear or null","Check the config key is under the correct encoder section"],"exampleFix":"# before\ninput_layer: embed\n\n# after\ninput_layer: conv2d","handlingStrategy":"validation","validationCode":"assert input_layer in {'conv2d','conv2d6','conv2d8','linear', None}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Check for None (null in YAML) vs string typos","Keep encoder input_layer consistent with feature dimensionality"],"tags":["transformer","encoder","input-layer","config"],"backgroundTag":"invalid-enum-value","analyzedSha":"28dc5e14f12d7c754612af2fde8e78a4b03f8616","analyzedAt":"2026-08-27T02:26:53.589Z","schemaVersion":2},"datasetVersion":"2026-08-27T03:17:27.898Z"}