Code Monkey home page Code Monkey logo

composable-logs / mlflow Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mlflow/mlflow

0.0 0.0 0.0 50 MB

Modified version of MLFlow that can be deployed as a static website (and does not depend on backend API or SQL database)

Home Page: https://pynb-dag-runner.github.io/pynb-dag-runner/

License: Apache License 2.0

Python 52.94% Shell 0.17% HTML 0.02% JavaScript 40.74% CSS 0.36% Dockerfile 0.03% Java 2.96% R 2.30% Mako 0.01% Scala 0.40% TSQL 0.01% Makefile 0.07%

mlflow's Introduction

ci/cd: publish snapshot to PyPI PyPI version license=mit Ideas and feedback=welcome

Composable Logs

Composable Logs is a Python library to run ML/data workflows on stateless compute infrastructure (that may be ephemeral or serverless).

In particular, using Composable Logs one can do ML experiment tracking without a dedicated tracking server (and database) to record ML metrics, models or artifacts. Instead, these are emitted using the OpenTelemetry standard for logging. This is an open standard in software engineering with growing support.

It can be useful to think of the logs emitted by Composable Logs as somewhat similar to logs emitted by unit test frameworks (like eg the JUnit format).

For example, log events emitted from Composable Logs can be directed to a JSON-file, or sent to any log storage supporting OpenTelemetry (span) events. In either case, this means that one does not need a separate tracking service only for ML experiments.

The below shows how a captured JSON log can be converted into a static website based on ML Flow.

Composable Logs uses the Ray framework for parallel task execution.

For more details:

Documentation and architecture

Live demo

  • Using Composable Logs one can run a ML training pipeline using only a free Github account. This uses:

    • Github actions: trigger the ML pipeline daily and for each PR.
    • Build artifacts: to store OpenTelemetry logs of past runs.
    • Github Pages: to host static website for reporting on past runs.

    The static website is rebuilt after each pipeline run (by extracting relevant data from past OpenTelemetry logs). This uses a fork of MLFlow that can be deployed as a static website, https://github.com/composable-logs/mlflow.

    Screenshot

  • Codes for pipeline (MIT): https://github.com/composable-logs/mnist-digits-demo-pipeline

Public roadmap and planning

Install via PyPI

Latest release
Snapshot of latest commit to main branch

Any feedback/ideas welcome!

License

(c) Matias Dahl, MIT, see LICENSE.md.

(Note: As of 1/2023 this project was renamed from pynb-dag-runner to composable-logs.)

mlflow's People

Contributors

aarondav avatar andrewmchen avatar andychow-db avatar ankit-db avatar apurva-koti avatar arjundc-db avatar aveshcsingh avatar benwilson2 avatar dbczumar avatar dmatrix avatar eedeleon avatar harupy avatar javierluraschi avatar jdlesage avatar jimthompson5802 avatar juntai-zheng avatar liangz1 avatar lorenzwalthert avatar mateiz avatar matiasdahl avatar mlflow-automation avatar mparkhe avatar shrinath-suresh avatar smurching avatar sueann avatar tomasatdatabricks avatar weichenxu123 avatar wentinghu avatar yitao-li avatar zangr avatar

mlflow's Issues

MLFlow UI: Load STATIC_DATA dynamically from a statically hosted JSON file

Instead of compiling MLFlow UI each time with data, load data dynamically from a static asset.

demo cd-pipeline: publish static data as static asset

Update MLFlow data loading

demo pipeline

Create a pip-package with static mlflow static website ready to be deployed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.