etils1.11.0
etils1.11.0
Published
Collection of common python utils
pip install etils
Package Downloads
Authors
Project URLs
Requires Python
>=3.10
Dependencies
- etils
[array-types]; extra == "all"
- etils
[eapp]; extra == "all"
- etils
[ecolab]; extra == "all"
- etils
[edc]; extra == "all"
- etils
[enp]; extra == "all"
- etils
[epath]; extra == "all"
- etils
[epath-gcs]; extra == "all"
- etils
[epath-s3]; extra == "all"
- etils
[epy]; extra == "all"
- etils
[etqdm]; extra == "all"
- etils
[etree]; extra == "all"
- etils
[etree-dm]; extra == "all"
- etils
[etree-jax]; extra == "all"
- etils
[etree-tf]; extra == "all"
- etils
[enp]; extra == "array-types"
- pytest
; extra == "dev"
- pytest-subtests
; extra == "dev"
- pytest-xdist
; extra == "dev"
- pyink
; extra == "dev"
- pylint
>=2.6.0; extra == "dev"
- chex
; extra == "dev"
- fiddle
; extra == "dev"
- torch
; extra == "dev"
- optree
; extra == "dev"
- tensorflow_datasets
; extra == "dev"
- pydantic
; extra == "dev"
- sphinx-apitree
[ext]; extra == "docs"
- etils
[all,dev]; extra == "docs"
- absl-py
; extra == "eapp"
- simple_parsing
; extra == "eapp"
- etils
[epy]; extra == "eapp"
- jupyter
; extra == "ecolab"
- numpy
; extra == "ecolab"
- mediapy
; extra == "ecolab"
- packaging
; extra == "ecolab"
- protobuf
; extra == "ecolab"
- etils
[enp]; extra == "ecolab"
- etils
[epy]; extra == "ecolab"
- etils
[etree]; extra == "ecolab"
- etils
[epy]; extra == "edc"
- numpy
; extra == "enp"
- etils
[epy]; extra == "enp"
- fsspec
; extra == "epath"
- importlib_resources
; extra == "epath"
- typing_extensions
; extra == "epath"
- zipp
; extra == "epath"
- etils
[epy]; extra == "epath"
- gcsfs
; extra == "epath-gcs"
- etils
[epath]; extra == "epath-gcs"
- s3fs
; extra == "epath-s3"
- etils
[epath]; extra == "epath-s3"
- typing_extensions
; extra == "epy"
- absl-py
; extra == "etqdm"
- tqdm
; extra == "etqdm"
- etils
[epy]; extra == "etqdm"
- etils
[array-types]; extra == "etree"
- etils
[epy]; extra == "etree"
- etils
[enp]; extra == "etree"
- etils
[etqdm]; extra == "etree"
- dm-tree
; extra == "etree-dm"
- etils
[etree]; extra == "etree-dm"
- jax
[cpu]; extra == "etree-jax"
- etils
[etree]; extra == "etree-jax"
- tensorflow
; extra == "etree-tf"
- etils
[etree]; extra == "etree-tf"
- etils
[ecolab]; extra == "lazy-imports"
Etils
etils (eclectic utils) is an open-source collection of utils for python.
Each top-level submodule is a self-contained independent module (with its
own BUILD
rule), meant to be imported individually. To avoid collisions with
other modules/variables, module names are prefixed by e
(arbitrary
convention):
from etils import epath # Path utils
from etils import epy # Python utils
from etils import ejax # Jax utils
...
Becauses each module is independent, only the minimal required libraries are
imported (for example, importing epy
won't suffer the cost of importing TF,
jax,...)
Documentation
etils.epath
: pathlib-like API forgs://
,s3://
,...etils.etree
: Tree utils fortf.nest
,jax.tree_utils
, DeepMindtree
.etils.enp
: Numpy utils.etils.ecolab
: Colab utils.etils.array_types
: Typing annotations for jax, numpy,... arraysetils.edc
: Dataclasses utils.etils.epy
: Collection of generic python utils.etils.eapp
: Absl flags/app utils.- API design guide.
Installation
Because each module is independent and require different dependencies, you can select which modules deps to install:
pip install etils[array_types,epath,epy]
This is not an official Google product.