Proyecto GODML - Machine Learning con Gobernanza**
[](https://pypi.org/project/godml/)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
> Proyecto de Machine Learning generado automáticamente con **GODML Framework** - Governed, Observable & Declarative ML
---
🎯 ¿Qué es este proyecto?
Este proyecto fue generado con GODML , un framework que unifica:
Gobernanza : Trazabilidad y metadatos automáticos
Observabilidad : Tracking completo con MLflow
Declarativo : Configuración simple en YAML
📦 Novedades en la versión 0.3.0
- 🧪 Entrenamiento rápido desde notebooks con `GodmlNotebook`
- 💾 Guardado y carga de modelos por entorno (`experiments`, `production`, etc.)
- ⚡ Nuevas funciones `quick_train`, `train_from_yaml`, `quick_train_yaml` para acelerar iteraciones
- 📄 Mejor integración con YAML, sin perder reproducibilidad
```text
📁 Estructura del Proyecto
mi-proyecto-ml/
├── godml.yml # 🎯 Configuración principal
├── data/ # 📊 Datasets
├── outputs/ # 📈 Predicciones
├── models/ # 🤖 Modelos por entorno
│ ├── production/
│ ├── staging/
│ └── experiments/
├── deploy_service/ # 🚀 Servicios de despliegue
├── Dockerfile # 🐳 Contenedor Docker
└── README.md # 📖 Documentación
```
⚙️ Configuración del Pipeline
El archivo godml.yml contiene toda la configuración:
```yaml title="godml.yml (mínimo viable)"
Dataset
dataset:
uri: ./data/your_dataset.csv # ← Cambia por tu archivo
hash: auto # Hash automático para trazabilidad
Modelo
model:
type: xgboost # Algoritmo a usar
hyperparameters: # Parámetros del modelo
max_depth: 5
eta: 0.3
objective: binary:logistic
Métricas de Calidad
metrics:
- name: auc
threshold: 0.85 # Umbral mínimo de calidad
- name: accuracy
threshold: 0.80
Gobernanza
governance:
owner: your-team@company.com # ← Cambia por tu email
tags:
- project: {project_name}
- environment: development # development/staging/production
```
🔧 Modelos Disponibles
Algoritmo Tipo Comando
xgboost Gradient Boosting Por defecto
random_forest Ensemble Cambiar en model.type
lightgbm Gradient Boosting Cambiar en model.type
📊 Métricas Soportadas
auc - Area Under Curve
accuracy - Precisión
precision - Precisión por clase
recall - Recall por clase
f1 - F1 Score
🎯 Flujo de Trabajo
```bash
#1. Preparar Datos
#Coloca tu dataset en data/
cp mi_dataset.csv data/your_dataset.csv
#2. Configurar Pipeline
#Edita godml.yml según tus necesidades
vim godml.yml
#3. Entrenar Modelo
#Ejecuta el pipeline completo
godml run -f godml.yml
#4. Revisar Resultados
#Ver experimentos en MLflow
mlflow ui
#Ver predicciones
cat outputs/predictions.csv
```
🧪 Entrenamiento desde Notebooks
```python
from godml.notebook_api import GodmlNotebook
godml = GodmlNotebook()
godml.create_pipeline(
name="churn_rf",
model_type="random_forest",
hyperparameters={"max_depth": 3},
dataset_path="./data/churn.csv"
)
godml.train()
godml.save_model(model_name="churn_rf", environment="experiments")
⚡ Entrenamiento rápido con una línea
from godml.notebook_api import quick_train
quick_train(
model_type="xgboost",
hyperparameters={"eta": 0.1, "max_depth": 4},
dataset_path="./data/churn.csv"
)
🔁 Desde YAML (interactivo)
from godml.notebook_api import train_from_yaml, quick_train_yaml
train_from_yaml("./godml/godml.yml")
quick_train_yaml(
model_type="random_forest",
hyperparameters={"max_depth": 4},
yaml_path="./godml/godml.yml"
)
```
🏛️ Gobernanza y Trazabilidad
GODML automáticamente registra:
✅ Hash del dataset para trazabilidad
✅ Metadatos del modelo (parámetros, métricas)
✅ Información de gobernanza (owner, tags)
✅ Timestamp y versión de cada experimento
✅ Linaje completo del pipeline
🚀 Próximos Pasos
Agregar tus datos: Coloca tu dataset en data/
Personalizar configuración: Edita godml.yml
Entrenar modelo: Ejecuta godml run -f godml.yml
Monitorear: Revisa resultados en MLflow UI
Iterar: Ajusta parámetros y vuelve a entrenar
📚 Recursos Útiles
📦 GODML en PyPI
📖 Documentación oficial (próximamente)
🏛️ Guía de Gobernanza (en construcción)
💬 Soporte / Issues
🐛 Reportar Issues
💬 Discusiones
📧 Contacto
📄 Licencia
Este proyecto está bajo la licencia MIT. Ver LICENSE para más detalles.
Generado con ❤️ por GODML Framework v0.3.0
Governed, Observable & Declarative Machine Learning
---
## 🚀 Cómo Empezar
# Se recomienda crear un entorno virtual
```bash
# 1. Instala el CLI
pip install godml
# 2. Inicializa un proyecto
godml init my-churn-project
# 3. Declara tu pipeline
vim godml.yml
# 4. run
godml run -f godml.yml
```
Raw data
{
"_id": null,
"home_page": null,
"name": "godml",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "mlops, machine learning, framework, governance, observability, mlflow",
"author": null,
"author_email": "Arturo Gutierrez Rubio Rojas <agtzrubio@dagmalia.com>",
"download_url": "https://files.pythonhosted.org/packages/ba/2c/bdd11a59efb92c349158b2f7674930a36388882e5ac5682213b3824118ea/godml-0.4.7.tar.gz",
"platform": null,
"description": "Proyecto GODML - Machine Learning con Gobernanza**\r\n\r\n[](https://pypi.org/project/godml/)\r\n[](https://www.python.org/downloads/)\r\n[](https://opensource.org/licenses/MIT)\r\n\r\n> Proyecto de Machine Learning generado autom\u00e1ticamente con **GODML Framework** - Governed, Observable & Declarative ML\r\n\r\n---\r\n \r\n\ud83c\udfaf \u00bfQu\u00e9 es este proyecto?\r\nEste proyecto fue generado con GODML , un framework que unifica:\r\n\r\nGobernanza : Trazabilidad y metadatos autom\u00e1ticos\r\n\r\nObservabilidad : Tracking completo con MLflow\r\n\r\nDeclarativo : Configuraci\u00f3n simple en YAML\r\n\r\n\r\n\ud83d\udce6 Novedades en la versi\u00f3n 0.3.0\r\n\r\n- \ud83e\uddea Entrenamiento r\u00e1pido desde notebooks con `GodmlNotebook`\r\n- \ud83d\udcbe Guardado y carga de modelos por entorno (`experiments`, `production`, etc.)\r\n- \u26a1 Nuevas funciones `quick_train`, `train_from_yaml`, `quick_train_yaml` para acelerar iteraciones\r\n- \ud83d\udcc4 Mejor integraci\u00f3n con YAML, sin perder reproducibilidad\r\n\r\n```text\r\n\ud83d\udcc1 Estructura del Proyecto\r\n \r\nmi-proyecto-ml/\r\n\u251c\u2500\u2500 godml.yml # \ud83c\udfaf Configuraci\u00f3n principal\r\n\u251c\u2500\u2500 data/ # \ud83d\udcca Datasets\r\n\u251c\u2500\u2500 outputs/ # \ud83d\udcc8 Predicciones\r\n\u251c\u2500\u2500 models/ # \ud83e\udd16 Modelos por entorno\r\n\u2502 \u251c\u2500\u2500 production/\r\n\u2502 \u251c\u2500\u2500 staging/\r\n\u2502 \u2514\u2500\u2500 experiments/\r\n\u251c\u2500\u2500 deploy_service/ # \ud83d\ude80 Servicios de despliegue\r\n\u251c\u2500\u2500 Dockerfile # \ud83d\udc33 Contenedor Docker\r\n\u2514\u2500\u2500 README.md # \ud83d\udcd6 Documentaci\u00f3n\r\n```\r\n\r\n\u2699\ufe0f Configuraci\u00f3n del Pipeline\r\nEl archivo godml.yml contiene toda la configuraci\u00f3n:\r\n```yaml title=\"godml.yml (m\u00ednimo viable)\"\r\nDataset\r\n\r\ndataset:\r\n uri: ./data/your_dataset.csv # \u2190 Cambia por tu archivo\r\n hash: auto # Hash autom\u00e1tico para trazabilidad\r\n\r\nModelo\r\n\r\nmodel:\r\n type: xgboost # Algoritmo a usar\r\n hyperparameters: # Par\u00e1metros del modelo\r\n max_depth: 5\r\n eta: 0.3\r\n objective: binary:logistic\r\n\r\nM\u00e9tricas de Calidad\r\n\r\nmetrics:\r\n- name: auc\r\n threshold: 0.85 # Umbral m\u00ednimo de calidad\r\n- name: accuracy\r\n threshold: 0.80\r\n\r\nGobernanza\r\n\r\ngovernance:\r\n owner: your-team@company.com # \u2190 Cambia por tu email\r\n tags:\r\n - project: {project_name}\r\n - environment: development # development/staging/production\r\n```\r\n\ud83d\udd27 Modelos Disponibles\r\nAlgoritmo\tTipo\tComando\r\nxgboost\tGradient Boosting\tPor defecto\r\nrandom_forest\tEnsemble\tCambiar en model.type\r\nlightgbm\tGradient Boosting\tCambiar en model.type\r\n\r\n\ud83d\udcca M\u00e9tricas Soportadas\r\n\r\nauc - Area Under Curve\r\n\r\naccuracy - Precisi\u00f3n\r\n\r\nprecision - Precisi\u00f3n por clase\r\n\r\nrecall - Recall por clase\r\n\r\nf1 - F1 Score\r\n\r\n\ud83c\udfaf Flujo de Trabajo\r\n\r\n```bash\r\n#1. Preparar Datos\r\n#Coloca tu dataset en data/\r\n\r\ncp mi_dataset.csv data/your_dataset.csv\r\n\r\n#2. Configurar Pipeline\r\n#Edita godml.yml seg\u00fan tus necesidades\r\n\r\nvim godml.yml\r\n\r\n#3. Entrenar Modelo\r\n#Ejecuta el pipeline completo\r\n\r\ngodml run -f godml.yml\r\n\r\n#4. Revisar Resultados\r\n#Ver experimentos en MLflow\r\n\r\nmlflow ui\r\n\r\n#Ver predicciones\r\ncat outputs/predictions.csv\r\n```\r\n\r\n\ud83e\uddea Entrenamiento desde Notebooks\r\n\r\n```python\r\nfrom godml.notebook_api import GodmlNotebook\r\n\r\ngodml = GodmlNotebook()\r\ngodml.create_pipeline(\r\n name=\"churn_rf\",\r\n model_type=\"random_forest\",\r\n hyperparameters={\"max_depth\": 3},\r\n dataset_path=\"./data/churn.csv\"\r\n)\r\n\r\ngodml.train()\r\ngodml.save_model(model_name=\"churn_rf\", environment=\"experiments\")\r\n\r\n\u26a1 Entrenamiento r\u00e1pido con una l\u00ednea\r\n\r\nfrom godml.notebook_api import quick_train\r\n\r\nquick_train(\r\n model_type=\"xgboost\",\r\n hyperparameters={\"eta\": 0.1, \"max_depth\": 4},\r\n dataset_path=\"./data/churn.csv\"\r\n)\r\n\r\n\ud83d\udd01 Desde YAML (interactivo)\r\n\r\nfrom godml.notebook_api import train_from_yaml, quick_train_yaml\r\n\r\ntrain_from_yaml(\"./godml/godml.yml\")\r\n\r\nquick_train_yaml(\r\n model_type=\"random_forest\",\r\n hyperparameters={\"max_depth\": 4},\r\n yaml_path=\"./godml/godml.yml\"\r\n)\r\n```\r\n\r\n\ud83c\udfdb\ufe0f Gobernanza y Trazabilidad\r\nGODML autom\u00e1ticamente registra:\r\n\r\n\u2705 Hash del dataset para trazabilidad\r\n\r\n\u2705 Metadatos del modelo (par\u00e1metros, m\u00e9tricas)\r\n\r\n\u2705 Informaci\u00f3n de gobernanza (owner, tags)\r\n\r\n\u2705 Timestamp y versi\u00f3n de cada experimento\r\n\r\n\u2705 Linaje completo del pipeline\r\n\r\n\ud83d\ude80 Pr\u00f3ximos Pasos\r\nAgregar tus datos: Coloca tu dataset en data/\r\n\r\nPersonalizar configuraci\u00f3n: Edita godml.yml\r\n\r\nEntrenar modelo: Ejecuta godml run -f godml.yml\r\n\r\nMonitorear: Revisa resultados en MLflow UI\r\n\r\nIterar: Ajusta par\u00e1metros y vuelve a entrenar\r\n\r\n\ud83d\udcda Recursos \u00datiles\r\n\r\n\ud83d\udce6 GODML en PyPI\r\n\r\n\ud83d\udcd6 Documentaci\u00f3n oficial (pr\u00f3ximamente)\r\n\r\n\ud83c\udfdb\ufe0f Gu\u00eda de Gobernanza (en construcci\u00f3n)\r\n\r\n\ud83d\udcac Soporte / Issues\r\n\r\n\ud83d\udc1b Reportar Issues\r\n\r\n\ud83d\udcac Discusiones\r\n\r\n\ud83d\udce7 Contacto\r\n\r\n\ud83d\udcc4 Licencia\r\nEste proyecto est\u00e1 bajo la licencia MIT. Ver LICENSE para m\u00e1s detalles.\r\n\r\nGenerado con \u2764\ufe0f por GODML Framework v0.3.0\r\nGoverned, Observable & Declarative Machine Learning\r\n---\r\n\r\n## \ud83d\ude80 C\u00f3mo Empezar\r\n\r\n# Se recomienda crear un entorno virtual\r\n\r\n```bash\r\n# 1. Instala el CLI\r\npip install godml\r\n\r\n# 2. Inicializa un proyecto\r\ngodml init my-churn-project\r\n\r\n# 3. Declara tu pipeline\r\nvim godml.yml\r\n\r\n# 4. run\r\ngodml run -f godml.yml\r\n```\r\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Governed, Observable & Declarative Machine Learning Framework",
"version": "0.4.7",
"project_urls": {
"Changelog": "https://github.com/DAGMALIA/godml/releases",
"Documentation": "https://godmlcore.com/docs/intro",
"Homepage": "https://godmlcore.com/",
"Issues": "https://github.com/DAGMALIA/godml/issues",
"Source": "https://github.com/DAGMALIA/godml"
},
"split_keywords": [
"mlops",
" machine learning",
" framework",
" governance",
" observability",
" mlflow"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "58b47a20cd29c61db05d863a1f0561e2ae9f2389257f3d6d7de95314e45256d9",
"md5": "deed7ced1878c4998594513a3b9bcd8c",
"sha256": "c491008d301fce39b70f0ef531a4d4430ed7c360c3f87f74075f34502cd24dba"
},
"downloads": -1,
"filename": "godml-0.4.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "deed7ced1878c4998594513a3b9bcd8c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 78491,
"upload_time": "2025-08-29T00:12:11",
"upload_time_iso_8601": "2025-08-29T00:12:11.118551Z",
"url": "https://files.pythonhosted.org/packages/58/b4/7a20cd29c61db05d863a1f0561e2ae9f2389257f3d6d7de95314e45256d9/godml-0.4.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ba2cbdd11a59efb92c349158b2f7674930a36388882e5ac5682213b3824118ea",
"md5": "e531105cfbfa7e154f771d07e68f602e",
"sha256": "713d64285c0d1c772a635273ad94a0db196551273655d9d65ddd4a1bcd90fe7b"
},
"downloads": -1,
"filename": "godml-0.4.7.tar.gz",
"has_sig": false,
"md5_digest": "e531105cfbfa7e154f771d07e68f602e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 64762,
"upload_time": "2025-08-29T00:12:12",
"upload_time_iso_8601": "2025-08-29T00:12:12.461304Z",
"url": "https://files.pythonhosted.org/packages/ba/2c/bdd11a59efb92c349158b2f7674930a36388882e5ac5682213b3824118ea/godml-0.4.7.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-29 00:12:12",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "DAGMALIA",
"github_project": "godml",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "godml"
}