{"record":{"id":"12ee88358d5445c7","repo":"keras-team/keras","slug":"axis-axis-is-out-of-bounds-for-an-array-with-dim","errorCode":null,"errorMessage":"axis {axis} is out of bounds for an array with dimension {num_dims}.","messagePattern":"axis (.+?) is out of bounds for an array with dimension (.+?)\\.","errorType":"exception","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"keras/src/backend/common/backend_utils.py","lineNumber":352,"sourceCode":"            strides=strides[i],\n            padding=padding,\n            output_padding=current_output_padding,\n            dilation_rate=dilation_rate[i],\n        )\n        output_shape.append(shape_i)\n\n    if data_format == \"channels_last\":\n        output_shape = [input_shape[0]] + output_shape + [filters]\n    else:\n        output_shape = [input_shape[0], filters] + output_shape\n    return output_shape\n\n\ndef canonicalize_axis(axis, num_dims):\n    \"\"\"Canonicalize an axis in [-num_dims, num_dims) to [0, num_dims).\"\"\"\n    axis = operator.index(axis)\n    if not -num_dims <= axis < num_dims:\n        raise ValueError(\n            f\"axis {axis} is out of bounds for an array with dimension \"\n            f\"{num_dims}.\"\n        )\n    if axis < 0:\n        axis = axis + num_dims\n    return axis\n\n\ndef canonicalize_axes(axis, num_dims):\n    \"\"\"Canonicalize an axis or axes to a tuple of non-negative integers.\"\"\"\n    if isinstance(axis, (tuple, list)):\n        return tuple(canonicalize_axis(a, num_dims) for a in axis)\n    return (canonicalize_axis(axis, num_dims),)\n\n\ndef standardize_axis_for_numpy(axis):\n    \"\"\"Standardize an axis to a tuple if it is a list in the numpy backend.\"\"\"\n    return tuple(axis) if isinstance(axis, list) else axis","sourceCodeStart":334,"sourceCodeEnd":370,"githubUrl":"https://github.com/keras-team/keras/blob/7a34a03db60bf60042242d6a556fc3be119046a5/keras/src/backend/common/backend_utils.py#L334-L370","documentation":"Error \"axis {axis} is out of bounds for an array with dimension {num_dims}.\" thrown in keras-team/keras.","triggerScenarios":"Thrown at keras/src/backend/common/backend_utils.py:352 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":"7a34a03db60bf60042242d6a556fc3be119046a5","analyzedAt":"2026-08-25T21:25:25.994Z","schemaVersion":2},"datasetVersion":"2026-08-26T02:17:13.382Z"}