{"record":{"id":"e5fa490f00bee791","repo":"lllyasviel/style2paints","slug":"unknown-layer-name-fed-s","errorCode":null,"errorMessage":"Unknown layer name fed: %s","messagePattern":"Unknown layer name fed: (.+?)","errorType":"exception","errorClass":"KeyError","httpStatus":null,"severity":"error","filePath":"V4/s2p_v4_server/smoother.py","lineNumber":57,"sourceCode":"        self.setup()\n\n    def setup(self):\n        (self.feed('data')\n             .conv(name = 'smoothing'))\n\n    def get_unique_name(self, prefix):\n        ident = sum(t.startswith(prefix) for t, _ in self.layers.items()) + 1\n        return '%s_%d' % (prefix, ident)\n\n    def feed(self, *args):\n        assert len(args) != 0\n        self.terminals = []\n        for fed_layer in args:\n            if isinstance(fed_layer, str):\n                try:\n                    fed_layer = self.layers[fed_layer]\n                except KeyError:\n                    raise KeyError('Unknown layer name fed: %s' % fed_layer)\n            self.terminals.append(fed_layer)\n        return self\n\n    def gauss_kernel(self, kernlen=21, nsig=3, channels=1):\n        interval = (2*nsig+1.)/(kernlen)\n        x = np.linspace(-nsig-interval/2., nsig+interval/2., kernlen+1)\n        kern1d = np.diff(st.norm.cdf(x))\n        kernel_raw = np.sqrt(np.outer(kern1d, kern1d))\n        kernel = kernel_raw/kernel_raw.sum()\n        out_filter = np.array(kernel, dtype = np.float32)\n        out_filter = out_filter.reshape((int(kernlen), int(kernlen), 1, 1))\n        out_filter = np.repeat(out_filter, channels, axis = 2)\n        return out_filter\n\n    def make_gauss_var(self, name, size, sigma, c_i):\n        kernel = self.gauss_kernel(size, sigma, c_i)\n        var = tf.Variable(tf.convert_to_tensor(kernel), name=name)\n        return var","sourceCodeStart":39,"sourceCodeEnd":75,"githubUrl":"https://github.com/lllyasviel/style2paints/blob/a0d164d6a8a69fa4a87139bcd193291057f4ca39/V4/s2p_v4_server/smoother.py#L39-L75","documentation":"Network.feed() accepts layer references either as actual tensor objects or as string names looked up in self.layers. When a string is given but the dict lookup raises KeyError, feed re-raises it with a clearer 'Unknown layer name fed' message. This means the named layer does not exist (yet) in the network being built.","triggerScenarios":"Calling feed('some_name') where 'some_name' was never registered — the layer was never created, was created with a different name, or belongs to a different Network instance. Raised from within layer_decorated when a layer call is given string arguments referring to unknown layers.","commonSituations":"Typo in the layer name; auto-generated unique names (get_unique_name appends suffixes) not matching hand-written names; referencing a layer built on a different Network instance; resuming/rewriting model code after layer names changed.","solutions":["Print the network's net.layers dict keys and feed an exact existing name","Verify the referenced layer was created on the same Network instance before feed is called","Pass the tensor/variable object directly instead of its name string"],"exampleFix":"# before\nnet.feed('conv_1_1')  # KeyError: actual name may be 'conv1'\n\n# after\nprint(list(net.layers.keys()))\nnet.feed('conv1')  # exact key from net.layers","handlingStrategy":"validation","validationCode":"def ensure_layer_exists(net, name):\n    if name not in net.layers:\n        raise KeyError(f'{name} not in layers: {list(net.layers.keys())}')\n\nensure_layer_exists(net, 'conv1')\nnet.feed('conv1')","typeGuard":null,"tryCatchPattern":"try:\n    net.feed('conv1')\nexcept KeyError as e:\n    print('Available:', list(net.layers.keys()))\n    raise","preventionTips":["Log/inspect net.layers keys before feeding by name","Avoid relying on auto-generated names; pass explicit name= kwargs","Pass tensor objects instead of strings when the reference is in scope","Keep layer names and feed strings in one shared constant list"],"tags":["tensorflow","network-builder","keyerror","layer-lookup"],"backgroundTag":"unknown-layer-name","analyzedSha":"a0d164d6a8a69fa4a87139bcd193291057f4ca39","analyzedAt":"2026-09-02T22:11:10.837Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-10T02:17:09.455Z"}