{"categories":[{"label":"Scientific/Engineering","url":"https://skillfed.io/packages/category/scientific-engineering/4"}],"enrichment":{"capability":"Einshape provides a DSL-based interface for tensor reshaping, squeezing, expanding, and transposing operations using Einstein-notation-style equations across multiple frameworks.","skillfed_tags":["tensor-manipulation","dsl"],"use_cases":["Reorder tensor axes for model input formats without manually computing permutation indices.","Reshape batch and feature dimensions in a single readable operation instead of chained calls.","Expand or squeeze unit dimensions using compact notation rather than repeated function calls.","Split or combine dimensions with automatic size inference from keyword arguments.","Write framework-agnostic tensor transformation code using the parser and engine."],"what_it_does":"Einshape is a DSL-based tensor manipulation library that unifies reshape, squeeze, expand_dims, and transpose operations under a single Einstein-notation-inspired syntax. Instead of chaining multiple function calls or computing permutation indices, you write compact equations like \"nhwc->nchw\" to transpose or \"(mn)hwc->mnhwc\" to split dimensions, making complex tensor transformations more readable and less error-prone.\n\nThe library works across multiple frameworks by exposing both a high-level API for each and a lower-level parser and engine for custom implementations. It supports advanced features like ellipsis (...) for variable-rank tensors, grouping syntax for dimension factorization, and unit dimensions for squeeze and expand operations. You supply dimension sizes via keyword arguments when they cannot be inferred from the equation.","worth_installing":"Yes, if you perform frequent tensor reshaping and want more readable transformation code. The DSL is expressive and reduces boilerplate. However, maintenance is dormant (last release 2022-12-19); verify compatibility with your framework version before adopting in production. For occasional reshaping, native operations may be simpler."},"id":"einshape","links":{"html":"https://skillfed.io/packages/einshape","md":"https://skillfed.io/packages/einshape.md","pypi":"https://pypi.org/project/einshape/"},"maintenance":{"status":"dormant"},"meta":{"latest_release":"2022-12-19","license_spdx":null,"license_treatment":"permissive","name":"einshape","python_support":"unspecified","summary":"DSL-based reshaping library for JAX and other frameworks"},"popularity":{"monthly_downloads":533200,"position":6142,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.0"}
