Tenminator2 — Framework de Deep Learning Ultraligero
Project description
Tenminator 2
Framework de Deep Learning Ultraligero — pip install Tenminator2
Framework de entrenamiento e inferencia de modelos de lenguaje, diseñado para dispositivos con recursos limitados.
Instalación
pip install Tenminator2
# Con soporte numba (aceleración CPU):
pip install Tenminator2[numba]
# Con soporte JAX:
pip install Tenminator2[jax]
Inicio Rápido
import Tenminator2 as tm
# Crear un modelo simple
model = tm.Sequential(
tm.Linear(784, 256),
tm.ReLU(),
tm.Dropout(p=0.2),
tm.Linear(256, 10),
)
# Tensor de entrada
x = tm.Tensor([[1.0, 2.0, 3.0]])
out = model(x)
print(out.shape)
Módulos Disponibles
| Módulo | Descripción |
|---|---|
Tensor |
Tensor con soporte de autograd |
Linear |
Capa lineal (fully connected) |
Embedding |
Tabla de embeddings |
LayerNorm |
Normalización de capa |
RMSNorm |
Root Mean Square Normalization |
ReLU |
Activación ReLU |
GELU |
Activación GELU |
SiLU |
Activación SiLU / Swish |
Dropout |
Regularización por dropout |
Sequential |
Contenedor secuencial |
MultiHeadAttention |
Atención multi-cabeza |
TransformerBlock |
Bloque Transformer completo |
CrossEntropyLoss |
Pérdida entropía cruzada |
MSELoss |
Error cuadrático medio |
BCELoss |
Entropía cruzada binaria |
Optimizadores
optimizer = tm.Adam(model.parameters(), lr=1e-3)
optimizer.step()
optimizer.zero_grad()
| Optimizador | Descripción |
|---|---|
SGD |
Descenso de gradiente estocástico |
Adam |
Adam con corrección de sesgo |
AdamW |
Adam con weight decay desacoplado |
Backends
tm.set_backend("numpy") # Por defecto
tm.set_backend("numba") # Aceleración CPU
tm.set_backend("jax") # JAX/XLA
tm.print_backend_info()
Transformer
block = tm.TransformerBlock(
embed_dim=512,
num_heads=8,
ff_dim=2048,
dropout=0.1,
norm_type="layer", # o "rms" para RMSNorm
)
Steering y Corrección de Sesgos
import numpy as np
# Aplicar steering vector a una capa
sv = np.random.randn(256)
with tm.SteeringHook(model._modules["0"], sv, strength=0.1):
output = model(x)
# Corrección de sesgos durante inferencia
cv = np.zeros(256)
with tm.BiasCorrector(model._modules["0"], cv, strength=0.05):
prediction = model(input_data)
Entrenamiento
config = tm.TrainingConfig(
max_iterations=100,
early_stop_patience=12,
checkpoint_dir="./checkpoints",
)
controller = tm.TrainingController(model, optimizer, loss_fn, config)
for data in dataloader:
if not controller.should_continue():
break
loss = train_step(data)
controller.update(loss)
CLI
Tenminator2 info
Tenminator2 train --data data.csv --config config.json
Tenminator2 evaluate --model checkpoint.pth --data test.csv
Licencia
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
tenminator2-2.0.0.tar.gz
(37.5 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tenminator2-2.0.0.tar.gz.
File metadata
- Download URL: tenminator2-2.0.0.tar.gz
- Upload date:
- Size: 37.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c57fe62c132c709d4fb6db46d69da7332196072d142310d27b3b444f2aba2531
|
|
| MD5 |
0832354ff684bb81321c1df8a2bcb64d
|
|
| BLAKE2b-256 |
251152286422c81a8fb350c6ebaf8bed370170d962a5e899a4d0d7cfc99e763d
|
File details
Details for the file tenminator2-2.0.0-py3-none-any.whl.
File metadata
- Download URL: tenminator2-2.0.0-py3-none-any.whl
- Upload date:
- Size: 45.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d39412a46f88725af3c249fe96137c76b199aca79490b440c0726ac35db954c4
|
|
| MD5 |
757a95f490183bf1b3af755c11a8f453
|
|
| BLAKE2b-256 |
a8c6b4f3d5316371d7da1d17d9f5458f6fc29ae9ce6dd2f75dc764c7a0f36ca1
|