All Projects → keplr-io → Hera

keplr-io / Hera

Licence: mit
Train/evaluate a Keras model, get metrics streamed to a dashboard in your browser.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Hera

Explainerdashboard
Quickly build Explainable AI dashboards that show the inner workings of so-called "blackbox" machine learning models.
Stars: ✭ 378 (-23.94%)
Mutual labels:  dashboard
Ncov2019
query stats of infected coronavirus cases
Stars: ✭ 418 (-15.9%)
Mutual labels:  dashboard
Orleansdashboard
📊 An admin dashboard for Microsoft Orleans
Stars: ✭ 465 (-6.44%)
Mutual labels:  dashboard
Doctor
Doctor is a documentation server for your docs in github
Stars: ✭ 391 (-21.33%)
Mutual labels:  dashboard
Universal Dashboard
Build beautiful websites with PowerShell.
Stars: ✭ 408 (-17.91%)
Mutual labels:  dashboard
Candybar Library
Android icon pack material dashboard
Stars: ✭ 437 (-12.07%)
Mutual labels:  dashboard
Triage Party
🎉 Triage Party: massively multi-player GitHub triage 🎉
Stars: ✭ 374 (-24.75%)
Mutual labels:  dashboard
Sail
Sail is a lightweight Rails engine that brings an admin panel for managing configuration settings on a live Rails app
Stars: ✭ 484 (-2.62%)
Mutual labels:  dashboard
Chromium Dashboard
Chrome Status Dashboard
Stars: ✭ 407 (-18.11%)
Mutual labels:  dashboard
Dashboard
A dashboard for Tekton!
Stars: ✭ 448 (-9.86%)
Mutual labels:  dashboard
Frames
Free, feature-rich, easily customizable Android dashboard for wallpapers apps
Stars: ✭ 396 (-20.32%)
Mutual labels:  dashboard
Viper
Viper 是一个基于Anno微服务引擎开发的Dashboard项目、示例项目。Anno 底层通讯采用 grpc、thrift。自带服务发现、调用链追踪、Cron 调度、限流、事件总线等等
Stars: ✭ 402 (-19.11%)
Mutual labels:  dashboard
Gentelella
Free Bootstrap 4 Admin Dashboard Template
Stars: ✭ 20,378 (+4000.2%)
Mutual labels:  dashboard
Blueprint
Free, feature-rich, easily customizable Android dashboard for icon packs
Stars: ✭ 389 (-21.73%)
Mutual labels:  dashboard
Docker monitoring logging alerting
Docker host and container monitoring, logging and alerting out of the box using cAdvisor, Prometheus, Grafana for monitoring, Elasticsearch, Kibana and Logstash for logging and elastalert and Alertmanager for alerting.
Stars: ✭ 479 (-3.62%)
Mutual labels:  dashboard
Redash
Make Your Company Data Driven. Connect to any data source, easily visualize, dashboard and share your data.
Stars: ✭ 20,147 (+3953.72%)
Mutual labels:  dashboard
Argon Dashboard
Argon - Dashboard for Bootstrap 4 by Creative Tim
Stars: ✭ 429 (-13.68%)
Mutual labels:  dashboard
Flask Monitoringdashboard
Automatically monitor the evolving performance of Flask/Python web services.
Stars: ✭ 483 (-2.82%)
Mutual labels:  dashboard
Intervention
WordPress plugin to configure wp-admin and application state using a single config file.
Stars: ✭ 481 (-3.22%)
Mutual labels:  dashboard
Kongdash
An elegant desktop client for Kong Admin API
Stars: ✭ 449 (-9.66%)
Mutual labels:  dashboard

Hera

Train/evaluate a Keras model, get metrics streamed to a dashboard in your browser.

demo

Setting up

Step 1. Plant the spy

Install the package


    pip install heraspy

Add the callback

    herasCallback = HeraCallback(
        'model-key',
        'localhost',
        4000
    )

    model.fit(X_train, Y_train, callbacks=[herasCallback])

Step 2. Start the server

Git clone this repository, then run


    cd server
    npm install
    gulp # optional, for now the build file is kept track in git
    node build/server

Step 3. Start the dashboard


    cd client
    npm install
    npm start

Using RabbitMQ

By default hera uses socket.io for messaging - both from keras callback to server, and from server to dashboard. This is to minimize the number of things one needs to install before getting up and running with hera.

However, in production socket.io is outperformed by a number of alternatives, also it is good in general to decouple the server-client communication from the inter-process communitation (python -> node) so that each can be managed and optimized independently.

To demonstrate how this works Hera ships with the option to use rabbitMQ for interprocess communication. Here's how to use it.

In your model file

    from heraspy.callback import HeraCallback
    from heraspy.dispatchers.rabbitmq import get_rabbitmq_dispatcher

    herasCallback = HeraCallback(
        'model-key', 'localhost', 4000,
        dispatch=get_rabbitmq_dispatcher(
          queue='[my-queue]',
          amqps_url='amqps://[user]:[pass]@my-amqp-address'
        )
    )

In server/src/server.js

Replace the only line in the file with

    getServer({
        dispatcher: 'rabbitmq',
        dispatcherConfig: {
            amqpUrl: 'amqps://[user]:[pass]@my-amqp-address',
            amqpQueue: '[my-queue]'
        }
    }).start();


That's it! Now communication from the python process and the node webserver process goes through rabbitmq.

Credits

Aside from the obvious ones:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].