ReferenciaCLI

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.

~35 min de lectura📖 17 secciones🔒 Solo miembros
Manual CLI MatrixAI — grupos Proyecto, Desarrollo de modelos y Análisis
Grupos de comandos 1–2: Proyecto · Desarrollo de modelos · Análisis y diagnóstico

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ónQué hace
--jsonDevuelve 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.
Los comandos del grupo `registry` buscan por defecto en `matrixai_registry/` dentro del directorio actual. Usa `--registry-path <ruta>` en cualquier comando de registro para cambiarlo.

1. Proyecto

matrixai init — Crear un proyecto nuevo

matrixai init <nombre_proyecto> [--template <nombre>] [--output-dir <dir>] [--list-templates]
OpciónPor defectoDescripción
nombre_proyectoNombre del proyecto (carpeta que se crea)
--templateclassificationPlantilla de inicio
--output-dir.Dónde crear la carpeta del proyecto
--list-templatesVer 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/
Usa init aunque vayas a modificar el .mxai manualmente. La estructura de carpetas y el CSV de ejemplo te ahorran tiempo y reducen errores de arranque.

2. Desarrollo de modelos

matrixai prompt — Generar un modelo desde texto

matrixai prompt <descripción...> [-o <fichero>] [--semantic] [--json]
OpciónPor defectoDescripción
descripciónTu descripción del modelo. Usa `-` para leer desde stdin
-o, --outputstdoutGuardar el `.mxai` generado en este fichero
--semanticMostrar también el `.semantic` intermedio
--jsonDevolver 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" --json
Usa --semantic cuando el modelo generado no sea lo que esperabas. El .semantic muestra cómo MatrixAI interpretó tu descripción antes de construir el modelo.

matrixai propose / supervise-prompt / architect / validate / lint / format / typecheck / parse

ComandoQué añade
proposeGenera varias propuestas con LLM o modo determinista y permite elegir la mejor
supervise-promptSupervisa un `.semantic` existente o genera uno desde prompt y produce el `.mxai`
architectConvierte un `.semantic` válido directamente en `.mxai`
validateComprueba que un `.mxai` es estructuralmente correcto; sale `0` si es válido y `1` si no
validate-planValida un `.semantic` antes de generar el `.mxai`
lintInforma de errores bloqueantes, advertencias y sugerencias; `--strict` falla ante advertencias para CI
formatAplica el formato canónico de MatrixAI a `.semantic` o `.mxai`
typecheckVerifica que tipos de campos y expresiones sean consistentes
parseMuestra 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.mxai
Diferencia con prompt: prompt genera un solo modelo de forma determinista. propose puede generar varios candidatos usando un LLM externo y te deja elegir. Ambos pasan por el mismo sistema de verificación antes de producir el .mxai. Usa parse si quieres ver exactamente qué estructura interna interpretó MatrixAI.

3. Análisis y diagnóstico

matrixai graph — Ver el grafo del modelo

OpciónPor defectoDescripción
--formatmermaidmermaid` para mermaid.live, `dot` para Graphviz o `json
-ostdoutGuardar 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 json
Úsalo cuando el modelo tenga un comportamiento inesperado y quieras ver visualmente cómo fluyen los datos de un nodo a otro.

matrixai 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ónPor defectoDescripción
--inputrequeridoFichero JSON con los datos de entrada
--tolerance1e-9Diferencia numérica máxima aceptable entre resultados
--jsonInforme 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 --json
Úsalo si obtienes resultados distintos según el backend. También es útil antes de exportar a ONNX para confirmar que el modelo se comporta igual en todos los entornos.

matrixai 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ónPor defectoDescripción
--targetpython`python` para ejecución directa o `differentiable-python` para entrenamiento
-ostdoutGuardar el código compilado
matrixai compile email_classifier.mxai -o email_compiled.py
matrixai compile email_classifier.mxai --target differentiable-python -o email_diff.py

matrixai eval — Evaluar una expresión matemática .mx

OpciónDescripción
--inputDatos de entrada: ruta a JSON o JSON directo como cadena
--callEjecutar solo esta función del fichero
--traceMostrar el detalle del cálculo paso a paso
--graphMostrar el grafo de computación
--jsonResultado 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 utilidad

matrixai backend-report / backend-run / backend-parameters

ComandoOpciones 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 diferenciable

5. 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.json
Usa validate-parameters si recibes parámetros de otra fuente, como un compañero o una versión anterior del modelo, y quieres confirmar compatibilidad antes de desplegar.

6. Entrenamiento

matrixai validate-training / generate-training / generate-supervised / generate-dataset

ComandoOpciones 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/
El modo coherent genera datos semánticamente consistentes; en un modelo de riesgo de crédito, los clientes con mayor historial de impagos tendrán más probabilidad de ser etiquetados como rechazado. El modo random genera datos independientes aleatorios.

matrixai train — Entrenar el modelo

OpciónPor defectoDescripción
--trainingrequeridoFichero `.mxtrain`
-orequeridoDirectorio donde guardar artefactos de entrenamiento
--backendde la especificación`stdlib` (numpy) o `torch` (PyTorch)
--devicede la especificacióncpu`, `cuda` o `mps
--jsonResultado 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/ --json

matrixai train-supervised / evaluate — Pipeline completo y evaluación

ComandoOpciones 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.json

7. 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 --json

matrixai serve — Servir el modelo como API HTTP

OpciónPor defectoDescripción
--paramsFichero de parámetros entrenados
--port8000Puerto HTTP
--host127.0.0.1Dirección de enlace; `0.0.0.0` para exponer en red
--backendstdlibBackend de ejecución: `stdlib` o `torch`
--api-keyauto-generadaClave de acceso completo; ver `MATRIXAI_API_KEY`
--api-key-readClave de solo lectura (GET y predicciones)
--registryRuta al registro; activa endpoints `/api/v1/registry/*`
--contractFichero `.mxact` para habilitar acciones reales
--allow-real-actionsdesactivadoPermite acciones reales; requiere `--contract`
--signing-keyClave HMAC para firmar trazas de acción
--continual-policyFichero `.mxcontinual` para monitorización de drift
--reference-accuracyde paramsPrecisión base para detectar drift
--rate-limit60Má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.com
Si no proporcionas --api-key, el servidor genera una automáticamente y la muestra en el arranque. Anótala; no se puede recuperar después.

matrixai playground / playground / pack — Entorno de desarrollo y empaquetado

ComandoOpciones
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 up

8. Exportación y empaquetado

ComandoOpciones 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/
Usa siempre --validate en exportaciones para producción. Confirma que el modelo ONNX produce los mismos resultados que el modelo MatrixAI.

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.

ComandoQué hace
validate-actionsComprueba que el contrato `.mxact` es compatible con el modelo `.mxai`
dry-run-actionEjecuta la acción en modo simulado y muestra exactamente qué habría hecho
execute-actionEjecuta la acción con efectos reales; requiere `--allow-real-actions`
audit-actionVerifica que una ActionTrace no se ha modificado comprobando su firma HMAC
Opción de dry-runDescripción
--contract-nameNombre requerido de la `ACTION_CONTRACT` a simular
--inputDatos de entrada como JSON o `-` para stdin
--model-hashHash del modelo para la traza
--param-setIdentificador del conjunto de parámetros
--jsonInforme 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_KEY
Sin --allow-real-actions, el comando termina con error aunque el resto de opciones sean correctas. Este comportamiento es deliberado: imposibilita la ejecución accidental de acciones reales.

10. Registro de modelos

El registro almacena versiones de modelos entrenados. Las entradas se referencian como nombre@version, por ejemplo email-classifier@v1.0.

ComandoPropósito
registry pushRegistra un directorio de entrenamiento como una versión del modelo
registry listLista todos los modelos registrados, o solo las versiones de un modelo con `--name`
registry showMuestra el manifiesto de una versión
registry tagCrea aliases como `latest`, `prod` o `staging`
registry verifyVerifica que los ficheros del registro no fueron modificados comprobando checksums
registry diffCompara dos versiones
registry pullCopia 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 --json
Rota claves cuando sospeches que una clave fue comprometida, cuando haya cambios en el equipo o según la política de seguridad de tu organización.

12. 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.

ComandoQué aporta
continual initValida una política `.mxcontinual`
continual ingestRegistra una etiqueta real (ground truth) de una predicción pasada
continual statusMuestra versión en producción, métricas del monitor e historial de rollbacks
continual promotePromueve parámetros mejorados con trazabilidad y aprobación humana opcional
continual rollbackVuelve a la versión anterior; `--dry-run` muestra qué pasaría
continual auditAudita 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 7

13. Refinamiento

El refinamiento permite mejorar iterativamente un modelo basándose en auditorías o métricas de evaluación, sin empezar de cero.

OpciónDescripción
--auditJSON de auditoría; activa modo `audit_driven`
--evaluationInforme de evaluación; activa modo `metric_driven`
--mxaiFichero `.mxai` actual que da contexto al refinamiento
--hintSugerencia adicional tuya; repetible
--iterationNúmero de iteración actual para seguimiento de cadena
--chainJSON con la cadena de refinamiento previa
--parent-hashSHA-256 del prompt raíz para trazabilidad
--acceptAcepta la propuesta y escribe ficheros de salida
-oGuarda el prompt propuesto; requiere `--accept`
--mxai-outputGuarda el `.mxai` propuesto; requiere `--accept`
--chain-outputGuarda la cadena de refinamiento actualizada
--max-iterationsLímite de iteraciones; sale con código `2` si se supera
--jsonRefinementProposal 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 2

14. Variables de entorno

VariableUsada porDescripción
MATRIXAI_API_KEYserveClave de acceso completo al servidor de producción
MATRIXAI_API_KEY_READserveClave de solo lectura (GET y predicciones)
MATRIXAI_ACTION_SIGNING_KEYserve`, `execute-action`, `audit-actionClave HMAC hexadecimal para firma de trazas de acción
MATRIXAI_CONTINUAL_SIGNING_KEYcontinual ingest`, `continual rollbackClave HMAC para eventos de aprendizaje continuo
MATRIXAI_ALLOW_REAL_ACTIONSserveEstablecer a `true` para habilitar `/execute-action`
MATRIXAI_RATE_LIMITserveMáx. peticiones/minuto por IP (entero, `0` desactiva)
MATRIXAI_CORS_ORIGINSserveOrí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.com

15. Códigos de salida

CódigoSignificado
0Éxito — el comando se completó sin errores
1Error — fallo de análisis, validación o runtime. Lee el mensaje de error
2Lí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 8000

Flujo 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.mxai

Flujo 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.mxcontinual

Flujo 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 up

17. Referencia rápida

Quiero…Comando
Crear un proyecto nuevomatrixai init <nombre>
Generar modelo desde textomatrixai prompt "descripción" -o modelo.mxai
Generar modelo + contrato de una vezmatrixai generate-supervised "descripción" -o directorio/
Pipeline completo (prompt → entrena)matrixai train-supervised "descripción" --train-data datos.csv -o runs/v1/
Validar un modelomatrixai validate modelo.mxai
Análisis con advertenciasmatrixai lint modelo.mxai
Ver el grafo del modelomatrixai graph modelo.mxai
Probar con una entradamatrixai run modelo.mxai --input entrada.json --params params.json
Evaluar fórmulas `.mx`matrixai eval formulas.mx --input datos.json --trace
Traducir reglas if/thenmatrixai mathematize reglas.txt
Comprobar compatibilidad de backendsmatrixai backend-report modelo.mxai
Comparar runtime vs compiladomatrixai diagnose modelo.mxai --input entrada.json
Generar datos sintéticosmatrixai generate-dataset modelo.mxai --training contrato.mxtrain --rows 500 --mode coherent
Entrenar el modelomatrixai train modelo.mxai --training contrato.mxtrain -o runs/v1/
Servir como API HTTPmatrixai serve modelo.mxai --params params.json --api-key CLAVE
Abrir Studio en el navegadormatrixai playground --open
Exportar a ONNXmatrixai export-onnx modelo.mxai --params params.json -o modelo.onnx --validate
Empaquetar con Dockermatrixai pack modelo.mxai --params params.json --docker --outdir dist/
Publicar versión en el registromatrixai registry push runs/v1/ --name mi-modelo --version v1.0
Ver versiones registradasmatrixai registry list
Marcar versión como producciónmatrixai registry tag mi-modelo@v1.0 prod
Estado del sistema en producciónmatrixai continual status politica.mxcontinual
Promover nuevos parámetrosmatrixai continual promote politica.mxcontinual --approval-report ap.json --candidate-params params.json --human-approved
Rollback de emergenciamatrixai continual rollback politica.mxcontinual
Refinar modelo con métricasmatrixai refine "descripción original" --evaluation evaluation_report.json --mxai modelo.mxai

Formatos de fichero en MatrixAI

ExtensiónQué es
.mxaiDefinición declarativa del modelo
.semanticEspecificación semántica intermedia (paso previo al `.mxai`)
.mxFichero de fórmulas matemáticas
.mxtrainContrato de entrenamiento supervisado
.mxactContrato de acciones reales
.mxcontinualPolítica de aprendizaje continuo y detección de drift
params.best.jsonMejores parámetros encontrados durante el entrenamiento
params.final.jsonParámetros de la última época de entrenamiento
metrics.jsonMétricas de entrenamiento por época
training_trace.jsonTraza criptográfica del entrenamiento
evaluation_report.jsonInforme de evaluación del modelo
MatrixAI CLI — grupos Entrenamiento, Servicio, Registro y Gestión de claves
Grupos de comandos 3–7: Análisis · Entrenamiento · Servicio · Registro · Claves