# Changes ## Dependencies - New extra "eval" ## Api Extension - `Experiment` and `ExperimentConfig` now have a `name`, that can however be overridden when `Experiment.run()` is called - When building an `Experiment` from an `ExperimentConfig`, the user has the option to add info about seeds to the name. - New method in `ExperimentConfig` called `build_default_seeded_experiments` - `SamplingConfig` has an explicit training seed, `test_seed` is inferred. - New `evaluation` package for repeating the same experiment with multiple seeds and aggregating the results (important extension!). Currently in alpha state. - Loggers can now restore the logged data into python by using the new `restore_logged_data` ## Breaking Changes - `AtariEnvFactory` (in examples) now receives explicit train and test seeds - `EnvFactoryRegistered` now requires an explicit `test_seed` - `BaseLogger.prepare_dict_for_logging` is now abstract --------- Co-authored-by: Maximilian Huettenrauch <m.huettenrauch@appliedai.de> Co-authored-by: Michael Panchenko <m.panchenko@appliedai.de> Co-authored-by: Michael Panchenko <35432522+MischaPanch@users.noreply.github.com>
52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
name: Ubuntu
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
cpu:
|
|
runs-on: ubuntu-latest
|
|
if: "!contains(github.event.head_commit.message, 'ci skip')"
|
|
strategy:
|
|
matrix:
|
|
python-version: ["3.11"]
|
|
steps:
|
|
- name: Cancel previous run
|
|
uses: styfle/cancel-workflow-action@0.11.0
|
|
with:
|
|
access_token: ${{ github.token }}
|
|
- uses: actions/checkout@v3
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
# use poetry and cache installed packages, see https://github.com/marketplace/actions/python-poetry-action
|
|
- name: Install poetry
|
|
uses: abatilo/actions-poetry@v2
|
|
- name: Setup a local virtual environment (if no poetry.toml file)
|
|
run: |
|
|
poetry config virtualenvs.create true --local
|
|
poetry config virtualenvs.in-project true --local
|
|
- uses: actions/cache@v3
|
|
name: Define a cache for the virtual environment based on the dependencies lock file
|
|
with:
|
|
path: ./.venv
|
|
key: venv-${{ hashFiles('poetry.lock') }}
|
|
- name: Install the project dependencies
|
|
run: |
|
|
poetry install --with dev --extras "envpool eval"
|
|
- name: wandb login
|
|
run: |
|
|
poetry run wandb login e2366d661b89f2bee877c40bee15502d67b7abef
|
|
- name: Test with pytest
|
|
# ignore test/throughput which only profiles the code
|
|
run: |
|
|
poetry run poe test
|
|
- name: Upload coverage to Codecov
|
|
uses: codecov/codecov-action@v1
|
|
with:
|
|
token: ${{ secrets.CODECOV }}
|
|
file: ./coverage.xml
|
|
flags: unittests
|
|
name: codecov-umbrella
|
|
fail_ci_if_error: false
|