# AUTOGENERATED! DO NOT EDIT! File to edit: ../nbs/61_tens.ipynb.

# %% auto 0
__all__ = ['DETACH', 'DEVICE', 'INT8', 'INT16', 'INT32', 'INT64', 'UINT8', 'UINT16', 'UINT32', 'UINT64', 'FLOAT16', 'FLOAT32',
           'FLOAT64', 'FLOAT128', 'COMPLEX64', 'COMPLEX128', 'COMPLEX256', 'CUDA', 'MPS', 'CPU', 'IPU', 'XPU', 'TPU',
           'MKLDNN', 'OPENGL', 'OPENCL', 'VULKAN', 'IDEEP', 'HIP', 'VE', 'FPGA', 'ORT', 'XLA', 'LAZY', 'META', 'HPU',
           'PRIVATEUSEONE', 'NCCL', 'CUDNN', 'NVIDIA', 'CLONE', 'NUMPY', 'ACC', 'ACCEL', 'ACCELERATORS', 'EYE', 'DIRAC',
           'ZEROS', 'NORMAL', 'SPARSE', 'UNIFORM', 'CONSTANT', 'ORTHOGONAL', 'XAVIER', 'KAIMING', 'XAVIER_NORMAL',
           'KAIMING_NORMAL', 'XAVIER_UNIFORM', 'ELU', 'LOG', 'MIN', 'MAX', 'HARD', 'SOFT', 'PLUS', 'RELU', 'TANH',
           'LEAKY', 'SWISH', 'SHRINK', 'SIGMOID', 'MULTI', 'HEAD', 'ATT', 'ATTENTION', 'HARDTANH', 'HARDSWISH',
           'HARDSHRINK', 'HARDSIGMOID', 'SOFTMIN', 'SOFTMAX', 'SOFTPLUS', 'SOFTMAX2D', 'SOFTSHRINK', 'LEAKYRELU',
           'LOGSOFTMAX', 'LOGSIGMOID', 'MULTIHEADATTENTION', 'GLU', 'SELU', 'CELU', 'GELU', 'PRELU', 'SILU', 'MISH',
           'TANHSHRINK', 'THRESHOLD', 'ADAPTIVELOGSOFTMAXWITHLOSS', 'TCHW', 'THWC', 'NUM', 'PAD', 'PROJ', 'LAYER',
           'LAYERS', 'SIZE', 'INPUT', 'HIDDEN', 'OUTPUT', 'INPUT_SIZE', 'HIDDEN_SIZE', 'OUTPUT_SIZE', 'NUM_LAYERS',
           'BIAS', 'BATCH', 'BATCH_SIZE', 'BATCH_FIRST', 'DROPOUT', 'BIDIRECTIONAL', 'PROJ_SIZE', 'NONLINEARITY',
           'IS2D', 'INIT', 'NINIT', 'N_INIT', 'IS_BUILT', 'IS_AVAILABLE', 'SEED', 'SEEDS', 'SEEDED']

# %% ../nbs/61_tens.ipynb 4
from .args import IS

# %% ../nbs/61_tens.ipynb 6
DETACH = 'detach'
DEVICE = 'device'

# %% ../nbs/61_tens.ipynb 7
INT8 = 'int8'
INT16 = 'int16'
INT32 = 'int32'
INT64 = 'int64'
UINT8 = 'uint8'
UINT16 = 'uint16'
UINT32 = 'uint32'
UINT64 = 'uint64'
FLOAT16 = 'float16'
FLOAT32 = 'float32'
FLOAT64 =  'float64'
FLOAT128 = 'float128'
COMPLEX64 = 'complex64'
COMPLEX128 = 'complex128'
COMPLEX256 = 'complex256'


# %% ../nbs/61_tens.ipynb 9
CUDA = 'cuda'
MPS = 'mps'
CPU = 'cpu'
IPU = 'ipu'
XPU = 'xpu'
TPU = 'tpu'
MKLDNN = 'mkldnn'
OPENGL = 'opengl'
OPENCL = 'opencl'
VULKAN = 'vulkan'
IDEEP = 'ideep'
HIP = 'hip'
VE = 've'
FPGA = 'fpga'
ORT = 'ort'
XLA = 'xla'
LAZY = 'lazy'
META = 'meta'
HPU = 'hpu'
PRIVATEUSEONE = 'privateuseone'

# %% ../nbs/61_tens.ipynb 11
NCCL = 'nccl'
CUDNN = 'cudnn'
NVIDIA = 'nvidia'

# %% ../nbs/61_tens.ipynb 13
CLONE = 'clone'
NUMPY = 'numpy'

# %% ../nbs/61_tens.ipynb 15
ACC = 'acc'
ACCEL = f'{ACC}el'
ACCELERATORS = f'{ACCEL}erators'

# %% ../nbs/61_tens.ipynb 18
EYE = 'eye'
DIRAC = 'dirac'
ZEROS = 'zeros'
NORMAL =  'normal'
SPARSE = 'sparse'
UNIFORM = 'uniform'
CONSTANT = 'constant'
ORTHOGONAL = 'orthogonal'

XAVIER = 'xavier'
KAIMING = 'kaiming'

XAVIER_NORMAL = f'{XAVIER}_{NORMAL}'
KAIMING_NORMAL = f'{KAIMING}_{NORMAL}'
XAVIER_UNIFORM = f'{XAVIER}_{UNIFORM}'

# %% ../nbs/61_tens.ipynb 20
ELU = 'elu'
LOG = 'log'

MIN = 'min'
MAX = 'max'
HARD = 'hard'
SOFT = 'soft'
PLUS = 'plus'

RELU = f'r{ELU}'
TANH = 'tanh'

LEAKY = 'leaky'
SWISH = 'swish'

SHRINK = 'shrink'
SIGMOID = 'sigmoid'

MULTI = 'multi'
HEAD = 'head'

ATT = 'att'
ATTENTION = f'{ATT}ention'

# %% ../nbs/61_tens.ipynb 21
HARDTANH = f'{HARD}{TANH}'
HARDSWISH = f'{HARD}{SWISH}'
HARDSHRINK = f'{HARD}{SHRINK}'
HARDSIGMOID = f'{HARD}{SIGMOID}'

SOFTMIN = f'{SOFT}{MIN}'
SOFTMAX = f'{SOFT}{MAX}'
SOFTPLUS = f'{SOFT}{PLUS}'
SOFTMAX2D = f'{SOFTMAX}2d'
SOFTSHRINK = f'{SOFT}{SHRINK}'

LEAKYRELU = f'{LEAKY}{RELU}'

LOGSOFTMAX = f'{LOG}{SOFTMAX}'
LOGSIGMOID = f'{LOG}{SIGMOID}'

MULTIHEADATTENTION = f'{MULTI}{HEAD}{ATTENTION}'

GLU = 'glu'

SELU = f's{ELU}'
CELU = f'c{ELU}'
GELU = f'g{ELU}'
PRELU = f'p{RELU}'

SILU = 'silu'
MISH = 'mish'

TANHSHRINK = f'{TANH}{SHRINK}'

THRESHOLD = 'threshold'

ADAPTIVELOGSOFTMAXWITHLOSS = f'adaptive{LOGSOFTMAX}withloss'

# %% ../nbs/61_tens.ipynb 23
TCHW = 'tchw'
THWC = 'thwc'

# %% ../nbs/61_tens.ipynb 25
NUM = 'num'

PAD = 'pad'

PROJ = 'proj'
LAYER = 'layer'
LAYERS = f'{LAYER}s'

SIZE = 'size'
INPUT = 'input'
HIDDEN = 'hidden'
OUTPUT = 'output'
INPUT_SIZE = f'{INPUT}_{SIZE}'
HIDDEN_SIZE = f'{HIDDEN}_{SIZE}'
OUTPUT_SIZE = f'{OUTPUT}_{SIZE}'

NUM_LAYERS = f'{NUM}_{LAYERS}'
BIAS = 'bias'
BATCH = 'batch'
BATCH_SIZE = f'{BATCH}_{SIZE}'
BATCH_FIRST = f'{BATCH}_first'


DROPOUT = 'dropout'
BIDIRECTIONAL = 'bidirectional'
PROJ_SIZE = f'{PROJ}_{SIZE}'
NONLINEARITY = 'nonlinearity'

# %% ../nbs/61_tens.ipynb 27
IS2D = f'{IS}2d'
IS2D = f'{IS}3d'

# %% ../nbs/61_tens.ipynb 28
INIT = 'init'
NINIT = f'n{INIT}'
N_INIT = f'n_{INIT}'

# %% ../nbs/61_tens.ipynb 29
IS_BUILT = 'is_built'
IS_AVAILABLE = 'is_available'

# %% ../nbs/61_tens.ipynb 30
SEED = 'seed'
SEEDS = f'{SEED}s'
SEEDED = f'{SEED}ed'
