Giter Club home page Giter Club logo

debiai's People

Contributors

fadycoding avatar raphaelbraud avatar theochelim avatar tomansion avatar tommansionirt avatar upnico9 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

debiai's Issues

Allow quick data analysis from a csv file

A good way to try the dashboard without using the module

Maybe by adding a 'import csv' on the main page with a drag an drop, it display a table with all the columns where we can say if a column is context or input

Color customisation

Let the users chose the color gradient, it can clarify in situation like those :
image
image

Keyboard support

Make all DebiAI work with [arrow] keys and [enter] to

  • navigate from project list to analysis page
  • navigate into the widget catalog

Add shortcuts for :

  • Widget catalog
  • Creating a selection
  • Creating a virtual column
  • Open focused widget settings

Make the [enter] key work for

  • forms (creating a selection, virtual column)
  • Selecting a widget

Make the [esc] key work for :

  • Leaving a form or modal (selection creation, column selection...)

Add doc and hint for all of this

Efforts : 2days

New Line plot widget for time series

Is your feature request related to a problem? Please describe.
There is no simple way of displaying lines for time series

Describe the solution you'd like
A new line plot, preferably with range sliders for time

Describe alternatives you've considered
Add a "line display" in the point plot

Additional context
We're working on a time series project

Docker image v0.17.0 fails to run

Hello,
I am trying to run the DebiAI in an Openshift cluster using the docker image v0.17.0, but it seems there is some issue of a python package in the image.
I got the following error logs:

Traceback (most recent call last):
  File "websrv.py", line 1, in <module>
    import connexion
  File "/usr/local/lib/python3.8/site-packages/connexion/__init__.py", line 5, in <module>
    from .apis import AbstractAPI  # NOQA
  File "/usr/local/lib/python3.8/site-packages/connexion/apis/__init__.py", line 1, in <module>
    from .abstract import AbstractAPI  # NOQA
  File "/usr/local/lib/python3.8/site-packages/connexion/apis/abstract.py", line 13, in <module>
    from ..operations import make_operation
  File "/usr/local/lib/python3.8/site-packages/connexion/operations/__init__.py", line 1, in <module>
    from .abstract import AbstractOperation  # noqa
  File "/usr/local/lib/python3.8/site-packages/connexion/operations/abstract.py", line 9, in <module>
    from ..decorators.response import ResponseValidator
  File "/usr/local/lib/python3.8/site-packages/connexion/decorators/response.py", line 11, in <module>
    from .validation import ResponseBodyValidator
  File "/usr/local/lib/python3.8/site-packages/connexion/decorators/validation.py", line 13, in <module>
    from ..json_schema import Draft4RequestValidator, Draft4ResponseValidator
  File "/usr/local/lib/python3.8/site-packages/connexion/json_schema.py", line 6, in <module>
    from openapi_spec_validator.handlers import UrlHandler
ModuleNotFoundError: No module named 'openapi_spec_validator.handlers'

Can you please point us to the correct image?

Save / load dashboard layout and widget conf

It should be possible to save the configuration and the results generated on a project as an easily exportable physical file. So in 2 buttons: save_config, load_config. to save a config load in the app.

Add model parameters

We could add parameters to models and display them as contexts in the dashboard
Useful for hyper parameters tuning

Display the hyper parameters in the model selection and in a new category on the analysis page

[BACKEND] Refactor Data Provider part

Add classes for Data Providers implementation

Data provider Global (Method Interface)
Data Provider Web
Data Provider python

(If not in schema add Method to create selections)
MicrosoftTeams-image

Display during or after loading what caused the loading time

Is your feature request related to a problem? Please describe.
We don't know how to improve the data loading time

Describe the solution you'd like
After starting an analysis, we jump on a loading page with a progress bar, a pie chart display what is causing the most time:
Backend loading, cache saving, data transformation time, data provider to back and back to front, ...

Describe alternatives you've considered
After loading, display a report accessible somewhere with a button

Better data providers implementation

Is your feature request related to a problem? Please describe.
It's not clear if a project is from the python module or from a data-provider
We can't retry a connection to a data provider
We can't add a data provider once the app has started

Describe the solution you'd like
A "add data provider" in the DebiAI Dashboard main page
A "retry connection" button
A "Delete data-provider" to remove them except if they are from the config file

Send samples selections on Data-providers projects

Is your feature request related to a problem? Please describe.
It's not possible to save selections on a project coming from a data provider.

Describe the solution you'd like
Upgrade the API to include a POST request to save selections

Be able to sort avg bar plot

In the case where we want to quickly see witch model is the best in this case :
image

we could add a button to sort the values for each color from lowest to highest

impl data providers

Data providers are services made by the projects that want to use DebiAI and have a new faster and more reliable way of adding data.
Projects will have to create a data provider service that respect an API made with OpenAPI

Implement NAN values

Today, Nan values aren't supported by DebiAI, to support them will take a lot of work because each widget need to be tested, (the parallel coordinate plot does not display a line where one of the value is none, ...)

But they could be analyzed on their own and be treated as contexts, there is a lot of project with empty values.

Secure the the export methods and the data providers creation

Is your feature request related to a problem? Please describe.
If any one car create Kafka or post export method, they can reach services accessible from the DebiAI server

Describe the solution you'd like
Add a "prevent export method creation" and a "prevent data-providers creation" option in the config file.

Read environment variables for config

Is your feature request related to a problem? Please describe.
Being able to read environment variable will make deployment of DebiAI way easier

Describe the solution you'd like
To configure Data providers in the env variables, use something like: dp = dp_url; dp = dp_url;...
DEBIAI_DATA_PROVIDERS = data_prov_1 = http://localhost:3010; data_prov_2=http://localhost:3011;

To configure Export method in the env variables, use something like: em = [type, para1, para2, ...]; em=[type, para1, para2, ...]
DEBIAI_EXPORT_METHODS=kafka_export=[kafka, local:9092, my_topic]; ...

Describe alternatives you've considered
Eventually, instead of lists in a single env variable, do something like:

DEBIAI_DATA_PROVIDER_MyDb1=http://localhost:3010
DEBIAI_DATA_PROVIDER_MyDb2=http://localhost:3011

DEBIAI_EXPORT_METHOD_MyExport1=kafka;local:9092;my_topic1
DEBIAI_EXPORT_METHOD_MyExport2=kafka;local:9092;my_topic2

Add HTTP - POST export method

Describe the solution you'd like
Add an http export method, it will send for examples Json selections through a post request to a specified url

Frontend : Stream the sample ID list

If project number of sample < 10000 or ? : retro compatibility : all ID list
else : stream 10000/10000

request :
Front to back : get backend/project/idIlist?from=0&to=10000
Back to DT : get debiai/dataIdlist?from=0&to=10000

Add animations
(cancel button)

trasfer/import/export widget configurations

Today, widget configurations belong to a project, but it is destroyed when the project is deleted or recreated
Some widget configurations can also be used by similar projects

We should be able to transfer configurations between projects, maybe by saving them in a common configuration list for all the projects.

Dashboard cache improvement

[FRONT] : Allow the user to clear the cache, to save or not the project data in the cache, to load them or not

Make it work for data Providers
Cache Data Id LIst

Scroll automatically to wigdet when created

When adding a new widget, the window of the workspace should scroll automatically where the new widget has just been created.

Currently this is not the case, which requires if we have a lot of open widget, and that we are very low in the work area to manually move up to the top. Because by default the new added widgets are always displayed at the top. We could change this for example by inserting the widget in a space closest to the active area (TBD)

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.