mztrain 1.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- mztrain-1.3.0/AUTHORSHIP.md +137 -0
- mztrain-1.3.0/CHANGELOG.md +69 -0
- mztrain-1.3.0/CLA.md +33 -0
- mztrain-1.3.0/CODEOWNERS +47 -0
- mztrain-1.3.0/CONTRIBUTING.md +134 -0
- mztrain-1.3.0/LICENSE +21 -0
- mztrain-1.3.0/MANIFEST.in +20 -0
- mztrain-1.3.0/MANIFEST.sha256 +133 -0
- mztrain-1.3.0/NOTICE.md +63 -0
- mztrain-1.3.0/PKG-INFO +410 -0
- mztrain-1.3.0/PRIOR_ART.md +296 -0
- mztrain-1.3.0/README.md +342 -0
- mztrain-1.3.0/SEAL.json +793 -0
- mztrain-1.3.0/SECURITY.md +64 -0
- mztrain-1.3.0/TRADEMARK.md +96 -0
- mztrain-1.3.0/docs/ARCHITECTURE.md +59 -0
- mztrain-1.3.0/docs/COMPARATIVE_TABLES.md +222 -0
- mztrain-1.3.0/docs/DCI_PAPER.md +606 -0
- mztrain-1.3.0/docs/FASE3_SESSION_BRIEF.md +524 -0
- mztrain-1.3.0/docs/FASE4_SESSION_BRIEF.md +748 -0
- mztrain-1.3.0/docs/SPEC-elasticshape-v1.md +107 -0
- mztrain-1.3.0/docs/ZTRAIN_EVOLUTION_PLAN.md +1923 -0
- mztrain-1.3.0/docs/evidencia/PERITAJE-MATEMATICO-mztrain.md +142 -0
- mztrain-1.3.0/docs/evidencia/PREREGISTRO-T4-barrido-escala.md +92 -0
- mztrain-1.3.0/docs/evidencia/PREREGISTRO-T6-core.md +68 -0
- mztrain-1.3.0/docs/evidencia/PREREGISTRO-T7-dinamica.md +53 -0
- mztrain-1.3.0/docs/evidencia/PREREGISTRO-T8-morph.md +48 -0
- mztrain-1.3.0/docs/evidencia/T4-VEREDICTO.md +53 -0
- mztrain-1.3.0/docs/evidencia/T6-VEREDICTO.md +105 -0
- mztrain-1.3.0/docs/evidencia/T7-VEREDICTO.md +39 -0
- mztrain-1.3.0/docs/evidencia/T8-VEREDICTO.md +52 -0
- mztrain-1.3.0/examples/example_basic.py +117 -0
- mztrain-1.3.0/examples/example_memory_estimation.py +91 -0
- mztrain-1.3.0/examples/example_transformer.py +147 -0
- mztrain-1.3.0/examples/example_zcodebert.py +297 -0
- mztrain-1.3.0/pyproject.toml +212 -0
- mztrain-1.3.0/requirements.txt +9 -0
- mztrain-1.3.0/scripts/seal.py +568 -0
- mztrain-1.3.0/setup.cfg +4 -0
- mztrain-1.3.0/setup.py +99 -0
- mztrain-1.3.0/src/mztrain/__init__.py +176 -0
- mztrain-1.3.0/src/mztrain/adaptive_optimizer.py +420 -0
- mztrain-1.3.0/src/mztrain/checkpoint.py +263 -0
- mztrain-1.3.0/src/mztrain/config.py +585 -0
- mztrain-1.3.0/src/mztrain/data/__init__.py +17 -0
- mztrain-1.3.0/src/mztrain/data/dataset.py +576 -0
- mztrain-1.3.0/src/mztrain/data/tokenizer.py +547 -0
- mztrain-1.3.0/src/mztrain/elastic_rank.py +968 -0
- mztrain-1.3.0/src/mztrain/elastic_shape.py +416 -0
- mztrain-1.3.0/src/mztrain/engine.py +1639 -0
- mztrain-1.3.0/src/mztrain/gradient.py +383 -0
- mztrain-1.3.0/src/mztrain/layers.py +852 -0
- mztrain-1.3.0/src/mztrain/models/__init__.py +28 -0
- mztrain-1.3.0/src/mztrain/models/zcodebert.py +835 -0
- mztrain-1.3.0/src/mztrain/optimizer.py +295 -0
- mztrain-1.3.0/src/mztrain/precision.py +529 -0
- mztrain-1.3.0/src/mztrain/projector.py +462 -0
- mztrain-1.3.0/src/mztrain/refactorize.py +185 -0
- mztrain-1.3.0/src/mztrain/scheduler.py +376 -0
- mztrain-1.3.0/src/mztrain/shape_ops.py +269 -0
- mztrain-1.3.0/src/mztrain/utils.py +216 -0
- mztrain-1.3.0/src/mztrain/vram_governor.py +243 -0
- mztrain-1.3.0/src/mztrain.egg-info/PKG-INFO +410 -0
- mztrain-1.3.0/src/mztrain.egg-info/SOURCES.txt +83 -0
- mztrain-1.3.0/src/mztrain.egg-info/dependency_links.txt +1 -0
- mztrain-1.3.0/src/mztrain.egg-info/not-zip-safe +1 -0
- mztrain-1.3.0/src/mztrain.egg-info/requires.txt +35 -0
- mztrain-1.3.0/src/mztrain.egg-info/top_level.txt +1 -0
- mztrain-1.3.0/tests/__init__.py +0 -0
- mztrain-1.3.0/tests/conftest.py +49 -0
- mztrain-1.3.0/tests/test_bug_regressions.py +323 -0
- mztrain-1.3.0/tests/test_checkpoint.py +80 -0
- mztrain-1.3.0/tests/test_config.py +101 -0
- mztrain-1.3.0/tests/test_elastic_rank.py +882 -0
- mztrain-1.3.0/tests/test_elastic_shape.py +326 -0
- mztrain-1.3.0/tests/test_engine.py +202 -0
- mztrain-1.3.0/tests/test_gradient.py +131 -0
- mztrain-1.3.0/tests/test_layers.py +233 -0
- mztrain-1.3.0/tests/test_optimizer.py +194 -0
- mztrain-1.3.0/tests/test_peritaje_regresiones.py +706 -0
- mztrain-1.3.0/tests/test_scheduler.py +128 -0
- mztrain-1.3.0/tests/test_shape_ops.py +367 -0
- mztrain-1.3.0/tests/test_utils.py +110 -0
- mztrain-1.3.0/tests/test_vram_governor.py +241 -0
- mztrain-1.3.0/tests/test_zcodebert.py +737 -0
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
# DECLARACIÓN FORMAL DE AUTORÍA Y TITULARIDAD
|
|
2
|
+
|
|
3
|
+
**Obra protegida:** MZTrain — Motor de Entrenamiento en Espacio Comprimido
|
|
4
|
+
**Versión declarada:** 1.0 (con extensiones ElasticRank v1/v2/v3 y VRAM Governor MVP)
|
|
5
|
+
**Fecha de primera publicación:** 2025-01-15
|
|
6
|
+
**Fecha de esta declaración:** 2026-05-20
|
|
7
|
+
**Titular del copyright:** © 2025-2026 MSC Star Team — Distribuido bajo licencia MIT
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## 1. Autores y atribución
|
|
12
|
+
|
|
13
|
+
Esta obra es resultado exclusivo del trabajo intelectual y técnico de las
|
|
14
|
+
personas físicas abajo nombradas, integradas bajo el equipo **MSC Star Team**:
|
|
15
|
+
|
|
16
|
+
| Autor | Rol | Contribuciones principales | Identificación |
|
|
17
|
+
|-------|-----|----------------------------|----------------|
|
|
18
|
+
| **Esraderey** | Arquitecto principal y co-inventor | Diseño base del motor, factorización SVD entrenable, integración MNEME, motor de entrenamiento `ZTrainEngine`, scheduler de rango | msc.framework@gmail.com |
|
|
19
|
+
| **Raúl Cruz Acosta** | Co-inventor y co-desarrollador | Co-diseño del motor, optimizaciones, especificaciones técnicas de ElasticRank (señales híbridas AND, política de redundancia, loss-guard como núcleo de decisión), VRAM Governor, validación experimental | raul.cruz.acosta@example.com |
|
|
20
|
+
|
|
21
|
+
Ambos autores declaran ser **co-titulares en partes iguales (50/50)** de
|
|
22
|
+
todos los derechos patrimoniales y morales sobre la obra, salvo pacto
|
|
23
|
+
escrito en contrario y debidamente firmado por ambos.
|
|
24
|
+
|
|
25
|
+
## 2. Originalidad
|
|
26
|
+
|
|
27
|
+
Los autores declaran bajo su propia responsabilidad que:
|
|
28
|
+
|
|
29
|
+
1. La obra es **original e inédita**, fruto de su propia capacidad
|
|
30
|
+
intelectual.
|
|
31
|
+
2. No infringe derechos de terceros: las dependencias externas
|
|
32
|
+
(PyTorch, NumPy, MNEME) se utilizan conforme a sus respectivas
|
|
33
|
+
licencias y aparecen documentadas en `NOTICE.md`.
|
|
34
|
+
3. **No se ha empleado, total ni parcialmente, código generado por
|
|
35
|
+
sistemas de IA de terceros sin curación, revisión y reescritura
|
|
36
|
+
sustancial por los autores humanos**. Todo asistente automatizado
|
|
37
|
+
utilizado ha actuado bajo supervisión y dirección directa de los
|
|
38
|
+
autores, y las decisiones de diseño relevantes son humanas.
|
|
39
|
+
4. Las ideas conceptuales centrales (ver §3) fueron concebidas y
|
|
40
|
+
diseñadas en sesiones de co-diseño documentadas por los autores
|
|
41
|
+
antes de cualquier asistencia automatizada en su implementación.
|
|
42
|
+
|
|
43
|
+
## 3. Innovaciones reivindicadas (resumen — ver `PRIOR_ART.md` para detalle técnico fechado)
|
|
44
|
+
|
|
45
|
+
Las siguientes contribuciones técnicas se reivindican como invenciones
|
|
46
|
+
**originales** de los autores y constituyen el núcleo defendido por esta
|
|
47
|
+
obra. Cada una incluye fecha de concepción / primera implementación
|
|
48
|
+
documentada:
|
|
49
|
+
|
|
50
|
+
1. **Entrenamiento directo en espacio factorizado SVD con rango
|
|
51
|
+
progresivo** (publicado 2025-01-15) — entrenar `U·diag(S)·Vᵀ`
|
|
52
|
+
manteniendo los factores como parámetros optimizables de primer orden,
|
|
53
|
+
en lugar de comprimir un modelo ya entrenado.
|
|
54
|
+
2. **ElasticRank — Rango bidireccional con sleep bank en CPU/baja
|
|
55
|
+
precisión** (publicado 2026-05-15) — capacidad de dormir, revivir y
|
|
56
|
+
podar direcciones singulares preservando su estado de optimizador
|
|
57
|
+
(momentum), para acotar memoria sin perder información.
|
|
58
|
+
3. **Señal de sleep híbrida con AND de umbrales separados, no producto**
|
|
59
|
+
(publicado 2026-05-15) — evita matar direcciones con bajo score
|
|
60
|
+
espectral pero alto score de actualización.
|
|
61
|
+
4. **Señal de redundancia funcional v2: coherencia estadística por
|
|
62
|
+
leverage del Gram de términos rank-1 escalados (ElasticRank v2,
|
|
63
|
+
publicado 2026-05-15)** — `coherence_i = 1 − 1/(R+λI)⁻¹_ii` sobre la
|
|
64
|
+
matriz de correlación de columnas unitarias.
|
|
65
|
+
5. **Loss-Guard como núcleo de decisión, no como salvaguarda
|
|
66
|
+
(ElasticRank v3, publicado 2026-05-15)** — toda compactación se
|
|
67
|
+
aplica como tentativa y se revierte estructuralmente
|
|
68
|
+
(factores + buffers + estados de optimizador + contadores +
|
|
69
|
+
cooldowns) si el delta de pérdida supera un umbral.
|
|
70
|
+
6. **VRAM Governor con gating de crecimiento de rango bajo presión
|
|
71
|
+
EMA + recuperación de OOM transitorio** (publicado 2026-05-15) —
|
|
72
|
+
validado en GPU real (RTX 4060, 15/15 PASS).
|
|
73
|
+
7. **Probe de sensibilidad de pérdida por dirección como diagnóstico
|
|
74
|
+
permanente** (publicado 2026-05-15) — Spearman entre proxies
|
|
75
|
+
weight-space y delta-loss real fue medida ≈ 0.13, lo que motivó la
|
|
76
|
+
adopción del loss-delta medido como único criterio de decisión.
|
|
77
|
+
8. **Topology-aware error feedback en compresión de gradientes**
|
|
78
|
+
(publicado 2026-05-16) — los buffers de error feedback se invalidan
|
|
79
|
+
cuando cambia la forma de un factor (rank growth, ElasticRank,
|
|
80
|
+
refactorize).
|
|
81
|
+
|
|
82
|
+
## 4. Licencia y autoría
|
|
83
|
+
|
|
84
|
+
- El código se distribuye bajo la licencia **MIT** (ver `LICENSE`), permisiva:
|
|
85
|
+
permite uso, copia, modificación y redistribución conservando el aviso de
|
|
86
|
+
copyright y la licencia. Esta declaración de autoría **no restringe** esos
|
|
87
|
+
derechos; documenta la autoría y la fecha de las invenciones (§3).
|
|
88
|
+
- Los autores conservan el **copyright** y el crédito de autoría; MIT exige
|
|
89
|
+
mantener el aviso de copyright en las copias, lo que preserva la atribución.
|
|
90
|
+
- Las contribuciones externas se aceptan bajo la misma licencia MIT
|
|
91
|
+
(inbound = outbound); ver `CONTRIBUTING.md`.
|
|
92
|
+
- La publicación de las invenciones (§3, `PRIOR_ART.md`) es **prior art
|
|
93
|
+
defensivo** —establece fecha de invención frente a patentes de terceros— y es
|
|
94
|
+
independiente de la licencia MIT del código.
|
|
95
|
+
|
|
96
|
+
## 5. Verificación e integridad
|
|
97
|
+
|
|
98
|
+
La integridad de los archivos de esta obra está garantizada por el
|
|
99
|
+
sellado criptográfico en `MANIFEST.sha256` y `SEAL.json`. La cadena de
|
|
100
|
+
custodia se documenta en `SEAL.json` (raíz de Merkle, timestamps
|
|
101
|
+
ISO‑8601, algoritmos SHA‑256 y SHA‑512).
|
|
102
|
+
|
|
103
|
+
Para verificar:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
python scripts/seal.py verify
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Cualquier modificación posterior a la fecha de sellado quedará
|
|
110
|
+
detectable por divergencia entre el manifiesto y los hashes recalculados.
|
|
111
|
+
|
|
112
|
+
## 6. Anclaje temporal (timestamping)
|
|
113
|
+
|
|
114
|
+
Se recomienda anclar este documento, el `LICENSE`, el `PRIOR_ART.md` y
|
|
115
|
+
el `SEAL.json` en una o varias de las siguientes vías para prueba
|
|
116
|
+
externa de fecha cierta:
|
|
117
|
+
|
|
118
|
+
- Commit firmado con clave GPG en repositorio público (`git commit -S`).
|
|
119
|
+
- Servicio de timestamping RFC 3161 (TSA) sobre el `SEAL.json`.
|
|
120
|
+
- Publicación en archivo público con fecha trazable (Internet Archive,
|
|
121
|
+
Software Heritage, Zenodo con DOI).
|
|
122
|
+
- Anclaje en blockchain a través de OpenTimestamps (`ots stamp SEAL.json`).
|
|
123
|
+
|
|
124
|
+
## 7. Firma
|
|
125
|
+
|
|
126
|
+
Esta declaración se otorga de buena fe por los autores arriba
|
|
127
|
+
mencionados, quienes asumen plena responsabilidad por su contenido.
|
|
128
|
+
|
|
129
|
+
**Esraderey** — Co-titular ___________________________ Fecha: 2026-05-20
|
|
130
|
+
|
|
131
|
+
**Raúl Cruz Acosta** — Co-titular ___________________________ Fecha: 2026-05-20
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
> Este documento acompaña a MZTrain como declaración de autoría y prior art;
|
|
136
|
+
> se recomienda distribuirlo junto con el código. El aviso de copyright debe
|
|
137
|
+
> conservarse conforme a la licencia MIT (`LICENSE`).
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
Todos los cambios notables en MZTrain se documentan en este archivo.
|
|
4
|
+
|
|
5
|
+
El formato esta basado en [Keep a Changelog](https://keepachangelog.com/es-ES/1.0.0/),
|
|
6
|
+
y este proyecto adhiere a [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [1.0.0] - 2025-01-15
|
|
9
|
+
|
|
10
|
+
### Agregado
|
|
11
|
+
|
|
12
|
+
#### Capas Factorizadas
|
|
13
|
+
- `ZFactorizedLinear`: Capa linear que entrena factores SVD (U, S, V) directamente
|
|
14
|
+
- Inicializacion SVD, Kaiming, random, y desde pesos existentes
|
|
15
|
+
- Crecimiento progresivo de rango con preservacion de pesos
|
|
16
|
+
- Reconstruccion de pesos completos para exportacion
|
|
17
|
+
- Metricas de compresion y error de reconstruccion
|
|
18
|
+
- `ZFactorizedAttention`: Multi-Head Attention con proyecciones Q,K,V,O factorizadas
|
|
19
|
+
- `ZFactorizedTransformerBlock`: Bloque Transformer completo factorizado
|
|
20
|
+
|
|
21
|
+
#### Motor de Entrenamiento
|
|
22
|
+
- `ZTrainEngine`: Orquestador principal del entrenamiento
|
|
23
|
+
- Conversion automatica de nn.Linear a ZFactorizedLinear
|
|
24
|
+
- Early stopping con restauracion del mejor modelo
|
|
25
|
+
- Sistema de callbacks para monitoreo
|
|
26
|
+
- Soporte AMP (mixed precision) en GPU
|
|
27
|
+
- Guardado y carga de checkpoints
|
|
28
|
+
|
|
29
|
+
#### Optimizer
|
|
30
|
+
- `ZCompressedAdam`: Adam con estados comprimidos INT8
|
|
31
|
+
- Compresion periodica de momentos (m, v)
|
|
32
|
+
- 75% de ahorro en memoria del optimizer
|
|
33
|
+
- Estadisticas de uso de memoria
|
|
34
|
+
|
|
35
|
+
#### Compresion de Gradientes
|
|
36
|
+
- `ZGradientCompressor`: Multiples estrategias
|
|
37
|
+
- TOP_K: Mantener top-K gradientes por magnitud
|
|
38
|
+
- 1-BIT: SignSGD con escalado por media
|
|
39
|
+
- INT8: Cuantizacion INT8 con reconstruccion
|
|
40
|
+
- SVD: Compresion de bajo rango para gradientes matriciales
|
|
41
|
+
- Error feedback para convergencia garantizada
|
|
42
|
+
|
|
43
|
+
#### Entrenamiento Progresivo
|
|
44
|
+
- `ZRankScheduler`: 5 estrategias de crecimiento de rango
|
|
45
|
+
- CONSTANT, LINEAR, EXPONENTIAL, COSINE, ADAPTIVE
|
|
46
|
+
- Crecimiento adaptativo basado en convergencia del loss
|
|
47
|
+
|
|
48
|
+
#### Activation Checkpointing
|
|
49
|
+
- `ZActivationCheckpoint`: Checkpointing comprimido via MNEME/INT8
|
|
50
|
+
- Compresion durante forward, descompresion durante backward
|
|
51
|
+
- Fallback INT8 cuando MNEME no esta disponible
|
|
52
|
+
- `z_checkpoint()`: Wrapper conveniente para checkpointing
|
|
53
|
+
|
|
54
|
+
#### Utilidades
|
|
55
|
+
- `factorize_existing_model()`: Conversion de modelos existentes
|
|
56
|
+
- `estimate_memory_savings()`: Estimacion sin modificar el modelo
|
|
57
|
+
|
|
58
|
+
#### Infraestructura
|
|
59
|
+
- Estructura modular (7 modulos especializados)
|
|
60
|
+
- pyproject.toml con configuracion completa de herramientas
|
|
61
|
+
- Suite de tests con cobertura >85%
|
|
62
|
+
- CI/CD con GitHub Actions (quality, tests, security, build)
|
|
63
|
+
- Documentacion completa (README, CHANGELOG, CONTRIBUTING)
|
|
64
|
+
- Ejemplos de uso (basico, transformer, estimacion)
|
|
65
|
+
|
|
66
|
+
### Integracion con MNEME
|
|
67
|
+
- Compresion avanzada de activaciones via ZSpace
|
|
68
|
+
- Fallback automatico a INT8 sin MNEME
|
|
69
|
+
- Compatibilidad con MNEME v2.0+
|
mztrain-1.3.0/CLA.md
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Contribuciones a MZTrain
|
|
2
|
+
|
|
3
|
+
MZTrain se distribuye bajo la licencia **MIT** (ver [`LICENSE`](LICENSE)). Las
|
|
4
|
+
contribuciones siguen el modelo estándar de los proyectos MIT: **inbound =
|
|
5
|
+
outbound**. No se exige cesión de copyright.
|
|
6
|
+
|
|
7
|
+
## Términos
|
|
8
|
+
|
|
9
|
+
1. **Licencia (inbound = outbound).** Al enviar una contribución (Pull Request,
|
|
10
|
+
parche, documentación, test, benchmark, etc.), aceptas que se licencie bajo la
|
|
11
|
+
**misma licencia MIT** del proyecto. Conservas el copyright de tu contribución;
|
|
12
|
+
MIT permite que el proyecto y terceros la usen, modifiquen y redistribuyan
|
|
13
|
+
conservando el aviso de copyright.
|
|
14
|
+
|
|
15
|
+
2. **Origen (DCO).** Declaras que tienes derecho a aportar la contribución (es tuya
|
|
16
|
+
o tienes permiso para licenciarla bajo MIT). Lo certificas firmando tus commits
|
|
17
|
+
con el *Developer Certificate of Origin*:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
git commit -s -m "feat: ..."
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
que añade la línea `Signed-off-by: Nombre <email>` (ver https://developercertificate.org/).
|
|
24
|
+
|
|
25
|
+
3. **Sin garantía.** La contribución se aporta "tal cual", conforme a la cláusula de
|
|
26
|
+
ausencia de garantía de la licencia MIT.
|
|
27
|
+
|
|
28
|
+
4. **Atribución.** Se te acreditará en el historial de commits y, cuando
|
|
29
|
+
corresponda, en las notas de versión.
|
|
30
|
+
|
|
31
|
+
No necesitas firmar ningún documento aparte: abrir un Pull Request con tus commits
|
|
32
|
+
firmados (`-s`) implica la aceptación de estos términos. Ver también
|
|
33
|
+
[`CONTRIBUTING.md`](CONTRIBUTING.md).
|
mztrain-1.3.0/CODEOWNERS
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# CODEOWNERS — MZTrain
|
|
2
|
+
#
|
|
3
|
+
# Cada cambio sobre los ficheros listados requiere revisión por sus
|
|
4
|
+
# propietarios. Este fichero se interpreta por GitHub conforme a la
|
|
5
|
+
# sintaxis oficial: https://docs.github.com/articles/about-code-owners
|
|
6
|
+
#
|
|
7
|
+
# Co-titularidad: ambos autores son revisores obligatorios sobre el
|
|
8
|
+
# código central y los documentos legales.
|
|
9
|
+
|
|
10
|
+
# Por defecto, todo el repositorio
|
|
11
|
+
* @esraderey @raulcruzacosta
|
|
12
|
+
|
|
13
|
+
# Documentos legales y sellos (modificación requiere ambas firmas)
|
|
14
|
+
/LICENSE @esraderey @raulcruzacosta
|
|
15
|
+
/AUTHORSHIP.md @esraderey @raulcruzacosta
|
|
16
|
+
/NOTICE.md @esraderey @raulcruzacosta
|
|
17
|
+
/PRIOR_ART.md @esraderey @raulcruzacosta
|
|
18
|
+
/CLA.md @esraderey @raulcruzacosta
|
|
19
|
+
/TRADEMARK.md @esraderey @raulcruzacosta
|
|
20
|
+
/SECURITY.md @esraderey @raulcruzacosta
|
|
21
|
+
/MANIFEST.sha256 @esraderey @raulcruzacosta
|
|
22
|
+
/SEAL.json @esraderey @raulcruzacosta
|
|
23
|
+
/scripts/seal.py @esraderey @raulcruzacosta
|
|
24
|
+
|
|
25
|
+
# Núcleo: motor de entrenamiento e innovaciones reivindicadas
|
|
26
|
+
/src/mztrain/engine.py @esraderey @raulcruzacosta
|
|
27
|
+
/src/mztrain/elastic_rank.py @esraderey @raulcruzacosta
|
|
28
|
+
/src/mztrain/vram_governor.py @esraderey @raulcruzacosta
|
|
29
|
+
/src/mztrain/layers.py @esraderey @raulcruzacosta
|
|
30
|
+
/src/mztrain/optimizer.py @esraderey @raulcruzacosta
|
|
31
|
+
/src/mztrain/gradient.py @esraderey @raulcruzacosta
|
|
32
|
+
/src/mztrain/scheduler.py @esraderey @raulcruzacosta
|
|
33
|
+
/src/mztrain/checkpoint.py @esraderey @raulcruzacosta
|
|
34
|
+
/src/mztrain/refactorize.py @esraderey @raulcruzacosta
|
|
35
|
+
/src/mztrain/precision.py @esraderey @raulcruzacosta
|
|
36
|
+
/src/mztrain/projector.py @esraderey @raulcruzacosta
|
|
37
|
+
|
|
38
|
+
# Benchmarks (cambios alteran las reivindicaciones empíricas)
|
|
39
|
+
/bench/ @esraderey @raulcruzacosta
|
|
40
|
+
|
|
41
|
+
# Tests (regresiones obligan a doble revisión)
|
|
42
|
+
/tests/ @esraderey @raulcruzacosta
|
|
43
|
+
|
|
44
|
+
# CI / build (cambios pueden alterar la cadena de custodia)
|
|
45
|
+
/.github/ @esraderey @raulcruzacosta
|
|
46
|
+
/pyproject.toml @esraderey @raulcruzacosta
|
|
47
|
+
/setup.py @esraderey @raulcruzacosta
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Guia de Contribucion - MZTrain
|
|
2
|
+
|
|
3
|
+
Gracias por tu interes en contribuir a MZTrain. Esta guia te ayudara a comenzar.
|
|
4
|
+
|
|
5
|
+
## Configuracion del Entorno
|
|
6
|
+
|
|
7
|
+
### Requisitos Previos
|
|
8
|
+
- Python 3.8+
|
|
9
|
+
- PyTorch 2.0+
|
|
10
|
+
- Git
|
|
11
|
+
|
|
12
|
+
### Instalacion para Desarrollo
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
git clone https://github.com/esraderey/mztrain.git
|
|
16
|
+
cd mztrain
|
|
17
|
+
python -m venv venv
|
|
18
|
+
source venv/bin/activate # Linux/Mac
|
|
19
|
+
# venv\Scripts\activate # Windows
|
|
20
|
+
pip install -e ".[dev]"
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Flujo de Trabajo
|
|
24
|
+
|
|
25
|
+
### 1. Crear una rama
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
git checkout -b feature/mi-nueva-funcionalidad
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 2. Hacer cambios
|
|
32
|
+
|
|
33
|
+
- Seguir el estilo de codigo existente
|
|
34
|
+
- Agregar tests para nueva funcionalidad
|
|
35
|
+
- Actualizar documentacion si es necesario
|
|
36
|
+
|
|
37
|
+
### 3. Ejecutar tests
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# Tests completos
|
|
41
|
+
pytest tests/ -v
|
|
42
|
+
|
|
43
|
+
# Con cobertura
|
|
44
|
+
pytest tests/ -v --cov=src/mztrain --cov-report=html
|
|
45
|
+
|
|
46
|
+
# Tests rapidos (sin GPU)
|
|
47
|
+
pytest tests/ -v -m "not gpu and not slow"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### 4. Verificar calidad
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Formateo
|
|
54
|
+
black src/ tests/ --line-length 127
|
|
55
|
+
isort src/ tests/ --profile black --line-length 127
|
|
56
|
+
|
|
57
|
+
# Linting
|
|
58
|
+
flake8 src/mztrain/ --max-line-length 127
|
|
59
|
+
ruff check src/mztrain/
|
|
60
|
+
|
|
61
|
+
# Type checking
|
|
62
|
+
mypy src/mztrain/ --ignore-missing-imports
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 5. Commit y Pull Request
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
git add .
|
|
69
|
+
git commit -m "feat: descripcion clara del cambio"
|
|
70
|
+
git push origin feature/mi-nueva-funcionalidad
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Luego crear un Pull Request en GitHub.
|
|
74
|
+
|
|
75
|
+
## Estilo de Codigo
|
|
76
|
+
|
|
77
|
+
- **Formato**: black con line-length=127
|
|
78
|
+
- **Imports**: isort con profile=black
|
|
79
|
+
- **Docstrings**: Estilo Google con tipos
|
|
80
|
+
- **Nombres**: snake_case para funciones, PascalCase para clases
|
|
81
|
+
- **Idioma**: Docstrings y comentarios en espanol (codigo en ingles)
|
|
82
|
+
|
|
83
|
+
## Estructura de Tests
|
|
84
|
+
|
|
85
|
+
```
|
|
86
|
+
tests/
|
|
87
|
+
├── conftest.py # Fixtures compartidos
|
|
88
|
+
├── test_config.py # Tests de configuracion
|
|
89
|
+
├── test_layers.py # Tests de capas factorizadas
|
|
90
|
+
├── test_optimizer.py # Tests del optimizer
|
|
91
|
+
├── test_gradient.py # Tests de compresion de gradientes
|
|
92
|
+
├── test_scheduler.py # Tests del scheduler de rango
|
|
93
|
+
├── test_engine.py # Tests del motor de entrenamiento
|
|
94
|
+
├── test_checkpoint.py # Tests de activation checkpointing
|
|
95
|
+
└── test_utils.py # Tests de utilidades
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Convencion de Commits
|
|
99
|
+
|
|
100
|
+
Usar [Conventional Commits](https://www.conventionalcommits.org/):
|
|
101
|
+
|
|
102
|
+
- `feat:` Nueva funcionalidad
|
|
103
|
+
- `fix:` Correccion de bug
|
|
104
|
+
- `docs:` Documentacion
|
|
105
|
+
- `test:` Tests
|
|
106
|
+
- `refactor:` Refactorizacion
|
|
107
|
+
- `perf:` Mejora de rendimiento
|
|
108
|
+
- `ci:` Cambios en CI/CD
|
|
109
|
+
|
|
110
|
+
## Reporte de Bugs
|
|
111
|
+
|
|
112
|
+
Al reportar un bug, incluir:
|
|
113
|
+
|
|
114
|
+
1. Version de MZTrain, Python y PyTorch
|
|
115
|
+
2. Sistema operativo
|
|
116
|
+
3. Pasos para reproducir
|
|
117
|
+
4. Comportamiento esperado vs actual
|
|
118
|
+
5. Logs o mensajes de error
|
|
119
|
+
|
|
120
|
+
## Solicitud de Funcionalidades
|
|
121
|
+
|
|
122
|
+
Al solicitar una funcionalidad:
|
|
123
|
+
|
|
124
|
+
1. Describir el caso de uso
|
|
125
|
+
2. Proponer una API tentativa
|
|
126
|
+
3. Considerar impacto en rendimiento y memoria
|
|
127
|
+
|
|
128
|
+
## Licencia
|
|
129
|
+
|
|
130
|
+
MZTrain se distribuye bajo la licencia **MIT**. Al contribuir, aceptas que tus
|
|
131
|
+
contribuciones se licencien bajo los mismos términos (inbound = outbound). No se
|
|
132
|
+
exige cesión de copyright: conservas la autoría de tu contribución. Basta con
|
|
133
|
+
firmar tus commits (`git commit -s`, Developer Certificate of Origin) para
|
|
134
|
+
declarar que tienes derecho a aportarla.
|
mztrain-1.3.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025-2026 MSC Star Team (Esraderey, Raúl Cruz Acosta)
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
include LICENSE
|
|
2
|
+
include README.md
|
|
3
|
+
include CHANGELOG.md
|
|
4
|
+
include CONTRIBUTING.md
|
|
5
|
+
include AUTHORSHIP.md
|
|
6
|
+
include NOTICE.md
|
|
7
|
+
include PRIOR_ART.md
|
|
8
|
+
include CLA.md
|
|
9
|
+
include TRADEMARK.md
|
|
10
|
+
include SECURITY.md
|
|
11
|
+
include CODEOWNERS
|
|
12
|
+
include MANIFEST.sha256
|
|
13
|
+
include SEAL.json
|
|
14
|
+
include requirements.txt
|
|
15
|
+
include pyproject.toml
|
|
16
|
+
include scripts/seal.py
|
|
17
|
+
recursive-include src/mztrain *.py
|
|
18
|
+
recursive-include tests *.py
|
|
19
|
+
recursive-include examples *.py
|
|
20
|
+
recursive-include docs *.md
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# MZTrain MANIFEST.sha256
|
|
2
|
+
# (c) 2025-2026 MSC Star Team. Distribuido bajo licencia MIT.
|
|
3
|
+
# generated_at_utc = 2026-08-14T06:57:45Z
|
|
4
|
+
# merkle_root_sha256 = 96a43924c9d23f3b1dd589840c7f8151d5c67277d99b3dafaa5c42983a2d2886
|
|
5
|
+
# file_count = 124
|
|
6
|
+
#
|
|
7
|
+
# Verificacion: python scripts/seal.py verify
|
|
8
|
+
# (o, en Linux/macOS: sha256sum -c MANIFEST.sha256)
|
|
9
|
+
|
|
10
|
+
77612fee7731197177a01e6502b15a30598c07acbc165d276201751df5f8b961 .claude/settings.local.json
|
|
11
|
+
1fbf938299511566feb7610a4d998fa099afea4c74b297453c4d0581354c996f .github/PULL_REQUEST_TEMPLATE.md
|
|
12
|
+
a67acaeb496c342d98510db42ba61940a90d2dd021c5f5c9f5312bac4b88cee0 .github/SECURITY.md
|
|
13
|
+
78b8d52b6c9f8756374cbfed9737d9d3af203a56331a9d15c6e1b554da8f1ea3 .github/dependabot.yml
|
|
14
|
+
e59120cb0709b208d5e51159941215a34e678dc400fac8c74c9b786666218cc8 .github/workflows/ci.yml
|
|
15
|
+
1d38479a49f71164f2f373ba34cec870bea3fa70f47194d47b21778a61781f2f .github/workflows/security.yml
|
|
16
|
+
da3b48a392e525b010516c6d2bf74c2704f8663080fd421d7799209956d24e63 .gitignore
|
|
17
|
+
24b2f7aef45b9633480520862762b141ea61f3ad296a1c04047392df3e694362 AUTHORSHIP.md
|
|
18
|
+
1a1bb10850d994702ef1de4602c3b3aca865852a6e1956a3b2261bd952b597d3 CHANGELOG.md
|
|
19
|
+
0d7c0290a507f05c129512b1059e9f6b9da6f8f6afb6db413dca5d1446ae6475 CLA.md
|
|
20
|
+
392eb9465d9853124a6ed30a5bbd62c202ef1ad30dcd62c11ca513e2a7e0fa7c CODEOWNERS
|
|
21
|
+
4a7ce364d2d21ce6dd96ffd002e4decfcd796a77562bf5695f35478f1b024cb4 CONTRIBUTING.md
|
|
22
|
+
75b2ca138408117d72b4dc4244e899b570fb5e620163a1a1fda3e9d2edf92a1c LICENSE
|
|
23
|
+
944d09d44a8106719567caca0cf5288771f135498068edde376531d6508dbbbd MANIFEST.in
|
|
24
|
+
9bccd79331721a38d4ca7cc20802482795e590322865539740fd83e219e1b632 NOTICE.md
|
|
25
|
+
f211195556973ae50db7d90dee218b225192f2a9b80cf7b3bdaeb5e0590ab17d PRIOR_ART.md
|
|
26
|
+
79730481103348b57b23d224334534b288bb213b47908d4ef70e76e42d37e60b README.md
|
|
27
|
+
0d605e5b3e7c0d0fdc42815ee922bdecd203a91421b5542a5b1cfecb3cab8c03 SECURITY.md
|
|
28
|
+
f5ad5991eecb7aa599582e46d3bff99de219e65e36cfc6e1dd800c48357af4f4 TRADEMARK.md
|
|
29
|
+
fa09b94812636ea26da7bbc2eac7bf565d3b27e541504ef0a86dcd7f8ee5f1c0 analysis_full.py
|
|
30
|
+
a6bf63f145f3d75f86c60084a83df71e289ae6ca058e98074b9d19043d545cad bench/__init__.py
|
|
31
|
+
5992a432c8ea53c99f49ff8f16528207dadf4a287456d46f731cfad740c2bab4 bench/compare.py
|
|
32
|
+
3fbe566654cecbe33265ca9a1bab98969aad18ddf515d5869cfd0195564ae36a bench/elastic_bench.py
|
|
33
|
+
f7eb159aff54ad9b441e7d1b42b2e9ef16da3a7311f9e0039b25e9a5c39cd0bb bench/elastic_bench_guard.py
|
|
34
|
+
205a28f03c83647ccc8146f32832660dfc657d7bf2083f2c1cf99f4e8340486e bench/elastic_bench_real.py
|
|
35
|
+
12fc53df0cb2764b51e3abf363f632a2bf10b143a6ff628e29400d3ae531d918 bench/governor_gpu_check.py
|
|
36
|
+
ce12f49bed9c54e04270ad4718e3a59f7454144bc0be00c3de4480bfd0d21b39 bench/results/elastic_bench.json
|
|
37
|
+
8f72478daa2e834f7bd218f591ef5b985aeab7c0c0cda4e8c4ddd9744758cc63 bench/results/elastic_bench_from_scratch.json
|
|
38
|
+
083941d99313004b5130cb809fb0442dc54e77fcde4296e8884bbfa0b66b93a9 bench/results/elastic_bench_guard.json
|
|
39
|
+
edcaa15841af9c71a8351a5823a612fff27c38d30acc8b4334f4e3b52894f84c bench/results/elastic_bench_lowrank_init.json
|
|
40
|
+
443dd274d7090af44c79c405f696d095e23948cafd058e8187eebe4698a44ca0 bench/results/elastic_bench_real.json
|
|
41
|
+
b680dbfac2f17c67f16ca0d6e246a33d2708b1ad3e5cf4aa1c59366751aaef2f bench/results/fixed.json
|
|
42
|
+
551396120773ca5a0b410b6ec02a3160830731bc9b33db5086307f5ee1180d51 bench/results/fixed_v2.json
|
|
43
|
+
4e8bd0b73fc6c4f221cbc3753cae06837bc25e59d74618a071ae250412607038 bench/results/fp8.json
|
|
44
|
+
fbf33291974ee2d739349889f8a4f8825dafd799d37beba8f718f32feb0c886d bench/results/loss_sensitivity.json
|
|
45
|
+
3b0274b6303711268dbb7b3e656f9d7903f60ffdfe9e68b16d9a995b2dfe624d bench/results/loss_sensitivity_zcodebert.json
|
|
46
|
+
5968d9e31e78b95456934790fc68c4f48182b5ce14da630e2ab05d4487b3c67c bench/results/smoke.json
|
|
47
|
+
5cec4904064be870074ea088e7c465e598ceb9a4f336a1d827a3bd95a7d58798 bench/results/test_zcoder_410m_full.json
|
|
48
|
+
1169f73a8439ae2e98a578b61da70c60c7f76e6f2592a542e15c88f74ae9f552 bench/run.py
|
|
49
|
+
536c48e2a0ce44c7c6cc0fb009238f7010dff0bbbfb2c644e51bd2bd2b3f2215 bench/task.py
|
|
50
|
+
15073734551fad94a5ac834a9f45c9cec4eda378864a21fcbaa7b52ddef09598 docs/ARCHITECTURE.md
|
|
51
|
+
2eacacbf0a00304aa8c45dbb1b41478e00ac88644913f10bb5003fb445b770aa docs/COMPARATIVE_TABLES.md
|
|
52
|
+
7759c789a905c3a5ebad06eef01cba37158b5fe387c961b300efcb1deed9559b docs/DCI_PAPER.md
|
|
53
|
+
8fa713e08871a13d9b95b524576e3b267b9f52636f700f04489941bafcf43020 docs/FASE3_SESSION_BRIEF.md
|
|
54
|
+
c1e44bede3a63465f32fa37af70c3a672e0d4197ea9c92e852b8eac6508b40cb docs/FASE4_SESSION_BRIEF.md
|
|
55
|
+
a8f52b7120f7afa3a7c9ba60adecaa608884990a842c6de18f93362f04c80ed2 docs/SPEC-elasticshape-v1.md
|
|
56
|
+
3fa668eeed5902be3defb40db1ee6d0d6b6b24fb40be652d72e4762a7a122367 docs/ZTRAIN_EVOLUTION_PLAN.md
|
|
57
|
+
b76626b3091b404a47979a62477e81eeb1ecf140bd794bfae19fff5bb3fdaabb docs/evidencia/PERITAJE-MATEMATICO-mztrain.md
|
|
58
|
+
64144419fa7f22333487efefa90e8a08b13f35b6d7922ea742e38eded968c593 docs/evidencia/PREREGISTRO-T4-barrido-escala.md
|
|
59
|
+
5c459fa3b8d616187b19922237d8117ef135d5d3a8079bd7cad2dffa15ce0a7e docs/evidencia/PREREGISTRO-T6-core.md
|
|
60
|
+
0c50604f7819150571f486c4479af5d7a4899e6ee31b22d5aba1d8d0442ed58e docs/evidencia/PREREGISTRO-T7-dinamica.md
|
|
61
|
+
2512a999e7b6a7848ef6a724669d175d810e183b6b9c5083be11569d5e4f95a5 docs/evidencia/PREREGISTRO-T8-morph.md
|
|
62
|
+
1a19bd41c064a91723777e22089d0478d21a4a79a7d5ec4e07d1e843f0787093 docs/evidencia/T4-VEREDICTO.md
|
|
63
|
+
369ac079c97dd7a12a1e22858fa0ed4a401af5a26622ca97a13043c7549a3c4b docs/evidencia/T6-VEREDICTO.md
|
|
64
|
+
f76d2102f3e957a183ed9917390652512df63418d7520072b0216af67a42180f docs/evidencia/T7-VEREDICTO.md
|
|
65
|
+
b66e8cdc88078cb27f4b24bc656ee44b8b11e0fb5a767202100a3d6d56ba5473 docs/evidencia/T8-VEREDICTO.md
|
|
66
|
+
23fa2c83223398a8a4205c06a2eff3a67c1b4205465ae3e924ef90e5025fb0ab docs/evidencia/t4_results.json
|
|
67
|
+
274e012c53958848176e1abea16205de83c60241d1a57018b8322bf8fb4020fc docs/evidencia/t5_capacity.json
|
|
68
|
+
c264c505df753680510c3151a854926024b076048ac5c94c8c17b70b84cab3af docs/evidencia/t6_results.json
|
|
69
|
+
c6a8464ddbeaf61398be1ee3e63c5ca4b081d92013ddcf8933208835d6de094b docs/evidencia/t7_results.json
|
|
70
|
+
3b0ecee1106be806ff25f3d2862f8ea63d6da49da40dab79ab885fcfa54cc927 docs/evidencia/t8_results.json
|
|
71
|
+
e75bf6dd78b982d931d9494859ecd8b126df1979d6b6b817c6e67d9f02fce9c3 examples/example_basic.py
|
|
72
|
+
5147d6744e92a219b2f70cbc1f8ab3a46c2df9ad13663878dd5b847b4d0599f9 examples/example_memory_estimation.py
|
|
73
|
+
bea104475cbf58924607a133ac3823f789952453d8f8496e09437ebbaabe2863 examples/example_transformer.py
|
|
74
|
+
d65fee310d60492c23cec223be6dcc28ae872c95a2e6ca418b67bdc4044931a7 examples/example_zcodebert.py
|
|
75
|
+
069ce4f4e433a685790a90c0e312395cba79042572f03c83c9fcbc1405aefcb5 generate_game.py
|
|
76
|
+
1f88e68e467f711bef13c4587e715323fd3bc996c42f993816ff0bf65a56ca90 pyproject.toml
|
|
77
|
+
96eb4796df2ca30056b7cc5249c30009ffdee79bfaffe3a5d8a1eabbed3348b8 requirements.txt
|
|
78
|
+
981611798b396983db324cf8cabb6c9e76db8aab00c7885e7edd3a058a71cd38 scripts/calc_gpu_params_equiv.py
|
|
79
|
+
f69c0d19e8ed35ed28299381bb33fd3b849290a7f42e3e99da46842e7af2b4f3 scripts/seal.py
|
|
80
|
+
0273060ddbe06b3b72799684fd512fadf59964e291f8cd8b5e7e19cd89ee8435 scripts/test_zcoder_410m_full.py
|
|
81
|
+
877eed8531948adf2ceea74fc73d62ec70004c9323180f6d23cc1863b9447c17 scripts/train_zcoder_1b.py
|
|
82
|
+
27e4a440a3a0721bf403d9b670c6605315e8b62d011d84cf3d4d737d4f5b1c5c setup.py
|
|
83
|
+
56b5253ca36f749e2b669dbe9bc0c9ca95bf47bc662c6e974634b66d3508a20a src/mztrain.egg-info/SOURCES.txt
|
|
84
|
+
01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b src/mztrain.egg-info/dependency_links.txt
|
|
85
|
+
0b451cc4d8c256c7a7cabe6067cc60c7a5ad9f76aa66d50dcef6da598c0db741 src/mztrain.egg-info/requires.txt
|
|
86
|
+
61d8983f41ebdc8a9e239c999fd422d1480193029d413b73103c3f710691a337 src/mztrain.egg-info/top_level.txt
|
|
87
|
+
4ba428e26021a44701509ca71a8c297df4a3365ba086d28617369f88c02cbfb5 src/mztrain/__init__.py
|
|
88
|
+
db3d866c55bcc3f3c6178bc0513e5c5e9ae7ff287a30c4bd5c9dcc67d347fc55 src/mztrain/adaptive_optimizer.py
|
|
89
|
+
073632151c928f03724d7062ca818425ae9266a9bd9221c06d9e3f5929f50aa8 src/mztrain/checkpoint.py
|
|
90
|
+
294034d155d45c521f6fb6dc769ae2dfed95247e2accdccb4eb2212a5448ec20 src/mztrain/config.py
|
|
91
|
+
67e3e0b3a815ab1d8aee96371529dcf96bff1baa73050a1f54f86e4f50cb65ce src/mztrain/data/__init__.py
|
|
92
|
+
d7d42c2f9a7e13d7d4c4b9843c3d9f461a8cd77356d6703ac4b8bc4194393c47 src/mztrain/data/dataset.py
|
|
93
|
+
ea86495d6a7d64bb28de2e5fdaa28de3c3a46422ca03b115cff372a8c8b45862 src/mztrain/data/tokenizer.py
|
|
94
|
+
33cac5353116a8575495580830b6d4ee70482ef5c83d72ec5d02fca90d5c983d src/mztrain/elastic_rank.py
|
|
95
|
+
c46fdda857f5ca4c5f2ca7cba69081471e8484729eb7e2fcf1a3014bbcf18d92 src/mztrain/elastic_shape.py
|
|
96
|
+
6a390237d36469ccc343eb1592c27717ce0777589d6247423f2c91980a4d4879 src/mztrain/engine.py
|
|
97
|
+
642097361ddc0cb70137703063110974ede96d0dfce76e4d44c7cdcff52d266a src/mztrain/gradient.py
|
|
98
|
+
6e097616fde871a4bb3c6c5b84d47a26c398c38885f5945c836d1b7cc0cf2895 src/mztrain/layers.py
|
|
99
|
+
5eead0a60fa721e17bceb86ecb757f0a76e0e925eb46d9084c96d150d1b45ab0 src/mztrain/models/__init__.py
|
|
100
|
+
fdeeab48bdae73d5827690a01c00ddbc2142e482ec814ea9d8881ad418c0fe5c src/mztrain/models/zcodebert.py
|
|
101
|
+
328c6476ce180843ed66911b6369b1ab8cd9137ed88fe77117d9399fbd14312a src/mztrain/optimizer.py
|
|
102
|
+
56c1513db0bbb57496cb92cead7df51de2b6fd1b48f91af8dbd0df1669157438 src/mztrain/precision.py
|
|
103
|
+
9ecf9967160442adf579b604499163816e2f5812e7faba354b2c9e9f50ba7c9d src/mztrain/projector.py
|
|
104
|
+
b38066947f5b483a0efddec941ce47c04765070762952b1faf79d60de510b064 src/mztrain/refactorize.py
|
|
105
|
+
b4c329764698607be567f81e625bb997ff012eca03c8864667e56e8552d3d64d src/mztrain/scheduler.py
|
|
106
|
+
c3273caab5b4835069e0dfa857e52360e0c76a2ada46c2d65371818e175a339a src/mztrain/shape_ops.py
|
|
107
|
+
417eb9c49d018b85c7b92bb367663cac57b1f398162e5d4bb7e70032ef34166d src/mztrain/utils.py
|
|
108
|
+
9a94181064ba3cf751436077f0563321af110302df1bc93dd27effadedcb8d88 src/mztrain/vram_governor.py
|
|
109
|
+
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 tests/__init__.py
|
|
110
|
+
51831f9096b148448c7e1ff2ff18e7281123ec81067a4861100c93b5292baa3c tests/conftest.py
|
|
111
|
+
a4ecb8590d3500bc8b6a75a8c2ce7ed8f7c990c783ae13f513de61387bfef3e7 tests/test_bug_regressions.py
|
|
112
|
+
790ec9eb0d82d35d41d8ceb3ccd46e937004e56c7186d79b92453a1f3efd6f0b tests/test_checkpoint.py
|
|
113
|
+
d13a23c07a2604bfb214e0f588dfb7f0942db15dbadd1a196c00079d474e2e80 tests/test_config.py
|
|
114
|
+
1402cad17243b082289949ee39fbab120a31b0434a9426f1a5372bc55d9d31d0 tests/test_elastic_rank.py
|
|
115
|
+
fd46d6542d824bd5137bb900ccb226fb2af50e06f5d84f5f071809ffff208593 tests/test_elastic_shape.py
|
|
116
|
+
d648b6ad74506271161c77c939c3378adf98cd481cd7cce6376ccfbb5c9c8117 tests/test_engine.py
|
|
117
|
+
0f490f5dfd9d92cf92f31e667f4b39c92e23e4d0412985e88896303210a98153 tests/test_gradient.py
|
|
118
|
+
390e9ff5ca659e973eac9635f33d178a87418364dc3bdf3c77e7d01f4e39bc75 tests/test_layers.py
|
|
119
|
+
83d0565b6c7ed8cf1abea72315b7eae8caf92810e6ba4348e520ed629836a4c7 tests/test_optimizer.py
|
|
120
|
+
3d7f3072b1fec7f855a57f5ca6d7336777b825d43dd15db885f1f7b4468f6e3a tests/test_peritaje_regresiones.py
|
|
121
|
+
2f71a5365ea0e18248943c2cf7380f6f421e73afe7ede716a87a28627ef7be20 tests/test_scheduler.py
|
|
122
|
+
e027d9313a983a0fe8e5d90d30468dd39296e3fc35db7386d17388cfe99d7957 tests/test_shape_ops.py
|
|
123
|
+
632e2aadf8c23181096e996a6043edfa7ec57c942cc942f5a53671e72fd0427a tests/test_utils.py
|
|
124
|
+
9f5051dc76301f1760154639528393b596695581f99c367db75b2c3a937e17e5 tests/test_vram_governor.py
|
|
125
|
+
2da837349e3428365e55817a93b9878bf63fc62fb0e7e0e1c10182347b0af7c1 tests/test_zcodebert.py
|
|
126
|
+
69ddc6a3620739379eac16fcf4722c1b2dddbbd0404d176600f20a6d6f881395 train_html_games.py
|
|
127
|
+
7497bddec0431743fbb5d84ce58d5a7abf3196967d8f2f36500c15e2a03f6598 zcodebert_completion_benchmark.json
|
|
128
|
+
6ddc194eef2848bf37e442ae2fb23e723c9ca91e531a98b959251243a7409967 zcoder_1b_500_watch_metrics.json
|
|
129
|
+
98e7d9f7a619ab6781a53aa3e4e89ea01b2b740d79f43f5bf651bef2a90b407f zcoder_1b_50_reset_speed_metrics.json
|
|
130
|
+
974d596417bac3357d0804771f2dd43202c0295b3a9d6bd243a050d60b4a0937 zcoder_1b_dryrun_metrics.json
|
|
131
|
+
ff3267aaed41b9321b05e9a619478caee630ccf86150db92b1b17c70f0e8affd zcoder_1b_mztrain_mneme_metrics.json
|
|
132
|
+
53e4184ad85152cf4a03a762642bcb7db98862f6094fa0bb8f961f14194c3868 zcoder_1b_speedtest_metrics.json
|
|
133
|
+
43bb02a63393b7b6582fc1a045b0616184d25c12ea1217ff4754872fe30eb278 zcoder_1b_watch_test_metrics.json
|
mztrain-1.3.0/NOTICE.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# NOTICE — Avisos y atribuciones
|
|
2
|
+
|
|
3
|
+
MZTrain — Motor de Entrenamiento en Espacio Comprimido
|
|
4
|
+
© 2025-2026 MSC Star Team (Esraderey, Raúl Cruz Acosta).
|
|
5
|
+
|
|
6
|
+
Este software se distribuye bajo la licencia **MIT** (ver [`LICENSE`](LICENSE)):
|
|
7
|
+
permite uso, copia, modificación, redistribución y uso comercial, con la única
|
|
8
|
+
condición de conservar el aviso de copyright y el texto de la licencia. La autoría
|
|
9
|
+
se documenta en [`AUTHORSHIP.md`](AUTHORSHIP.md) y las invenciones, como prior art
|
|
10
|
+
defensivo, en [`PRIOR_ART.md`](PRIOR_ART.md).
|
|
11
|
+
|
|
12
|
+
## 1. Componentes de terceros
|
|
13
|
+
|
|
14
|
+
MZTrain usa, sin incorporar su código fuente, las siguientes bibliotecas en
|
|
15
|
+
tiempo de ejecución. Sus licencias permanecen aplicables a sus componentes:
|
|
16
|
+
|
|
17
|
+
| Componente | Versión mínima | Licencia | Fuente |
|
|
18
|
+
|------------|----------------|----------|--------|
|
|
19
|
+
| PyTorch | ≥ 2.0 | BSD-3-Clause | https://github.com/pytorch/pytorch |
|
|
20
|
+
| NumPy | ≥ 1.21 | BSD-3-Clause | https://numpy.org/ |
|
|
21
|
+
| cryptography (opcional, firma del sello) | ≥ 41 | Apache-2.0 / BSD | https://github.com/pyca/cryptography |
|
|
22
|
+
| MNEME (opcional) | ≥ 2.0 | Ver licencia MNEME | https://github.com/esraderey/MNEME---Motor-de-Memoria-Neural-M-rfica |
|
|
23
|
+
|
|
24
|
+
Estos componentes no se redistribuyen como parte de MZTrain; se referencian por
|
|
25
|
+
dependencia. Los avisos de copyright de terceros son obligatorios cuando se
|
|
26
|
+
redistribuyan sus binarios.
|
|
27
|
+
|
|
28
|
+
## 2. Benchmarks y checkpoints
|
|
29
|
+
|
|
30
|
+
Los benchmarks, métricas y resultados en `bench/` y `docs/` se distribuyen bajo la
|
|
31
|
+
misma licencia MIT que el código.
|
|
32
|
+
|
|
33
|
+
Los checkpoints binarios (`zcodebert_*.pt`, `zcoder_1b_*.pt`) son modelos
|
|
34
|
+
entrenados por los autores. Los **pesos** pueden estar sujetos a términos propios
|
|
35
|
+
(dependen de los datos de entrenamiento) y no forman parte del código MIT; consulte
|
|
36
|
+
con los autores antes de asumir su licencia.
|
|
37
|
+
|
|
38
|
+
## 3. Marcas
|
|
39
|
+
|
|
40
|
+
"MZTrain", "ElasticRank", "VRAM Governor", "Loss-Guard" y los nombres de
|
|
41
|
+
componentes (`ZTrainEngine`, etc.) son marcas de MSC Star Team. La licencia MIT
|
|
42
|
+
cubre el **código**, no las **marcas**: su uso se rige por
|
|
43
|
+
[`TRADEMARK.md`](TRADEMARK.md). Las marcas de terceros (PyTorch, NumPy, NVIDIA,
|
|
44
|
+
CUDA) pertenecen a sus titulares y se mencionan con fines descriptivos.
|
|
45
|
+
|
|
46
|
+
## 4. Verificación de integridad (opcional)
|
|
47
|
+
|
|
48
|
+
La versión se acompaña de un sello criptográfico para **comprobar integridad**
|
|
49
|
+
(que los archivos no han sido alterados), no como restricción de uso:
|
|
50
|
+
|
|
51
|
+
- `MANIFEST.sha256` — hashes SHA-256 por archivo.
|
|
52
|
+
- `SEAL.json` — doble hash (SHA-256 + SHA-512), raíz de Merkle, timestamp y firma
|
|
53
|
+
Ed25519 opcional.
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
python scripts/seal.py verify
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## 5. Contacto
|
|
60
|
+
|
|
61
|
+
- Cuestiones sobre el proyecto o las marcas: msc.framework@gmail.com
|
|
62
|
+
- Seguridad: ver [`SECURITY.md`](SECURITY.md)
|
|
63
|
+
- Contribuciones: ver [`CONTRIBUTING.md`](CONTRIBUTING.md)
|