Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/elenacarino-max/Pildora4_ext_StarWars/llms.txt

Use this file to discover all available pages before exploring further.

MLflow Jedi — La Cámara de los Experimentos Perdidos — is a Star Wars-themed interactive classroom application designed to teach the complete MLflow experiment-tracking cycle using the scikit-learn Digits dataset. Cast as Jedi archivists recovering lost holocrons, students work in teams to recover six knowledge seals, reconstruct three real Random Forest experiments, and defend a data-driven recommendation in front of the class. Instructors manage the entire session from a live teacher panel — creating sessions, monitoring team progress, unlocking chambers, and exporting results — without ever leaving the browser.

What You Will Learn

MLflow Jedi covers six core MLflow concepts, one per chamber. By the end of the activity, students will be able to explain and use each of the following in real Python code:
  • Experiment — a named container that groups all related runs together under a single campaign
  • Run — a single, time-stamped execution that records one combination of parameters, metrics, and artifacts
  • Parameters — the configuration values (e.g. n_estimators, max_depth) logged before training begins
  • Metrics — scalar measurements of model quality (e.g. accuracy, per-class recall) logged after evaluation
  • Artifacts — files produced during a run (confusion matrices, classification reports) saved to the artifact store
  • Model — a versioned, serialised model object logged with mlflow.sklearn.log_model and retrievable for inference

Activity Structure

The activity unfolds across three sequential phases. Each phase builds on the one before, taking students from conceptual vocabulary through hands-on experiment logging to critical evidence-based reasoning.
1

Phase 01 — Chambers: Understand the Pieces

Each team completes six chambers drawn from a bank of 50 questions — one question per MLflow concept. Chambers may be multiple-choice or require students to fix a short Python snippet in a built-in code editor. Students receive up to three progressive hints and five attempts per chamber, earning seals as they go.
2

Phase 02 — Missions: Register Experiments

Teams reconstruct three real Random Forest experiments — Tatooine, Coruscant, and Mustafar — each with different hyperparameters. Student code is never executed directly; the app validates structure with static AST analysis and then trains a controlled internal template, logging five parameters, four global metrics, two per-class recalls, two artifacts, and a model to a live MLflow tracking server.
3

Phase 03 — Defense: Defend a Decision

Teams compare runs in the integrated MLflow viewer, examine confusion matrices and per-digit classification reports, and receive a random holocron scenario. They then present a model recommendation backed by concrete evidence and a discussion of limitations — completing the full experiment-tracking cycle.

Roles

MLflow Jedi supports two distinct roles within the same application. The sidebar radio button switches between portals instantly — no separate login URLs required.

Student (Alumnado)

Teams join using a session code (JEDI-XXXX) shared by the instructor, choose a Star Wars team name, and progress through chambers, missions, and the final defense at their own pace. Up to ten teams can participate in a single session.

Teacher (Profesorado)

Instructors authenticate with a password, create and close sessions, monitor every team’s score and attempt count in real time, send global announcements, unlock stuck chambers, reassign holocron scenarios, and export a full JSON backup or CSV summary.

Technology Stack

MLflow Jedi is built from a small, well-understood set of open-source tools so that the app itself can serve as a teaching artifact alongside the content it delivers. Streamlit 1.49.1 provides the single-page interactive UI — including the integrated streamlit-ace code editor for the Python chamber tasks — with no JavaScript required from instructors or students. MLflow 3.3.2 runs embedded within the container, using a SQLite backend (mlflow.db) for tracking metadata and a local artifacts/ directory for files; no external tracking server or object store is needed. scikit-learn 1.7.1 trains Random Forest classifiers on the built-in Digits dataset (1 797 samples, 64 features, 10 digit classes) and generates confusion matrices and classification reports via Matplotlib 3.10.6 and pandas 2.3.2. python-dotenv loads runtime configuration from a .env file, keeping secrets out of source control. The entire stack ships as a single Docker image built on python:3.12-slim, orchestrated by Docker Compose with a named volume for persistent data.

Live Demo

A fully functional public instance is available at https://pildora4extstarwars-14.streamlit.app/. To try the teacher workflow, open the Profesorado portal and authenticate with the shared demo password to create a session. The app will immediately generate a JEDI-XXXX code you can share with a team browser tab to experience the student flow end-to-end — no installation required.
Student code entered in the chamber editor is never executed on the server. The application parses the submission using Python’s built-in ast module, rejects any unauthorised imports or function calls, and — when the structure is valid — trains a separate internal template. This makes the activity safe to run in shared or public environments without sandboxing infrastructure.

Build docs developers (and LLMs) love