Edvise is a school-agnostic Python library for implementing Student Success Tool workflows. It provides shared components for preparing institutional data, training and running predictive models, and producing reports for student-success interventions.
Edvise is designed primarily for workflows orchestrated on Databricks. Using the complete pipelines requires institution-specific configuration, data, and cloud infrastructure.
- Data ingestion from Google Cloud Storage into Databricks and Unity Catalog
- Schema validation and data-quality auditing
- Feature generation, student selection, and outcome target creation
- H2O model training, calibration, evaluation, registration, and inference
- Model monitoring and drift detection
- MLflow-backed model cards and reporting
- GenAI-assisted identity and schema mapping with human review
- Databricks Asset Bundles for deploying data, modeling, and reporting jobs
- Python 3.10, 3.11, or 3.12
uvfor dependency management
Running production pipelines may also require:
- A Databricks workspace with Unity Catalog
- Databricks CLI authentication and appropriate workspace permissions
- Google Cloud credentials and access to the required GCS buckets
Clone the repository and install the locked development environment:
git clone https://github.com/datakind/edvise.git
cd edvise
uv sync --frozen --devRun the test suite:
uv run python -m pytestRun the local quality checks:
uv run ruff check .
uv run ruff format --check .
uv run python -m mypy srcSome tests and runtime paths depend on external services and may require additional credentials or configuration.
Edvise is organized around configurable workflows rather than a single command-line interface. A typical implementation:
- Maps institution data to the expected schema.
- Selects and adapts a configuration template from
configs/. - Configures a Databricks Asset Bundle from
pipelines/. - Deploys and runs the relevant ingestion, training, inference, and reporting jobs in Databricks.
Useful starting points include:
- PDP H2O configuration templates
- Legacy H2O configuration template
- GenAI mapping configuration
- H2O training entry point
- H2O inference entry point
Configuration and infrastructure vary by institution. Treat the templates as starting points rather than complete deployment configurations.
.
├── configs/ # Workflow and institution configuration templates
├── notebooks/ # Legacy workflow notebook templates
├── pipelines/ # Databricks Asset Bundles
├── src/edvise/ # Python package and job entry points
└── tests/ # Automated test suite
The package is divided into modules for ingestion, data auditing, feature generation, modeling, reporting, student selection, synthetic data, and GenAI mapping.
Before opening a pull request:
- Add or update tests for behavioral changes.
- Run the test suite, Ruff checks, and mypy.
- Update
CHANGELOG.mdwhen the change is relevant to a release.
Use GitHub issues to report bugs or propose features.
Edvise is available under the Apache License 2.0.