An API-first distributed deployment system of deep learning models using timeseries data to analyze and predict systems behaviour

Overview

Gordo


Building thousands of models with timeseries data to monitor systems.


Table of content

About

Gordo fulfills the role of inhaling config files and supplying components to the pipeline of:

  1. Fetching data
  2. Training model
  3. Serving model

Examples

See our example notebooks for how to develop with gordo locally.


Install

pip install --upgrade gordo

Bleeding edge:
pip install git+https://github.com/equinor/gordo.git

Uninstall

pip uninstall gordo

Developer manual

This section will explain how to start development of Gordo.

How to prepare working environment

  • install requirements
# create and activate virtualenv. Note: you should use python3.7 (project's tensorflow version is not compatible with python3.8)
# then:
pip install --upgrade pip
pip install --upgrade pip-tools
pip install -r requirements/full_requirements.txt
pip install -r requirements/test_requirements.txt

How to run tests locally

Tests system requirements

To run tests it's required for your system to has (note: commands might differ from your OS):

  • running docker process;
  • available 5432 port for postgres container.

Run tests

List of commands to run tests can be found here.
Running of tests takes some time, so it's faster to run tests in parallel:

# example
pytest tests/gordo/client/test_client.py --ignore benchmarks --cov-report= --no-cov -n auto -m 'not dockertest' 
# or if you have multiple python versions and they're not resolved properly:
python3.7 -m pytest ... 

How to run tests in debug mode

Note: this example is for Pycharm IDE to use breakpoints in the code of the tests.
On the configuration setup for test running add to Additional arguments: in pytest section following string: --ignore benchmarks --cov-report= --no-cov

Comments
  • Add MLflow logging to model builder

    Add MLflow logging to model builder

    Will close #441

    Problem :airplane:

    The DS team would like to have additional logging of metrics for various configuration of deployed models for post-analysis.

    Solution :rocket:

    Add MLFlow logging to the the CLI build command and gordo_components.builder.build_model::build_model.

    This includes:

    • [x] Add a method that authenticates to AzureML and sets MLFlow logging to a wokspace. The configuration is passed to the CLI build as a dict, via the env var MLFLOW_CONFIG. Default behavior is to require interactive authentication and log MLFlow locally.
    • [x] Set the workspace (with auth) at the CLI level.
    • [x] Log the model_id (changed from cache_id) at CLI level.
    • [x] Log metadata at build_model level
    • [x] Add test for set_mlflow_tracking
    • [x] Add test for build_model
    opened by ryanjdillon 15
  • Bump scikit-learn from 0.21.3 to 0.22

    Bump scikit-learn from 0.21.3 to 0.22

    Bumps scikit-learn from 0.21.3 to 0.22.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Automerge options (never/patch/minor, and dev/runtime dependencies)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 10
  • Added optional requests.Session injection parameter

    Added optional requests.Session injection parameter

    To use gordo-client with azure authentication, we want to decorate the session with some auth headers.

    By allowing the caller to inject their own session object, this can happen without gordo-client ever having to know or care about it.

    opened by mrdeveloperdude 9
  • TimeSeriesDataset: support multiple aggregation methods

    TimeSeriesDataset: support multiple aggregation methods

    Now the TimeSeriesDataset supports an optional argument aggregation_methods with default value mean. It can be either a single aggregation method or a list of aggregation methods. Any aggregation method supported by pandas is supported. If multiple aggregation methods are provided then the resulting dataframe contains a multi-level column index with the tag-name as the top level, and the aggregation method as the second level. If a single aggregation method is provided then only the first level (tag-name) is used.

    This closes #278

    opened by epa095 8
  • Handling inf & -inf values

    Handling inf & -inf values

    How to handle inf & -inf values in data ? +-inf values are not treated as null by default in pandas, https://github.com/pandas-dev/pandas/issues/2858 Ideally inf value should be replaced by a large positive number and -inf should be replaced by negative large number, like we do in dataframe:

    df.replace([np.inf, -np.inf],[np.finfo(np.float32).max,np.finfo(np.float32).min])

    Choose np.float64 if that's the datatype.

    Would be nice to do this using a step in Pipeline or some under the hood pre-processing step like we do fillna during reading.

    opened by choukha 7
  • [WIP] New model initializers

    [WIP] New model initializers

    First try on integrating the LSTM into gordo!

    There are 2 functions for now:

    • create_lstm_model: builds the lstm autoencoder similarly to FFN, I tried to follow Miles' synthax as close as possible
    • exctract_decoder: takes the model_config from the AE and builds a model based only on the decoder part (for prediction)

    Next step will be the fit and predict functions which are a bit more complicated than the one available with keras, but I think there is enough work on those two functions already :)

    opened by Lezinou 7
  • Add assets to dataset resolvers

    Add assets to dataset resolvers

    Adds resolving of assets in tilstandomatic CSV files that are not currently supported.

    As per the issue on gordo-infrastructure: https://github.com/equinor/gordo-infrastructure/issues/508

    opened by ryanjdillon 6
  • Bump pytest-mock from 1.11.2 to 1.12.1

    Bump pytest-mock from 1.11.2 to 1.12.1

    Bumps pytest-mock from 1.11.2 to 1.12.1.

    Release notes

    Sourced from pytest-mock's releases.

    1.12.0 (2019-11-19)

    Now all patch functions also raise a ValueError when used as a context-manager. Thanks @​AlexGascon for the PR (#168).

    Changelog

    Sourced from pytest-mock's changelog.

    1.12.1 (2019-11-20)

    • Fix error if mocker.patch is used in code where the source file is not available, for example stale .pyc files (#169).

    1.12.0 (2019-11-19)

    • Now all patch functions also raise a ValueError when used as a context-manager. Thanks @​AlexGascon for the PR (#168).
    Commits
    • d3d4c4a Handle 'mocker.patch' being used without source code
    • 420fe64 Prepare release 1.12.0 (#170)
    • dc2e973 Prepare release 1.12.0
    • 845876e Raise error if any version of patch is used as a context manager (#168)
    • ed8216b Add testing for Python 3.8 (#166)
    • d3d10a5 Testing exception on patch as context manager
    • 6587f79 Raise error on every patch context manager
    • 1c5e8e9 Update CHANGELOG.rst
    • 3fb27bf Add testing for Python 3.8
    • 19a4e4d Raise an error if mocker is used in a with context (#165)
    • See full diff in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Automerge options (never/patch/minor, and dev/runtime dependencies)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 6
  • Bump gunicorn from 19.9.0 to 20.0.0

    Bump gunicorn from 19.9.0 to 20.0.0

    Bumps gunicorn from 19.9.0 to 20.0.0.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once it's up-to-date and CI passes on it, as requested by @ryanjdillon.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Automerge options (never/patch/minor, and dev/runtime dependencies)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 6
  • Bump numpy from 1.17.2 to 1.17.3

    Bump numpy from 1.17.2 to 1.17.3

    Bumps numpy from 1.17.2 to 1.17.3.

    Release notes

    Sourced from numpy's releases.

    v1.17.3

    NumPy 1.17.3 Release Notes

    This release contains fixes for bugs reported against NumPy 1.17.2 along with a some documentation improvements. The Python versions supported in this release are 3.5-3.8.

    Downstream developers should use Cython >= 0.29.13 for Python 3.8 support and OpenBLAS >= 3.7 to avoid errors on the Skylake architecture.

    Highlights

    • Wheels for Python 3.8
    • Boolean matmul fixed to use booleans instead of integers.

    Compatibility notes

    • The seldom used PyArray_DescrCheck macro has been changed/fixed.

    Contributors

    A total of 7 people contributed to this release. People with a "+" by their names contributed a patch for the first time.

    • Allan Haldane
    • Charles Harris
    • Kevin Sheppard
    • Matti Picus
    • Ralf Gommers
    • Sebastian Berg
    • Warren Weckesser

    Pull requests merged

    A total of 12 pull requests were merged for this release.

    • #14456: MAINT: clean up pocketfft modules inside numpy.fft namespace.
    • #14463: BUG: random.hypergeometic assumes npy_long is npy_int64, hung...
    • #14502: BUG: random: Revert gh-14458 and refix gh-14557.
    • #14504: BUG: add a specialized loop for boolean matmul.
    • #14506: MAINT: Update pytest version for Python 3.8
    ... (truncated)
    Commits
    • ff3df08 REL: NumPy 1.14.5 release.
    • 89208b4 Merge pull request #14704 from charris/prepare-1.17.3-release
    • f6725ad REL: Prepare for 1.17.3 release.
    • acb10b0 Merge pull request #14687 from charris/backport-14605
    • 7758dd1 BUG: properly define PyArray_DescrCheck
    • 51826db Merge pull request #14578 from charris/backport-14531
    • dc441ee BUG: random: Create a legacy implementation of random.binomial.
    • df93b2b Merge pull request #14563 from rgommers/bport-fftlicense
    • 5504e6d DOC: remove note about Pocketfft license file (non-existing here).
    • 2053327 Merge pull request #14519 from charris/backport-14498
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Automerge options (never/patch/minor, and dev/runtime dependencies)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 6
  • Error: command 'g++' failed with exit status 1  on Mac OS Mojave

    Error: command 'g++' failed with exit status 1 on Mac OS Mojave

    When run pip install --upgrade gordo-components on Mac OS Mojave, It will have following error

    clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated] clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated] ld: library not found for -lstdc++ clang: error: linker command failed with exit code 1 (use -v to see invocation) error: command 'g++' failed with exit status 1

    Mac OS Mojave version:10.14.4 to 10.14.5

    The problem is that Xcode, especially Xcode 10.x, has not installed everything, so ensure the command line tools are installed, type this in a terminal shell:

    xcode-select --install

    also start XCode and ensure all the required installation is installed ( you should get prompted if it is not.) and since XCode 10 does not install the full Mac OS SDK, run the installer at

    open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

    as this package is not installed by XCode 10.

    It is better to update this to Read.me

    opened by jieliu218 6
  • [Snyk] Security upgrade gitpython from 3.1.29 to 3.1.30

    [Snyk] Security upgrade gitpython from 3.1.29 to 3.1.30

    Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.

    Changes included in this PR

    • Changes to the following files to upgrade the vulnerable dependencies to a fixed version:
      • requirements/full_requirements.txt
    ⚠️ Warning
    paramiko 2.12.0 requires pynacl, which is not installed.
    ndg-httpsclient 0.5.1 requires PyOpenSSL, which is not installed.
    msrest 0.7.0 requires azure-core, which is not installed.
    msal 1.20.0 requires PyJWT, which is not installed.
    msal-extensions 1.0.0 requires portalocker, which is not installed.
    knack 0.10.1 requires pygments, which is not installed.
    knack 0.10.1 requires tabulate, which is not installed.
    Keras-Preprocessing 1.1.2 requires numpy, which is not installed.
    Jinja2 2.11.3 requires MarkupSafe, which is not installed.
    google-auth 2.15.0 requires rsa, which is not installed.
    databricks-cli 0.17.4 requires pyjwt, which is not installed.
    databricks-cli 0.17.4 requires tabulate, which is not installed.
    catboost 0.26.1 requires numpy, which is not installed.
    catboost 0.26.1 requires matplotlib, which is not installed.
    catboost 0.26.1 requires scipy, which is not installed.
    catboost 0.26.1 requires graphviz, which is not installed.
    catboost 0.26.1 requires plotly, which is not installed.
    catboost 0.26.1 requires pandas, which is not installed.
    adal 1.2.7 requires PyJWT, which is not installed.
    
    

    Vulnerabilities that will be fixed

    By pinning:

    Severity | Priority Score (*) | Issue | Upgrade | Breaking Change | Exploit Maturity :-------------------------:|-------------------------|:-------------------------|:-------------------------|:-------------------------|:------------------------- high severity | 619/1000
    Why? Has a fix available, CVSS 8.1 | Remote Code Execution (RCE)
    SNYK-PYTHON-GITPYTHON-3113858 | gitpython:
    3.1.29 -> 3.1.30
    | No | No Known Exploit

    (*) Note that the real score may have changed since the PR was raised.

    Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

    Check the changes in this PR to ensure they won't cause issues with your project.


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings

    📚 Read more about Snyk's upgrade and patch logic


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Remote Code Execution (RCE)

    opened by snyk-bot 0
  • [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    This PR was automatically created by Snyk using the credentials of a real user.


    Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.

    Changes included in this PR

    • Changes to the following files to upgrade the vulnerable dependencies to a fixed version:
      • requirements/test_requirements.txt
    ⚠️ Warning
    Jinja2 2.11.3 requires MarkupSafe, which is not installed.
    
    

    Vulnerabilities that will be fixed

    By pinning:

    Severity | Priority Score (*) | Issue | Upgrade | Breaking Change | Exploit Maturity :-------------------------:|-------------------------|:-------------------------|:-------------------------|:-------------------------|:------------------------- medium severity | 551/1000
    Why? Recently disclosed, Has a fix available, CVSS 5.3 | Regular Expression Denial of Service (ReDoS)
    SNYK-PYTHON-SETUPTOOLS-3180412 | setuptools:
    39.0.1 -> 65.5.1
    | No | No Known Exploit

    (*) Note that the real score may have changed since the PR was raised.

    Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

    Check the changes in this PR to ensure they won't cause issues with your project.


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings

    📚 Read more about Snyk's upgrade and patch logic


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Regular Expression Denial of Service (ReDoS)

    opened by o-fedorov 0
  • [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    This PR was automatically created by Snyk using the credentials of a real user.


    Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.

    Changes included in this PR

    • Changes to the following files to upgrade the vulnerable dependencies to a fixed version:
      • requirements/full_requirements.txt
    ⚠️ Warning
    paramiko 2.12.0 requires pynacl, which is not installed.
    ndg-httpsclient 0.5.1 requires PyOpenSSL, which is not installed.
    msrest 0.7.0 requires azure-core, which is not installed.
    msal 1.20.0 requires PyJWT, which is not installed.
    msal-extensions 1.0.0 requires portalocker, which is not installed.
    knack 0.10.1 requires tabulate, which is not installed.
    knack 0.10.1 requires pygments, which is not installed.
    Keras-Preprocessing 1.1.2 requires numpy, which is not installed.
    Jinja2 2.11.3 requires MarkupSafe, which is not installed.
    google-auth 2.15.0 requires rsa, which is not installed.
    databricks-cli 0.17.4 requires pyjwt, which is not installed.
    databricks-cli 0.17.4 requires tabulate, which is not installed.
    catboost 0.26.1 requires numpy, which is not installed.
    catboost 0.26.1 requires matplotlib, which is not installed.
    catboost 0.26.1 requires scipy, which is not installed.
    catboost 0.26.1 requires graphviz, which is not installed.
    catboost 0.26.1 requires plotly, which is not installed.
    catboost 0.26.1 requires pandas, which is not installed.
    adal 1.2.7 requires PyJWT, which is not installed.
    
    

    Vulnerabilities that will be fixed

    By pinning:

    Severity | Priority Score (*) | Issue | Upgrade | Breaking Change | Exploit Maturity :-------------------------:|-------------------------|:-------------------------|:-------------------------|:-------------------------|:------------------------- medium severity | 551/1000
    Why? Recently disclosed, Has a fix available, CVSS 5.3 | Regular Expression Denial of Service (ReDoS)
    SNYK-PYTHON-SETUPTOOLS-3180412 | setuptools:
    39.0.1 -> 65.5.1
    | No | No Known Exploit

    (*) Note that the real score may have changed since the PR was raised.

    Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

    Check the changes in this PR to ensure they won't cause issues with your project.


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings

    📚 Read more about Snyk's upgrade and patch logic


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Regular Expression Denial of Service (ReDoS)

    opened by hholi 0
  • [Snyk] Fix for 2 vulnerabilities

    [Snyk] Fix for 2 vulnerabilities

    This PR was automatically created by Snyk using the credentials of a real user.


    Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.

    Changes included in this PR

    • Changes to the following files to upgrade the vulnerable dependencies to a fixed version:
      • requirements/test_requirements.txt
    ⚠️ Warning
    pytest-cov 2.12.1 requires coverage, which is not installed.
    Jinja2 2.11.3 requires MarkupSafe, which is not installed.
    
    

    Vulnerabilities that will be fixed

    By pinning:

    Severity | Priority Score (*) | Issue | Upgrade | Breaking Change | Exploit Maturity :-------------------------:|-------------------------|:-------------------------|:-------------------------|:-------------------------|:------------------------- medium severity | 479/1000
    Why? Has a fix available, CVSS 5.3 | Regular Expression Denial of Service (ReDoS)
    SNYK-PYTHON-MISTUNE-2940625 | mistune:
    0.8.4 -> 2.0.3
    | No | No Known Exploit low severity | 441/1000
    Why? Recently disclosed, Has a fix available, CVSS 3.1 | Regular Expression Denial of Service (ReDoS)
    SNYK-PYTHON-SETUPTOOLS-3113904 | setuptools:
    39.0.1 -> 65.5.1
    | No | No Known Exploit

    (*) Note that the real score may have changed since the PR was raised.

    Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

    Check the changes in this PR to ensure they won't cause issues with your project.


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings

    📚 Read more about Snyk's upgrade and patch logic


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Regular Expression Denial of Service (ReDoS) 🦉 Regular Expression Denial of Service (ReDoS)

    opened by hholi 0
  • [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    [Snyk] Security upgrade setuptools from 39.0.1 to 65.5.1

    This PR was automatically created by Snyk using the credentials of a real user.


    Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.

    Changes included in this PR

    • Changes to the following files to upgrade the vulnerable dependencies to a fixed version:
      • requirements/full_requirements.txt
    ⚠️ Warning
    paramiko 2.11.0 requires pynacl, which is not installed.
    ndg-httpsclient 0.5.1 requires PyOpenSSL, which is not installed.
    msrest 0.7.0 requires azure-core, which is not installed.
    msal 1.20.0 requires PyJWT, which is not installed.
    msal-extensions 1.0.0 requires portalocker, which is not installed.
    knack 0.10.0 requires pygments, which is not installed.
    knack 0.10.0 requires tabulate, which is not installed.
    Keras-Preprocessing 1.1.2 requires numpy, which is not installed.
    Jinja2 2.11.3 requires MarkupSafe, which is not installed.
    google-auth 2.14.0 requires rsa, which is not installed.
    databricks-cli 0.17.3 requires pyjwt, which is not installed.
    databricks-cli 0.17.3 requires tabulate, which is not installed.
    azure-mgmt-authorization 2.0.0 requires azure-mgmt-core, which is not installed.
    adal 1.2.7 requires PyJWT, which is not installed.
    
    

    Vulnerabilities that will be fixed

    By pinning:

    Severity | Priority Score (*) | Issue | Upgrade | Breaking Change | Exploit Maturity :-------------------------:|-------------------------|:-------------------------|:-------------------------|:-------------------------|:------------------------- low severity | 441/1000
    Why? Recently disclosed, Has a fix available, CVSS 3.1 | Regular Expression Denial of Service (ReDoS)
    SNYK-PYTHON-SETUPTOOLS-3113904 | setuptools:
    39.0.1 -> 65.5.1
    | No | No Known Exploit

    (*) Note that the real score may have changed since the PR was raised.

    Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

    Check the changes in this PR to ensure they won't cause issues with your project.


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings

    📚 Read more about Snyk's upgrade and patch logic


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Regular Expression Denial of Service (ReDoS)

    opened by o-fedorov 0
Releases(4.0.2)
  • 4.0.2(Dec 9, 2022)

    What's Changed

    • Update gordo-core and gordo-client by @koropets in https://github.com/equinor/gordo/pull/1293

    Full Changelog: https://github.com/equinor/gordo/compare/4.0.1...4.0.2

    Source code(tar.gz)
    Source code(zip)
  • 4.0.1(Nov 19, 2022)

    What's Changed

    • Fix workflow lint error: cannot unmarshal number into Go struct field (#1290)

    by @koropets Full Changelog: https://github.com/equinor/gordo/compare/4.0.0...4.0.1

    Source code(tar.gz)
    Source code(zip)
  • 4.0.0(Nov 16, 2022)

    What's Changed

    • Migrate to gordo-core (#1266)
    • Open source docker image (#1281)
    • Machine loader. Introduction of a new config schema (#1268,#1276)
    • Remove WORKFLOW_GENERATOR_CUSTOM_MODEL_BUILDER_ENVS environment variable (#1270)
    • WORKFLOW_GENERATOR_DOCKER_REGISTRY is ghcr.io by default (#1286)
    • Remove flask-restplus (#1271)
    • Update dependencies (#1272,#1283)
    • Migrate to PyPI (#1273)
    • Argo workflow v3.0.0 (#1275)
    • Support of argo 2/3 versions (#1279,#1282)
    • Do not push PR's docker images (#1277)
    • Refactoring github_docker.py script (#1285)

    and other fixes

    by @koropets Full Changelog: https://github.com/equinor/gordo/compare/3.0.0...4.0.0

    Source code(tar.gz)
    Source code(zip)
  • 4.0.0rc3(Nov 3, 2022)

  • 4.0.0rc2(Oct 4, 2022)

  • 4.0.0rc1(Oct 4, 2022)

  • 4.0.0rc0(Sep 21, 2022)

  • 3.1.0rc0(Aug 29, 2022)

  • 3.0.0(Aug 12, 2022)

    What's Changed

    • gordo-dataset updated up to 5.0.0.
    • Machine arguments dataset, metadata should be specified only with actual object instances. Machine.from_dict should be used for passing them as dict.
    • WORKFLOW_GENERATOR_DEFAULT_DATA_PROVIDER environment variable for gordo workflow.

    by @koropets Full Changelog: https://github.com/equinor/gordo/compare/2.2.3...3.0.0

    Source code(tar.gz)
    Source code(zip)
  • 3.0.0rc2(Jul 29, 2022)

  • 3.0.0rc1(Jul 27, 2022)

  • 3.0.0rc0(Jun 30, 2022)

  • 2.2.3(Jun 9, 2022)

  • 2.2.2(May 20, 2022)

    What's Changed

    • Fix for the issue with ValueError in create_model_builder() #1249 by @koropets

    Full Changelog: https://github.com/equinor/gordo/compare/2.2.1...2.2.2

    Source code(tar.gz)
    Source code(zip)
  • 2.2.1(May 19, 2022)

    What's Changed

    • Custom environment variables for run_workflow_and_argo.sh in envs.sh #1247 by @koropets

    Full Changelog: https://github.com/equinor/gordo/compare/2.2.0...2.2.1

    Source code(tar.gz)
    Source code(zip)
  • 2.2.0(May 19, 2022)

    What's Changed

    • Refactor ModelBuilderBase.calculate_cache_key(). securityContext for Workflow #1245 by @koropets
    • Refactoring run_workflow_and_argo.sh #1244 by @koropets
    • gordo-dataset==4.2.1 #1246 by @koropets

    Full Changelog: https://github.com/equinor/gordo/compare/2.1.0...2.2.0

    Source code(tar.gz)
    Source code(zip)
  • 2.1.0(Apr 28, 2022)

    What's Changed

    • Python 3.9 by @koropets in #1240
    • Store "checksum" to the metadata by @koropets in #1195
    • Security dependencies update. USER 999 in Dockerfile by @koropets in #1243

    Full Changelog: https://github.com/equinor/gordo/compare/2.0.0...2.1.0

    Source code(tar.gz)
    Source code(zip)
  • 2.1.0rc0(Apr 21, 2022)

  • 2.0.0(Mar 28, 2022)

    What's Changed

    • DELETE model revisions by @koropets in #1222
    • Providing a way to customize initialDelaySeconds for livenessProbe and readinessProbe by @koropets in #1221
    • user client-5.0.0 and dataset-4.0.0 by @devProdigy in #1233
    • Update base docker image by @koropets in #1238

    Full Changelog: https://github.com/equinor/gordo/compare/1.12.0...2.0.0

    Source code(tar.gz)
    Source code(zip)
  • 2.0.0dev(Mar 16, 2022)

    What's Changed

    • DELETE model revisions by @koropets in https://github.com/equinor/gordo/pull/1222
    • Providing a way to customize initialDelaySeconds for livenessProbe and readinessProbe by @koropets in https://github.com/equinor/gordo/pull/1221
    • user client-5.0.0 and dataset-4.0.0 by @devProdigy in https://github.com/equinor/gordo/pull/1233

    Full Changelog: https://github.com/equinor/gordo/compare/1.12.0...2.0.0dev

    Source code(tar.gz)
    Source code(zip)
  • 2.0.0.dev0(Mar 17, 2022)

    What's Changed

    • DELETE model revisions by @koropets in https://github.com/equinor/gordo/pull/1222
    • Providing a way to customize initialDelaySeconds for livenessProbe and readinessProbe by @koropets in https://github.com/equinor/gordo/pull/1221
    • user client-5.0.0 and dataset-4.0.0 by @devProdigy in https://github.com/equinor/gordo/pull/1233

    Full Changelog: https://github.com/equinor/gordo/compare/1.12.0...2.0.0.dev0

    Source code(tar.gz)
    Source code(zip)
  • 2.0.0.dev(Mar 17, 2022)

    What's Changed

    • DELETE model revisions by @koropets in https://github.com/equinor/gordo/pull/1222
    • Providing a way to customize initialDelaySeconds for livenessProbe and readinessProbe by @koropets in https://github.com/equinor/gordo/pull/1221
    • user client-5.0.0 and dataset-4.0.0 by @devProdigy in https://github.com/equinor/gordo/pull/1233

    Full Changelog: https://github.com/equinor/gordo/compare/1.12.0...2.0.0.dev

    Source code(tar.gz)
    Source code(zip)
  • 1.12.1.dev0(Jan 26, 2022)

  • 1.12.0(Jan 13, 2022)

    What's Changed

    • 31230 update tensorflow and numpy versions (vulnerabilities) by @devProdigy in https://github.com/equinor/gordo/pull/1214
    • update dataset to 3.3.0 by @devProdigy in https://github.com/equinor/gordo/pull/1215

    Full Changelog: https://github.com/equinor/gordo/compare/1.11.3...1.12.0

    Source code(tar.gz)
    Source code(zip)
  • 1.12.0dev0(Jan 13, 2022)

  • 1.11.3(Jan 5, 2022)

  • 1.11.2(Dec 23, 2021)

  • 1.11.1(Dec 20, 2021)

  • 1.11.0(Dec 20, 2021)

  • 1.10.5(Nov 26, 2021)

Owner
Equinor
Equinor
Deep GPs built on top of TensorFlow/Keras and GPflow

GPflux Documentation | Tutorials | API reference | Slack What does GPflux do? GPflux is a toolbox dedicated to Deep Gaussian processes (DGP), the hier

Secondmind Labs 107 Nov 02, 2022
This is the code for Deformable Neural Radiance Fields, a.k.a. Nerfies.

Deformable Neural Radiance Fields This is the code for Deformable Neural Radiance Fields, a.k.a. Nerfies. Project Page Paper Video This codebase conta

Google 1k Jan 09, 2023
Real life contra a deep learning project built using mediapipe and openc

real-life-contra Description A python script that translates the body movement into in game control. Welcome to all new real life contra a deep learni

Programminghut 7 Jan 26, 2022
Code for "Intra-hour Photovoltaic Generation Forecasting based on Multi-source Data and Deep Learning Methods."

pv_predict_unet-lstm Code for "Intra-hour Photovoltaic Generation Forecasting based on Multi-source Data and Deep Learning Methods." IEEE Transactions

FolkScientistInDL 8 Oct 08, 2022
CVPR2021: Temporal Context Aggregation Network for Temporal Action Proposal Refinement

Temporal Context Aggregation Network - Pytorch This repo holds the pytorch-version codes of paper: "Temporal Context Aggregation Network for Temporal

Zhiwu Qing 63 Sep 27, 2022
[NeurIPS'21 Spotlight] PyTorch code for our paper "Aligned Structured Sparsity Learning for Efficient Image Super-Resolution"

ASSL This repository is for a new network pruning method (Aligned Structured Sparsity Learning, ASSL) for efficient single image super-resolution (SR)

Huan Wang 47 Nov 28, 2022
Computer Vision Script to recognize first person motion, developed as final project for the course "Machine Learning and Deep Learning"

Overview of The Code BaseColab/MLDL_FPAR.pdf: it contains the full explanation of our work Base Colab: it contains the base colab used to perform all

Simone Papicchio 4 Jul 16, 2022
CausalNLP is a practical toolkit for causal inference with text as treatment, outcome, or "controlled-for" variable.

CausalNLP CausalNLP is a practical toolkit for causal inference with text as treatment, outcome, or "controlled-for" variable. Install pip install -U

Arun S. Maiya 95 Jan 03, 2023
Towards Improving Embedding Based Models of Social Network Alignment via Pseudo Anchors

PSML paper: Towards Improving Embedding Based Models of Social Network Alignment via Pseudo Anchors PSML_IONE,PSML_ABNE,PSML_DEEPLINK,PSML_SNNA: numpy

13 Nov 27, 2022
A Lightweight Face Recognition and Facial Attribute Analysis (Age, Gender, Emotion and Race) Library for Python

deepface Deepface is a lightweight face recognition and facial attribute analysis (age, gender, emotion and race) framework for python. It is a hybrid

Sefik Ilkin Serengil 5.2k Jan 02, 2023
:hot_pepper: R²SQL: "Dynamic Hybrid Relation Network for Cross-Domain Context-Dependent Semantic Parsing." (AAAI 2021)

R²SQL The PyTorch implementation of paper Dynamic Hybrid Relation Network for Cross-Domain Context-Dependent Semantic Parsing. (AAAI 2021) Requirement

huybery 60 Dec 31, 2022
Ludwig Benchmarking Toolkit

Ludwig Benchmarking Toolkit The Ludwig Benchmarking Toolkit is a personalized benchmarking toolkit for running end-to-end benchmark studies across an

HazyResearch 17 Nov 18, 2022
OpenMMLab Semantic Segmentation Toolbox and Benchmark.

Documentation: https://mmsegmentation.readthedocs.io/ English | 简体中文 Introduction MMSegmentation is an open source semantic segmentation toolbox based

OpenMMLab 5k Dec 31, 2022
QI-Q RoboMaster2022 CV Algorithm

QI-Q RoboMaster2022 CV Algorithm

2 Jan 10, 2022
Code release for our paper, "SimNet: Enabling Robust Unknown Object Manipulation from Pure Synthetic Data via Stereo"

SimNet: Enabling Robust Unknown Object Manipulation from Pure Synthetic Data via Stereo Thomas Kollar, Michael Laskey, Kevin Stone, Brijen Thananjeyan

68 Dec 14, 2022
Understanding and Improving Encoder Layer Fusion in Sequence-to-Sequence Learning (ICLR 2021)

Understanding and Improving Encoder Layer Fusion in Sequence-to-Sequence Learning (ICLR 2021) Citation Please cite as: @inproceedings{liu2020understan

Sunbow Liu 22 Nov 25, 2022
Learning Spatio-Temporal Transformer for Visual Tracking

STARK The official implementation of the paper Learning Spatio-Temporal Transformer for Visual Tracking Hiring research interns for visual transformer

Multimedia Research 484 Dec 29, 2022
Pull sensitive data from users on windows including discord tokens and chrome data.

⭐ For a 🍪 Pegasus Pull sensitive data from users on windows including discord tokens and chrome data. Features 🟩 Discord tokens 🟩 Geolocation data

Addi 44 Dec 31, 2022
efficient neural audio synthesis in the waveform domain

neural waveshaping synthesis real-time neural audio synthesis in the waveform domain paper • website • colab • audio by Ben Hayes, Charalampos Saitis,

Ben Hayes 169 Dec 23, 2022
DilatedNet in Keras for image segmentation

Keras implementation of DilatedNet for semantic segmentation A native Keras implementation of semantic segmentation according to Multi-Scale Context A

303 Mar 15, 2022