Referencia CLI y Flujos de Trabajo
Cada comando de la CLI explicado con contexto y ejemplos reales: desde crear un proyecto hasta servir un modelo en producción. 13 grupos de comandos, 4 flujos completos de ejemplo y una referencia rápida completa.

Cómo invocar MatrixAI
Este manual es para cualquier desarrollador que trabaje con MatrixAI. La CLI es la herramienta principal para crear modelos, entrenarlos, diagnosticarlos, servirlos, empaquetarlos y gestionarlos en producción.
# Si está instalado globalmente:
matrixai <comando> [opciones]
# Directamente desde el repositorio (sin instalación):
python -m matrixai <comando> [opciones]| Opción | Qué hace |
|---|---|
--json | Devuelve el resultado en JSON. Útil para scripts, CI/CD o integración con otras herramientas. |
--output <ruta>` / `-o <ruta> | Guarda el resultado en un fichero en lugar de mostrarlo en pantalla. |
1. Proyecto
matrixai init — Crear un proyecto nuevo
matrixai init <nombre_proyecto> [--template <nombre>] [--output-dir <dir>] [--list-templates]| Opción | Por defecto | Descripción |
|---|---|---|
nombre_proyecto | — | Nombre del proyecto (carpeta que se crea) |
--template | classification | Plantilla de inicio |
--output-dir | . | Dónde crear la carpeta del proyecto |
--list-templates | — | Ver todas las plantillas disponibles y salir |
Lo que genera: un fichero .mxai, un .mxtrain, un CSV de ejemplo y un fichero de instrucciones de inicio rápido.
matrixai init --list-templates
matrixai init mi_clasificador_emails
matrixai init riesgo_credito --template classification
matrixai init detector_fraude --output-dir ~/proyectos/2. Desarrollo de modelos
matrixai prompt — Generar un modelo desde texto
matrixai prompt <descripción...> [-o <fichero>] [--semantic] [--json]| Opción | Por defecto | Descripción |
|---|---|---|
descripción | — | Tu descripción del modelo. Usa `-` para leer desde stdin |
-o, --output | stdout | Guardar el `.mxai` generado en este fichero |
--semantic | — | Mostrar también el `.semantic` intermedio |
--json | — | Devolver el resultado completo de síntesis como JSON |
matrixai prompt "clasifica emails como spam, normal o urgente"
matrixai prompt "clasifica emails como spam, normal o urgente" -o email.mxai
matrixai prompt "evalúa el riesgo de caída de pacientes mayores" --semantic
cat descripcion.txt | matrixai prompt - -o modelo.mxai
matrixai prompt "detecta transacciones fraudulentas" --jsonmatrixai propose / supervise-prompt / architect / validate / lint / format / typecheck / parse
| Comando | Qué añade |
|---|---|
propose | Genera varias propuestas con LLM o modo determinista y permite elegir la mejor |
supervise-prompt | Supervisa un `.semantic` existente o genera uno desde prompt y produce el `.mxai` |
architect | Convierte un `.semantic` válido directamente en `.mxai` |
validate | Comprueba que un `.mxai` es estructuralmente correcto; sale `0` si es válido y `1` si no |
validate-plan | Valida un `.semantic` antes de generar el `.mxai` |
lint | Informa de errores bloqueantes, advertencias y sugerencias; `--strict` falla ante advertencias para CI |
format | Aplica el formato canónico de MatrixAI a `.semantic` o `.mxai` |
typecheck | Verifica que tipos de campos y expresiones sean consistentes |
parse | Muestra la representación interna en JSON |
# Propuestas con LLM
matrixai propose "clasifica documentos legales" --max-candidates 3
matrixai propose "sistema de dispensación farmacéutica" --provider chat-completions-compatible
matrixai propose "predictor de churn" --json --include-compiled
# Supervisar un .semantic existente
matrixai supervise-prompt "mi modelo" --proposal mi_modelo.semantic
# Convertir .semantic a .mxai directamente
matrixai architect mi_modelo.semantic -o mi_modelo.mxai
# Validar (0 = OK, 1 = error)
matrixai validate email_classifier.mxai
matrixai validate-plan mi_modelo.semantic
# Lint: errores + advertencias + sugerencias
matrixai lint email_classifier.mxai
matrixai lint email_classifier.mxai --strict # falla ante cualquier advertencia (CI)
matrixai lint email_classifier.mxai --json
# Formatear
matrixai format email_classifier.mxai # ver resultado
matrixai format email_classifier.mxai --write # formatear en su lugar
matrixai format email_classifier.mxai --check # verificar en CI
# Verificar tipos y ver representación interna
matrixai typecheck email_classifier.mxai
matrixai parse email_classifier.mxai3. Análisis y diagnóstico
matrixai graph — Ver el grafo del modelo
| Opción | Por defecto | Descripción |
|---|---|---|
--format | mermaid | mermaid` para mermaid.live, `dot` para Graphviz o `json |
-o | stdout | Guardar el grafo en un fichero |
matrixai graph email_classifier.mxai # Mermaid (pégalo en mermaid.live)
matrixai graph email_classifier.mxai --format dot -o grafo.dot # Graphviz
matrixai graph email_classifier.mxai --format jsonmatrixai diagnose — Comparar runtime vs compilado
Ejecuta el modelo con los mismos datos en el intérprete y en el compilador Python, compara resultados y detecta discrepancias numéricas entre backends.
| Opción | Por defecto | Descripción |
|---|---|---|
--input | requerido | Fichero JSON con los datos de entrada |
--tolerance | 1e-9 | Diferencia numérica máxima aceptable entre resultados |
--json | — | Informe completo como JSON |
echo '{"subject": "Oferta", "sender_score": 0.2, "body_length": 450}' > entrada.json
matrixai diagnose email_classifier.mxai --input entrada.json
matrixai diagnose email_classifier.mxai --input entrada.json --tolerance 1e-6 --jsonmatrixai optimize / permissions / mathematize
optimize analiza y sugiere mejoras sin modificar nada; permissions muestra permisos de sandbox para acciones; mathematize convierte reglas de negocio discretas en expresiones continuas para entrenamiento y auditoría.
# Sugerencias de optimización (solo lee, nunca modifica)
matrixai optimize email_classifier.mxai
# Revisar permisos de sandbox para acciones
matrixai permissions email_classifier.mxai
# Traducir reglas if/then a matemáticas continuas
matrixai mathematize reglas_negocio.txt
echo "si riesgo > 0.8 entonces alertar" | matrixai mathematize -
# Salida esperada:
# si historial_impagos > 0.6 entonces rechazar
# -> sigmoid(20 * (historial_impagos - 0.6))
# si ingresos < 15000 y deuda > 0.5 entonces revisar
# -> sigmoid(20 * (15000 - ingresos)) * sigmoid(20 * (deuda - 0.5))
# clasificar solicitud en aprobada, revision, rechazada
# -> softmax([score_aprobada, score_revision, score_rechazada])4. Compilación y backends
matrixai compile — Compilar el modelo
| Opción | Por defecto | Descripción |
|---|---|---|
--target | python | `python` para ejecución directa o `differentiable-python` para entrenamiento |
-o | stdout | Guardar el código compilado |
matrixai compile email_classifier.mxai -o email_compiled.py
matrixai compile email_classifier.mxai --target differentiable-python -o email_diff.pymatrixai eval — Evaluar una expresión matemática .mx
| Opción | Descripción |
|---|---|
--input | Datos de entrada: ruta a JSON o JSON directo como cadena |
--call | Ejecutar solo esta función del fichero |
--trace | Mostrar el detalle del cálculo paso a paso |
--graph | Mostrar el grafo de computación |
--json | Resultado como JSON |
# scoring.mx: utilidad(op) = quality(op) - 0.3 * cost(op) - 0.2 * latency(op)
matrixai eval scoring.mx --input '{"quality": 0.9, "cost": 0.4, "latency": 0.3}'
matrixai eval scoring.mx --input datos.json --trace
matrixai eval scoring.mx --input datos.json --call utilidadmatrixai backend-report / backend-run / backend-parameters
| Comando | Opciones clave |
|---|---|
backend-report | --target differentiable_python|torch`, `--json |
backend-run | --input`, `--target`, `--parameters`, `--device`, `--json |
backend-parameters | --target`, `--validate`, `--json |
# Informe de portabilidad
matrixai backend-report email_classifier.mxai
matrixai backend-report email_classifier.mxai --target torch
# Ejecutar con backend diferenciable
matrixai backend-run email_classifier.mxai --input entrada.json --parameters initial
matrixai backend-run email_classifier.mxai --input entrada.json --target torch --device cuda --parameters runs/email_v1/params.best.json
# Inspeccionar parámetros esperados
matrixai backend-parameters email_classifier.mxai
matrixai backend-parameters email_classifier.mxai --validate runs/email_v1/params.best.json
# Salida típica de backend-report:
# Backend: differentiable_python
# Compatibilidad: PARCIAL
# OK: softmax_linear entrenable, sigmoid_threshold ejecutable
# ADVERTENCIAS: symbolic_weighted_sum aplazada en torch
# BLOQUEANTE para torch: select_argmax no diferenciable5. Parámetros
init-parameters genera un ParameterSet con valores iniciales por defecto. validate-parameters comprueba dimensiones, nombres y tipos de pesos contra el modelo.
# Generar parámetros iniciales
matrixai init-parameters email_classifier.mxai
matrixai init-parameters email_classifier.mxai -o params_initial.json
matrixai init-parameters email_classifier.mxai --parameter-set-id "email_v1_initial" -o params_initial.json
# Validar un fichero de parámetros contra el modelo
matrixai validate-parameters email_classifier.mxai --params runs/email_v1/params.best.json6. Entrenamiento
matrixai validate-training / generate-training / generate-supervised / generate-dataset
| Comando | Opciones importantes |
|---|---|
generate-training | -o`, `--dataset-output`, `--dataset-source`, `--dataset-name`, `--target-name`, `--labels`, `--epochs`, `--learning-rate`, `--batch-size`, `--json |
generate-supervised | -o`, `--stem`, `--labels`, `--epochs`, `--json |
generate-dataset | --training`, `--rows`, `--seed`, `--mode random|coherent`, `-o`, `--json |
# Validar contrato de entrenamiento
matrixai validate-training email.mxtrain
# Generar contrato de entrenamiento
matrixai generate-training email_classifier.mxai "clasifica emails como spam, normal o urgente" -o email.mxtrain --dataset-output email_template.csv
matrixai generate-training email_classifier.mxai "clasifica emails" -o email.mxtrain --epochs 200 --learning-rate 0.01
matrixai generate-training riesgo_credito.mxai "clasificar solicitudes de crédito" -o credito.mxtrain --labels "aprobada,rechazada,revision" --target-name "decision"
# Generar modelo + contrato de una vez
matrixai generate-supervised "clasifica emails como spam, normal o urgente" -o modelos/email/ --stem email_classifier
# Generar datos sintéticos (200-50.000 filas)
matrixai generate-dataset email_classifier.mxai --training email.mxtrain --rows 500 --mode coherent -o datos/
matrixai generate-dataset email_classifier.mxai --training email.mxtrain --rows 1000 --seed 123 --mode coherent -o datos/matrixai train — Entrenar el modelo
| Opción | Por defecto | Descripción |
|---|---|---|
--training | requerido | Fichero `.mxtrain` |
-o | requerido | Directorio donde guardar artefactos de entrenamiento |
--backend | de la especificación | `stdlib` (numpy) o `torch` (PyTorch) |
--device | de la especificación | cpu`, `cuda` o `mps |
--json | — | Resultado como JSON |
Artefactos generados: params.best.json, params.final.json, metrics.json, training_trace.json, evaluation_report.json
matrixai train email_classifier.mxai --training email.mxtrain -o runs/email_v1/
matrixai train email_classifier.mxai --training email.mxtrain -o runs/email_v1/ --backend torch --device cuda
matrixai train email_classifier.mxai --training email.mxtrain -o runs/email_v1/ --jsonmatrixai train-supervised / evaluate — Pipeline completo y evaluación
| Comando | Opciones importantes |
|---|---|
train-supervised | -o`, `--train-data`, `--eval-data`, `--dataset-manifest`, `--dataset-split`, `--stem`, `--run-name`, `--epochs`, `--json |
evaluate | --params`, `--training`, `--data`, `-o`, `--backend`, `--device`, `--json |
matrixai train-supervised "clasifica emails como spam, normal o urgente" --train-data datos/emails_train.csv --eval-data datos/emails_eval.csv --epochs 150 -o runs/email_v1/
matrixai evaluate email_classifier.mxai --params runs/email_v1/params.best.json --training email.mxtrain --data datos/emails_test.csv -o informes/evaluacion_v1.json7. Servicio
matrixai run — Ejecutar el modelo una vez
Ejecuta el modelo con una entrada concreta y muestra el resultado. Es ideal para pruebas rápidas antes de entrenar, después de entrenar o antes de servir.
matrixai run email_classifier.mxai --input '{"subject": "URGENTE", "sender_score": 0.95, "body_length": 120}'
matrixai run email_classifier.mxai --input entrada.json --params runs/email_v1/params.best.json --jsonmatrixai serve — Servir el modelo como API HTTP
| Opción | Por defecto | Descripción |
|---|---|---|
--params | — | Fichero de parámetros entrenados |
--port | 8000 | Puerto HTTP |
--host | 127.0.0.1 | Dirección de enlace; `0.0.0.0` para exponer en red |
--backend | stdlib | Backend de ejecución: `stdlib` o `torch` |
--api-key | auto-generada | Clave de acceso completo; ver `MATRIXAI_API_KEY` |
--api-key-read | — | Clave de solo lectura (GET y predicciones) |
--registry | — | Ruta al registro; activa endpoints `/api/v1/registry/*` |
--contract | — | Fichero `.mxact` para habilitar acciones reales |
--allow-real-actions | desactivado | Permite acciones reales; requiere `--contract` |
--signing-key | — | Clave HMAC para firmar trazas de acción |
--continual-policy | — | Fichero `.mxcontinual` para monitorización de drift |
--reference-accuracy | de params | Precisión base para detectar drift |
--rate-limit | 60 | Máx. peticiones/minuto por IP; `0` desactiva |
--cors-origin | * | Origen CORS permitido; repetible para varios orígenes |
matrixai serve email_classifier.mxai --params runs/email_v1/params.best.json --api-key mi_clave_secreta
matrixai serve email_classifier.mxai --params runs/email_v1/params.best.json --host 0.0.0.0 --port 8080 --api-key CLAVE_ESCRITURA --api-key-read CLAVE_LECTURA
matrixai serve --registry matrixai_registry/ --api-key mi_clave_secreta
matrixai serve email_classifier.mxai --params runs/email_v1/params.best.json --api-key mi_clave_secreta --continual-policy politica_drift.mxcontinual --reference-accuracy 0.923
matrixai serve email_classifier.mxai --params runs/email_v1/params.best.json --api-key mi_clave_secreta --cors-origin https://mi-app.commatrixai playground / playground / pack — Entorno de desarrollo y empaquetado
| Comando | Opciones |
|---|---|
studio` / `playground | --host`, `--port`, `--open |
pack | --params`, `--contract`, `--outdir`, `--docker |
matrixai playground --open
matrixai playground --port 9000 --open
matrixai playground --open
matrixai pack email_classifier.mxai --params runs/email_v1/params.best.json --outdir dist/email_v1/
matrixai pack email_classifier.mxai --params runs/email_v1/params.best.json --docker --outdir dist/email_v1/
cd dist/email_v1/ && docker compose up8. Exportación y empaquetado
| Comando | Opciones importantes |
|---|---|
export-onnx | --params`, `-o`, `--validate`, `--manifest`, `--json |
export-bundle | --params`, `--outdir`, `--no-validate`, `--force`, `--json |
export-wasm | --params`, `--outdir |
# Exportar a ONNX (usa siempre --validate en producción)
matrixai export-onnx email_classifier.mxai --params runs/email_v1/params.best.json -o exports/email_v1.onnx --validate --manifest exports/email_v1_manifest.json
# Bundle autocontenido para edge (sin servidor MatrixAI)
matrixai export-bundle email_classifier.mxai --params runs/email_v1/params.best.json --outdir exports/email_bundle_v1/
# Bundle para navegador (WebAssembly / ONNX Runtime Web)
matrixai export-wasm email_classifier.mxai --params runs/email_v1/params.best.json --outdir exports/email_wasm_v1/9. Acciones
Las acciones permiten que el modelo ejecute operaciones reales en sistemas externos (enviar emails, actualizar bases de datos, llamar a APIs). Por defecto, todo está simulado; para acciones reales se necesita un contrato .mxact y habilitación explícita.
| Comando | Qué hace |
|---|---|
validate-actions | Comprueba que el contrato `.mxact` es compatible con el modelo `.mxai` |
dry-run-action | Ejecuta la acción en modo simulado y muestra exactamente qué habría hecho |
execute-action | Ejecuta la acción con efectos reales; requiere `--allow-real-actions` |
audit-action | Verifica que una ActionTrace no se ha modificado comprobando su firma HMAC |
| Opción de dry-run | Descripción |
|---|---|
--contract-name | Nombre requerido de la `ACTION_CONTRACT` a simular |
--input | Datos de entrada como JSON o `-` para stdin |
--model-hash | Hash del modelo para la traza |
--param-set | Identificador del conjunto de parámetros |
--json | Informe como JSON |
# Validar un contrato de acciones
matrixai validate-actions contrato.mxact email_classifier.mxai
# Simular una acción sin efectos reales
matrixai dry-run-action contrato.mxact email_classifier.mxai --contract-name EnviarRespuesta --input '{"subject": "URGENTE", "sender_score": 0.95}'
# Ejecutar una acción real (requiere --allow-real-actions)
matrixai execute-action contrato.mxact email_classifier.mxai --contract-name EnviarRespuesta --allow-real-actions --signing-key $MATRIXAI_ACTION_SIGNING_KEY --input '{"subject": "URGENTE", "sender_score": 0.95}'
# Verificar firma HMAC de una traza de acción
matrixai audit-action traza_accion.json --signing-key $MATRIXAI_ACTION_SIGNING_KEY10. Registro de modelos
El registro almacena versiones de modelos entrenados. Las entradas se referencian como nombre@version, por ejemplo email-classifier@v1.0.
| Comando | Propósito |
|---|---|
registry push | Registra un directorio de entrenamiento como una versión del modelo |
registry list | Lista todos los modelos registrados, o solo las versiones de un modelo con `--name` |
registry show | Muestra el manifiesto de una versión |
registry tag | Crea aliases como `latest`, `prod` o `staging` |
registry verify | Verifica que los ficheros del registro no fueron modificados comprobando checksums |
registry diff | Compara dos versiones |
registry pull | Copia una versión entre registros |
# Publicar una versión
matrixai registry push runs/email_v1/ --name email-classifier --version v1.0
# Ver modelos registrados
matrixai registry list
matrixai registry list --name email-classifier
# Ver el manifiesto de una versión
matrixai registry show email-classifier@v1.0
# Etiquetar versiones (aliases latest, prod, staging)
matrixai registry tag email-classifier@v1.0 prod
matrixai registry tag email-classifier@v2.0 latest
# Verificar integridad (checksums)
matrixai registry verify email-classifier@v1.0
# Sale con código 0 si está intacto, 1 si hay discrepancias
# Comparar dos versiones
matrixai registry diff email-classifier@v1.0 email-classifier@v2.0
# Copiar una versión entre registros
matrixai registry pull email-classifier@v1.0 --from matrixai_registry/ --to /backups/registry/11. Gestión de claves
Las claves de firma garantizan la integridad de trazas de acción y manifiestos del registro. La rotación retira la clave activa y la archiva en el historial.
# Rotar claves
matrixai keys rotate --purpose action
matrixai keys rotate --purpose registry
matrixai keys rotate --purpose action --key $MATRIXAI_ACTION_SIGNING_KEY
# Ver historial de claves (activas o retiradas, con huellas digitales)
matrixai keys list
matrixai keys list --json12. Aprendizaje continuo
El aprendizaje continuo permite detectar degradación de predicciones en producción (drift) y gestionar actualizaciones de parámetros de forma controlada y trazable.
| Comando | Qué aporta |
|---|---|
continual init | Valida una política `.mxcontinual` |
continual ingest | Registra una etiqueta real (ground truth) de una predicción pasada |
continual status | Muestra versión en producción, métricas del monitor e historial de rollbacks |
continual promote | Promueve parámetros mejorados con trazabilidad y aprobación humana opcional |
continual rollback | Vuelve a la versión anterior; `--dry-run` muestra qué pasaría |
continual audit | Audita configuración y puede sugerir refinamiento si hay drift |
matrixai continual init politica_drift.mxcontinual
matrixai continual ingest politica_drift.mxcontinual --trace-id rpt-abc123 --label urgente --signing-key $MATRIXAI_CONTINUAL_SIGNING_KEY
matrixai continual status politica_drift.mxcontinual
matrixai continual promote politica_drift.mxcontinual --approval-report informes/aprobacion_v2.json --candidate-params runs/email_v2/params.best.json --human-approved --approved-by "nombre@empresa.com"
matrixai continual rollback politica_drift.mxcontinual --dry-run
matrixai continual rollback politica_drift.mxcontinual --signing-key $MATRIXAI_CONTINUAL_SIGNING_KEY
matrixai continual audit politica_drift.mxcontinual
matrixai continual audit politica_drift.mxcontinual --drift-report informes/drift_semana.json --prompt "clasifica emails como spam, normal o urgente" --drift-persistence-days 713. Refinamiento
El refinamiento permite mejorar iterativamente un modelo basándose en auditorías o métricas de evaluación, sin empezar de cero.
| Opción | Descripción |
|---|---|
--audit | JSON de auditoría; activa modo `audit_driven` |
--evaluation | Informe de evaluación; activa modo `metric_driven` |
--mxai | Fichero `.mxai` actual que da contexto al refinamiento |
--hint | Sugerencia adicional tuya; repetible |
--iteration | Número de iteración actual para seguimiento de cadena |
--chain | JSON con la cadena de refinamiento previa |
--parent-hash | SHA-256 del prompt raíz para trazabilidad |
--accept | Acepta la propuesta y escribe ficheros de salida |
-o | Guarda el prompt propuesto; requiere `--accept` |
--mxai-output | Guarda el `.mxai` propuesto; requiere `--accept` |
--chain-output | Guarda la cadena de refinamiento actualizada |
--max-iterations | Límite de iteraciones; sale con código `2` si se supera |
--json | RefinementProposal completo como JSON |
matrixai refine "clasifica emails como spam, normal o urgente" --evaluation runs/email_v1/evaluation_report.json --mxai email_classifier.mxai
matrixai refine "clasifica emails como spam, normal o urgente" --evaluation runs/email_v1/evaluation_report.json --mxai email_classifier.mxai --hint "mejorar la precisión en emails urgentes"
matrixai refine "clasifica emails como spam, normal o urgente" --evaluation runs/email_v1/evaluation_report.json --mxai email_classifier.mxai --accept -o email_classifier_v2.prompt --mxai-output email_classifier_v2.mxai --chain-output cadena_refinamiento.json --iteration 214. Variables de entorno
| Variable | Usada por | Descripción |
|---|---|---|
MATRIXAI_API_KEY | serve | Clave de acceso completo al servidor de producción |
MATRIXAI_API_KEY_READ | serve | Clave de solo lectura (GET y predicciones) |
MATRIXAI_ACTION_SIGNING_KEY | serve`, `execute-action`, `audit-action | Clave HMAC hexadecimal para firma de trazas de acción |
MATRIXAI_CONTINUAL_SIGNING_KEY | continual ingest`, `continual rollback | Clave HMAC para eventos de aprendizaje continuo |
MATRIXAI_ALLOW_REAL_ACTIONS | serve | Establecer a `true` para habilitar `/execute-action` |
MATRIXAI_RATE_LIMIT | serve | Máx. peticiones/minuto por IP (entero, `0` desactiva) |
MATRIXAI_CORS_ORIGINS | serve | Orígenes CORS permitidos, separados por comas |
# Ejemplo de fichero .env para producción:
MATRIXAI_API_KEY=clave_escritura_muy_larga_y_segura
MATRIXAI_API_KEY_READ=clave_lectura_para_el_frontend
MATRIXAI_ACTION_SIGNING_KEY=a3f8b2c1d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1
MATRIXAI_CONTINUAL_SIGNING_KEY=b4a7c2d8e5f1a3b6c9d2e7f4a1b8c3d5e9f2a4b7c0d3e6f1a8b2c5d7e0f3a9b4
MATRIXAI_RATE_LIMIT=120
MATRIXAI_CORS_ORIGINS=https://mi-app.com,https://staging.mi-app.com15. Códigos de salida
| Código | Significado |
|---|---|
0 | Éxito — el comando se completó sin errores |
1 | Error — fallo de análisis, validación o runtime. Lee el mensaje de error |
2 | Límite de iteraciones superado — solo en `matrixai refine` |
16. Flujos completos de ejemplo
Flujo A — De descripción a API en producción
matrixai init clasificador_emails && cd clasificador_emails/
matrixai generate-supervised \
"clasifica emails entrantes como spam, normal o urgente" \
-o . --stem email_classifier --epochs 200
matrixai lint email_classifier.mxai
matrixai graph email_classifier.mxai --format mermaid
matrixai generate-dataset email_classifier.mxai \
--training email_classifier.mxtrain --rows 1000 --mode coherent -o datos/
matrixai train email_classifier.mxai --training email_classifier.mxtrain -o runs/v1/
cat runs/v1/evaluation_report.json
matrixai run email_classifier.mxai --params runs/v1/params.best.json \
--input '{"subject": "Oferta exclusiva", "sender_score": 0.1, "body_length": 800}'
matrixai registry push runs/v1/ --name email-classifier --version v1.0
matrixai registry tag email-classifier@v1.0 prod
matrixai serve email_classifier.mxai \
--params runs/v1/params.best.json --api-key $MATRIXAI_API_KEY --port 8000Flujo B — Diagnóstico de un modelo con problemas
matrixai validate email_classifier.mxai
matrixai lint email_classifier.mxai
matrixai graph email_classifier.mxai
matrixai backend-report email_classifier.mxai
matrixai diagnose email_classifier.mxai --input entrada_prueba.json
matrixai optimize email_classifier.mxai
matrixai typecheck email_classifier.mxai
matrixai parse email_classifier.mxaiFlujo C — Actualización controlada en producción
matrixai continual status politica_drift.mxcontinual
matrixai continual audit politica_drift.mxcontinual \
--drift-report informes/drift_semana.json \
--prompt "clasifica emails como spam, normal o urgente"
matrixai refine "clasifica emails como spam, normal o urgente" \
--evaluation runs/v1/evaluation_report.json --mxai email_classifier.mxai \
--hint "mejorar recall en emails urgentes" \
--accept --mxai-output email_v2.mxai --chain-output cadena_v2.json --iteration 2
matrixai train email_v2.mxai --training email_classifier.mxtrain -o runs/v2/
matrixai registry push runs/v2/ --name email-classifier --version v2.0
matrixai continual promote politica_drift.mxcontinual \
--approval-report informes/aprobacion_v2.json \
--candidate-params runs/v2/params.best.json \
--human-approved --approved-by "nombre@empresa.com"
# Si algo sale mal:
matrixai continual rollback politica_drift.mxcontinual --dry-run
matrixai continual rollback politica_drift.mxcontinualFlujo D — Exportar para edge o navegador
# ONNX para runtime externo
matrixai export-onnx email_classifier.mxai --params runs/v1/params.best.json \
-o exports/email_v1.onnx --validate --manifest exports/email_v1_manifest.json
# Bundle completo para edge
matrixai export-bundle email_classifier.mxai --params runs/v1/params.best.json \
--outdir exports/edge_bundle/
# Bundle para navegador (WebAssembly)
matrixai export-wasm email_classifier.mxai --params runs/v1/params.best.json \
--outdir exports/wasm_bundle/
# Imagen Docker lista para desplegar
matrixai pack email_classifier.mxai --params runs/v1/params.best.json \
--docker --outdir dist/email_v1/
cd dist/email_v1/ && docker compose up17. Referencia rápida
| Quiero… | Comando |
|---|---|
| Crear un proyecto nuevo | matrixai init <nombre> |
| Generar modelo desde texto | matrixai prompt "descripción" -o modelo.mxai |
| Generar modelo + contrato de una vez | matrixai generate-supervised "descripción" -o directorio/ |
| Pipeline completo (prompt → entrena) | matrixai train-supervised "descripción" --train-data datos.csv -o runs/v1/ |
| Validar un modelo | matrixai validate modelo.mxai |
| Análisis con advertencias | matrixai lint modelo.mxai |
| Ver el grafo del modelo | matrixai graph modelo.mxai |
| Probar con una entrada | matrixai run modelo.mxai --input entrada.json --params params.json |
| Evaluar fórmulas `.mx` | matrixai eval formulas.mx --input datos.json --trace |
| Traducir reglas if/then | matrixai mathematize reglas.txt |
| Comprobar compatibilidad de backends | matrixai backend-report modelo.mxai |
| Comparar runtime vs compilado | matrixai diagnose modelo.mxai --input entrada.json |
| Generar datos sintéticos | matrixai generate-dataset modelo.mxai --training contrato.mxtrain --rows 500 --mode coherent |
| Entrenar el modelo | matrixai train modelo.mxai --training contrato.mxtrain -o runs/v1/ |
| Servir como API HTTP | matrixai serve modelo.mxai --params params.json --api-key CLAVE |
| Abrir Studio en el navegador | matrixai playground --open |
| Exportar a ONNX | matrixai export-onnx modelo.mxai --params params.json -o modelo.onnx --validate |
| Empaquetar con Docker | matrixai pack modelo.mxai --params params.json --docker --outdir dist/ |
| Publicar versión en el registro | matrixai registry push runs/v1/ --name mi-modelo --version v1.0 |
| Ver versiones registradas | matrixai registry list |
| Marcar versión como producción | matrixai registry tag mi-modelo@v1.0 prod |
| Estado del sistema en producción | matrixai continual status politica.mxcontinual |
| Promover nuevos parámetros | matrixai continual promote politica.mxcontinual --approval-report ap.json --candidate-params params.json --human-approved |
| Rollback de emergencia | matrixai continual rollback politica.mxcontinual |
| Refinar modelo con métricas | matrixai refine "descripción original" --evaluation evaluation_report.json --mxai modelo.mxai |
Formatos de fichero en MatrixAI
| Extensión | Qué es |
|---|---|
.mxai | Definición declarativa del modelo |
.semantic | Especificación semántica intermedia (paso previo al `.mxai`) |
.mx | Fichero de fórmulas matemáticas |
.mxtrain | Contrato de entrenamiento supervisado |
.mxact | Contrato de acciones reales |
.mxcontinual | Política de aprendizaje continuo y detección de drift |
params.best.json | Mejores parámetros encontrados durante el entrenamiento |
params.final.json | Parámetros de la última época de entrenamiento |
metrics.json | Métricas de entrenamiento por época |
training_trace.json | Traza criptográfica del entrenamiento |
evaluation_report.json | Informe de evaluación del modelo |
