openstef 4.1.2__tar.gz → 4.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {openstef-4.1.2 → openstef-4.2.2}/PKG-INFO +14 -14
- openstef-4.2.2/docs/automation.yml +56 -0
- openstef-4.2.2/docs/pages.yml +310 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/pyproject.toml +1 -1
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/pyproject.toml +1 -1
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/pyproject.toml +1 -1
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/pyproject.toml +1 -1
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/pyproject.toml +1 -1
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/lgbm_forecaster.py +7 -5
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/lgbmlinear_forecaster.py +7 -5
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/multi_quantile_regressor.py +9 -7
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/utils/test_multi_quantile_regressor.py +25 -0
- {openstef-4.1.2 → openstef-4.2.2}/pyproject.toml +14 -14
- {openstef-4.1.2 → openstef-4.2.2}/uv.lock +6 -6
- {openstef-4.1.2 → openstef-4.2.2}/.github/CODEOWNERS +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/ISSUE_TEMPLATE/task.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/dependabot.yml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/pr-labeler.yml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/_job_quality_check.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/check.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/citations.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/codeql.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/docs-check.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/docs.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/pr-labeler.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.github/workflows/release-v4.yaml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.gitignore +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/.python-version +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/CITATION.cff +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/COMMITTERS.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/LICENSE.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/LICENSES/MPL-2.0.txt +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/REUSE.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/THIRD_PARTY_NOTICES.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/.gitkeep +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/autosummary_cache.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/autosummary_helpers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/pyproject.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_figures/generate_concept_figures.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_figures/generate_guide_figures.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_static/css/.gitkeep +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_static/css/custom.css +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_static/versions.json +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_static/versions.json.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_templates/custom_class.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_templates/custom_class_noindex.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_templates/custom_function.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_templates/module_overview.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/_templates/package_overview.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/beam.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/core.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/foundation_models.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/meta.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/api/models.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/conf.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/_getting_help.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/code_of_conduct.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/code_style_guide.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/contributing_guide.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/development_setup.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/development_workflow.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/document.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/contribute/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/beam_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/beam_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/component_splitting_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/component_splitting_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/intro_to_energy_forecasting_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/intro_to_energy_forecasting_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_2.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_2.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_3.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/metalearning_diagram_3.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/models_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/concepts/models_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/getting_started/migration_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/getting_started/migration_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/datasets_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/datasets_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/datasets_diagram_2.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/datasets_diagram_2.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/deployment_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/deployment_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/deployment_diagram_2.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/deployment_diagram_2.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/forecasting_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/forecasting_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/probabilistic_forecasting_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/probabilistic_forecasting_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/reliability_fallback_diagram_1.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/reliability_fallback_diagram_1.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/reliability_fallback_diagram_2.mmd +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/diagrams/user_guide/guides/reliability_fallback_diagram_2.mmd.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/examples.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/aggregation_comparison.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/aggregation_comparison.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/backtesting_simulation.gif +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/backtesting_simulation.gif.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/forecast_confidence_bands.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/forecast_confidence_bands.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/weekly_load_profile.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/concepts/weekly_load_profile.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/calibration_plot.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/calibration_plot.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/flatline_detection.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/flatline_detection.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/liander2024_rcrps_by_group.png +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/liander2024_rcrps_by_group.png.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/probabilistic_fan_chart.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/guides/probabilistic_fan_chart.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/methodology_train_predict.pptx +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/methodology_train_predict.pptx.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/methodology_train_predict.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/methodology_train_predict.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/uncertainty_estimation.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/images/uncertainty_estimation.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/js/.gitkeep +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/favicon.ico +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/favicon.ico.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/logo_openstef_small.png +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/logo_openstef_small.png.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/openstef-horizontal-color.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/openstef-horizontal-color.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/openstef-horizontal-white.svg +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/logos/openstef-horizontal-white.svg.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/project/citing.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/project/governance.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/project/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/project/license.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/project/support.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/beam.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/component_splitting.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/foundation_models.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/intro_to_energy_forecasting.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/metalearning.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/concepts/models.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/external_resources.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/getting_started/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/getting_started/installation.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/getting_started/migration.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/benchmark_results.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/deployment.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/forecasting.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/probabilistic_forecasting.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/guides/reliability_fallback.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/intro/index.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/intro/methodology_train_predict.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/logging.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/source/user_guide/tutorials.rst +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/docs/sync_sources.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/.gitkeep +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/compare_benchmark_runs.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/compare_benchmark_runs.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/compare_benchmark_runs.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_forecaster.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_forecaster.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/custom_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/evaluate_existing_forecasts.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/evaluate_existing_forecasts.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/evaluate_existing_forecasts.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_custom_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_custom_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_custom_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_liander2024_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_liander2024_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/custom/run_liander2024_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/compare_benchmark_runs.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/compare_benchmark_runs.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/compare_benchmark_runs.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_chronos2_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_chronos2_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_chronos2_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_ensemble_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_ensemble_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_ensemble_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_xgboost_gblinear_benchmark.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_xgboost_gblinear_benchmark.ipynb.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/benchmarks/liander2024/run_xgboost_gblinear_benchmark.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/.gitignore +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/poe_tasks.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/pyproject.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/airflow_app/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/airflow_app/dags/openstef_forecast.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/airflow_app/dags/openstef_train.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/celery_app/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/celery_app/app.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/celery_app/run.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/celery_app/tasks.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/common/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/common/config.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/common/pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/common/services.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/dagster_app/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/dagster_app/definitions.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/src/dagster_app/run.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/deployment/tests/test_deployment.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/pyproject.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/.gitignore +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/backtesting_quickstart.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/backtesting_quickstart.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/custom_pipeline.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/custom_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/datasets.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/ensemble_forecasting.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/ensemble_forecasting.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/feature_engineering.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/feature_engineering.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/forecasting_quickstart.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/forecasting_quickstart.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/foundation_model_forecasting.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/foundation_model_forecasting.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/foundation_model_forecasting_quickstart.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/foundation_model_forecasting_quickstart.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/hyperparameter_tuning_with_optuna.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/hyperparameter_tuning_with_optuna.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/model_explainability.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/model_explainability.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/quantile_calibration.ipynb +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/examples/tutorials/quantile_calibration.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/jupytext.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/analysis_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/models/target_metadata.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/models/visualization_aggregation.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/models/visualization_output.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/forecast_time_series_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/grouped_target_metric_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/precision_recall_curve_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/quantile_calibration_box_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/quantile_probability_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/summary_table_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/plots/windowed_metric_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/base.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/grouped_target_metric_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/precision_recall_curve_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/quantile_calibration_box_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/quantile_probability_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/summary_table_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/timeseries_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/analysis/visualizations/windowed_metric_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_event.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_event_generator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_forecaster/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_forecaster/dummy_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_forecaster/mixins.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/backtest_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/backtesting/restricted_horizon_timeseries.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/baselines/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/baselines/openstef4.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/benchmark_comparison_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/benchmark_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/benchmarks/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/benchmarks/liander2024.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/callbacks/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/callbacks/base.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/callbacks/strict_execution_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/models/benchmark_target.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/storage/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/storage/base.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/storage/local_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/storage/s3_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/benchmarking/target_provider.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/evaluation_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/metric_providers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/models/report.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/models/subset.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/models/window.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/evaluation/window_iterators.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/metrics/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/metrics/metrics_deterministic.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/metrics/metrics_helpers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/src/openstef_beam/metrics/metrics_probabilistic.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_forecast_time_series_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_grouped_target_metric_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_precision_recall_curve_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_quantile_calibration_box_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_quantile_probability_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_summary_table_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/plots/test_windowed_metric_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/test_analysis_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/conftest.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_grouped_target_metric_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_precision_recall_curve_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_quantile_calibration_box_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_quantile_probability_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_summary_table_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_timeseries_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/analysis/visualizations/test_windowed_metric_visualization.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/backtesting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/backtesting/test_backtest_event_generator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/backtesting/test_backtest_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/backtesting/test_batch_prediction.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/baselines/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/baselines/test_openstef4.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/storage/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/storage/test_local_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/storage/test_s3_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/test_benchmark_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/benchmarking/test_target_provider.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/models/test_window.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/test_evaluation_pipeline.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/test_metric_provider.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/evaluation/test_window_iterators.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/metrics/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/metrics/test_metrics_deterministic.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/metrics/test_metrics_helpers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/unit/metrics/test_metrics_probabilistic.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-beam/tests/utils/mocks.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/base_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/constants.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/mixins.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/timeseries_dataset.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/validated_datasets.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/validation.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/datasets/versioned_timeseries_dataset.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/exceptions.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/mixins/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/mixins/param_ranges.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/mixins/predictor.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/mixins/stateful.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/mixins/transform.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/testing.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/transforms/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/transforms/dataset_transforms.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/types.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/datetime.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/invariants.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/itertools.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/multiprocessing.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/numpy.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/pandas.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/src/openstef_core/utils/pydantic.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/test_mixins.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/test_timeseries_dataset.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/test_validated_datasets.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/test_validation.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/test_versioned_timeseries_dataset.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/datasets/utils.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/mixins/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/mixins/test_stateful.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/mixins/test_transform.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/test_base_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/test_hyperparams_tuning.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/test_param_ranges.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/test_types.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/transforms/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/test_datetime.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/test_itertools.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/test_multiprocessing.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/test_numpy.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-core/tests/unit/utils/test_pandas.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/inference/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/inference/backend.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/inference/onnx_backend.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/inference/provider_selection.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/inference/providers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/integrations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/integrations/beam.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/models/catalog.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/models/checkpoint.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/models/forecasting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/models/forecasting/chronos2_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/presets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/src/openstef_foundation_models/presets/forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/integration/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/integration/conftest.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/integration/test_beam_integration.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/integration/test_chronos2_onnx.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/inference/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/inference/test_onnx_backend.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/inference/test_provider_selection.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/inference/test_providers.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/integrations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/integrations/test_beam.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/models/forecasting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/models/forecasting/test_chronos2_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/models/test_catalog.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/presets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-foundation-models/tests/unit/presets/test_forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/ensemble_forecasting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/forecast_combiners/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/forecast_combiners/forecast_combiner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/forecast_combiners/learned_weights_combiner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/models/forecast_combiners/stacking_combiner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/presets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/presets/forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/src/openstef_meta/utils/datasets.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/integration/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/integration/test_ensemble_forecasting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/integrations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/integrations/test_mlflow_storage_callback_ensemble.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/conftest.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/forecast_combiners/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/forecast_combiners/conftest.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/forecast_combiners/test_learned_weights_combiner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/forecast_combiners/test_stacking_combiner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/forecasting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/models/test_ensemble_forecasting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-meta/tests/unit/utils/test_datasets.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/README.md +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/explainability/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/explainability/mixins.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/explainability/plotters/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/explainability/plotters/contributions_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/explainability/plotters/feature_importance_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/joblib/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/joblib/joblib_model_serializer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/mlflow/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/mlflow/mlflow_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/mlflow/mlflow_storage_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/optuna/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/integrations/optuna/tuner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/mixins/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/mixins/callbacks.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/mixins/model_serializer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/component_splitter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/constant_component_splitter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/linear_component_splitter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/linear_component_splitter_model/linear_component_splitter_model.z +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting/linear_component_splitter_model/linear_component_splitter_model.z.license +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/component_splitting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/base_case_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/constant_quantile_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/flatliner_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/gblinear_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/median_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting/xgboost_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/models/forecasting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/presets/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/presets/forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/testing.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/energy_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/energy_domain/wind_power_feature_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/dimensionality_reducer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/empty_feature_remover.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/flagger.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/imputer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/nan_dropper.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/outlier_handler.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/sample_weighter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/scaler.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/selector.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/general/shifter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/postprocessing/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/postprocessing/confidence_interval_applicator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/postprocessing/isotonic_quantile_calibrator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/postprocessing/quantile_sorter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/cyclic_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/datetime_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/holiday_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/lags_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/rolling_aggregates_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/time_domain/versioned_lags_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/validation/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/validation/completeness_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/validation/flatline_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/validation/input_consistency_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/weather_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/weather_domain/atmosphere_derived_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/weather_domain/daylight_feature_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/transforms/weather_domain/radiation_derived_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/data_split.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/evaluation_functions.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/feature_selection.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/loss_functions.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/utils/xgboost.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/callbacks/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/callbacks/data_save.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/callbacks/model_performance_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/custom_component_split_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/src/openstef_models/workflows/custom_forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/integration/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/integration/test_integration.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/explainability/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/explainability/plotters/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/explainability/plotters/test_contributions_plotter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/joblib/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/joblib/test_joblib_model_serializer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/mlflow/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/mlflow/test_mlflow_storage.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/mlflow/test_mlflow_storage_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/optuna/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/integrations/optuna/test_tuner.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/component_splitting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/component_splitting/test_constant_component_splitter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/component_splitting/test_linear_component_splitter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/conftest.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_base_case_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_constant_quantile_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_flatliner_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_gblinear_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_lgbm_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_lgbmlinear_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_median_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/forecasting/test_xgboost_forecaster.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/models/test_forecasting_model.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/test_example.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/energy_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/energy_domain/test_wind_power_feature_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_dimensionality_reducer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_empty_feature_remover.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_flagger.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_imputer.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_nan_dropper.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_outlier_handler.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_sample_weighter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_scaler.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_selector.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/general/test_shifter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/postprocessing/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/postprocessing/test_confidence_interval_applicator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/postprocessing/test_isotonic_quantile_calibrator.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/postprocessing/test_quantile_sorter.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_cyclic_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_datetime_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_holiday_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_lags_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_rolling_aggregates_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/time_domain/test_versioned_lags_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/validation/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/validation/test_completeness_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/validation/test_flatline_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/validation/test_input_consistency_checker.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/weather_domain/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/weather_domain/test_atmosphere_derived_features_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/weather_domain/test_daylight_feature_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/transforms/weather_domain/test_radiation_derived_featuers_adder.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/utils/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/utils/test_data_split.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/utils/test_feature_selection.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/utils/test_loss_functions.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/workflows/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/workflows/callbacks/__init__.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/workflows/callbacks/test_model_performance_callback.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/packages/openstef-models/tests/unit/workflows/test_custom_forecasting_workflow.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/poe_tasks.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/ruff.toml +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/sonar-project.properties +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/tools/check_notebook_outputs.py +0 -0
- {openstef-4.1.2 → openstef-4.2.2}/tools/reuse-fix.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: openstef
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.2.2
|
|
4
4
|
Summary: Open Short Term Energy forecasting library
|
|
5
5
|
Project-URL: Documentation, https://openstef.github.io/openstef/index.html
|
|
6
6
|
Project-URL: Homepage, https://lfenergy.org/projects/openstef/
|
|
@@ -16,26 +16,26 @@ Classifier: Programming Language :: Python :: 3 :: Only
|
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.13
|
|
18
18
|
Requires-Python: <4.0,>=3.12
|
|
19
|
-
Requires-Dist: openstef-core==4.
|
|
20
|
-
Requires-Dist: openstef-models[xgb-cpu]==4.
|
|
19
|
+
Requires-Dist: openstef-core==4.2.2
|
|
20
|
+
Requires-Dist: openstef-models[xgb-cpu]==4.2.2
|
|
21
21
|
Provides-Extra: all
|
|
22
|
-
Requires-Dist: openstef-beam[all]==4.
|
|
23
|
-
Requires-Dist: openstef-core==4.
|
|
24
|
-
Requires-Dist: openstef-foundation-models[cpu]==4.
|
|
25
|
-
Requires-Dist: openstef-meta==4.
|
|
26
|
-
Requires-Dist: openstef-models[xgb-cpu]==4.
|
|
22
|
+
Requires-Dist: openstef-beam[all]==4.2.2; extra == 'all'
|
|
23
|
+
Requires-Dist: openstef-core==4.2.2; extra == 'all'
|
|
24
|
+
Requires-Dist: openstef-foundation-models[cpu]==4.2.2; extra == 'all'
|
|
25
|
+
Requires-Dist: openstef-meta==4.2.2; extra == 'all'
|
|
26
|
+
Requires-Dist: openstef-models[xgb-cpu]==4.2.2; extra == 'all'
|
|
27
27
|
Provides-Extra: beam
|
|
28
28
|
Requires-Dist: huggingface-hub>=0.35.3; extra == 'beam'
|
|
29
|
-
Requires-Dist: openstef-beam==4.
|
|
29
|
+
Requires-Dist: openstef-beam==4.2.2; extra == 'beam'
|
|
30
30
|
Provides-Extra: core
|
|
31
|
-
Requires-Dist: openstef-core==4.
|
|
31
|
+
Requires-Dist: openstef-core==4.2.2; extra == 'core'
|
|
32
32
|
Provides-Extra: foundation-models
|
|
33
|
-
Requires-Dist: openstef-foundation-models[cpu]==4.
|
|
33
|
+
Requires-Dist: openstef-foundation-models[cpu]==4.2.2; extra == 'foundation-models'
|
|
34
34
|
Provides-Extra: meta
|
|
35
|
-
Requires-Dist: openstef-meta==4.
|
|
35
|
+
Requires-Dist: openstef-meta==4.2.2; extra == 'meta'
|
|
36
36
|
Provides-Extra: models
|
|
37
|
-
Requires-Dist: openstef-meta==4.
|
|
38
|
-
Requires-Dist: openstef-models[xgb-cpu]==4.
|
|
37
|
+
Requires-Dist: openstef-meta==4.2.2; extra == 'models'
|
|
38
|
+
Requires-Dist: openstef-models[xgb-cpu]==4.2.2; extra == 'models'
|
|
39
39
|
Description-Content-Type: text/markdown
|
|
40
40
|
|
|
41
41
|
<!--
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2026 Contributors to the OpenSTEF project <openstef@lfenergy.org>
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: MPL-2.0
|
|
4
|
+
|
|
5
|
+
# docs/automation.yml — last-match-wins mode rules
|
|
6
|
+
#
|
|
7
|
+
# Determines how the pipeline treats each docs file.
|
|
8
|
+
# Rules are evaluated in order; the LAST matching rule wins.
|
|
9
|
+
#
|
|
10
|
+
# Modes:
|
|
11
|
+
# manual — never touch (human-owned pages: index, api, contribute)
|
|
12
|
+
# edit — patch on relevant changes (existing content-rich pages)
|
|
13
|
+
# regenerate — always rebuild from scratch (requires a brief in pages.yml)
|
|
14
|
+
|
|
15
|
+
rules:
|
|
16
|
+
# Default: all RST and Markdown files are editable
|
|
17
|
+
- pattern: "**/*.rst"
|
|
18
|
+
mode: edit
|
|
19
|
+
- pattern: "**/*.md"
|
|
20
|
+
mode: edit
|
|
21
|
+
|
|
22
|
+
# README is explicitly governed — change mode here to edit/regenerate/manual
|
|
23
|
+
- pattern: "README.md"
|
|
24
|
+
mode: edit
|
|
25
|
+
|
|
26
|
+
# Notebooks are human-authored — never touch
|
|
27
|
+
- pattern: "**/*.ipynb"
|
|
28
|
+
mode: manual
|
|
29
|
+
|
|
30
|
+
# API reference is auto-generated separately — never touch
|
|
31
|
+
- pattern: "docs/source/api/**"
|
|
32
|
+
mode: manual
|
|
33
|
+
|
|
34
|
+
# Contribute section is human-owned — never touch
|
|
35
|
+
- pattern: "docs/source/contribute/**"
|
|
36
|
+
mode: manual
|
|
37
|
+
|
|
38
|
+
# Top-level index is human-owned — never touch
|
|
39
|
+
- pattern: "docs/source/index.rst"
|
|
40
|
+
mode: manual
|
|
41
|
+
|
|
42
|
+
# Sphinx templates are internal build files — never touch
|
|
43
|
+
- pattern: "docs/source/_templates/**"
|
|
44
|
+
mode: manual
|
|
45
|
+
|
|
46
|
+
# Section index stubs are navigation scaffolding — human-owned
|
|
47
|
+
- pattern: "docs/source/**/index.rst"
|
|
48
|
+
mode: manual
|
|
49
|
+
|
|
50
|
+
# Project meta pages (license, maintainers, committee, etc.) are static — never touch
|
|
51
|
+
- pattern: "docs/source/project/**"
|
|
52
|
+
mode: manual
|
|
53
|
+
|
|
54
|
+
# # Installation guide is always regenerated from pyproject.toml
|
|
55
|
+
# - pattern: "docs/source/user_guide/getting_started/installation.rst"
|
|
56
|
+
# mode: regenerate
|
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: 2026 Contributors to the OpenSTEF project <openstef@lfenergy.org>
|
|
2
|
+
#
|
|
3
|
+
# SPDX-License-Identifier: MPL-2.0
|
|
4
|
+
|
|
5
|
+
# docs/pages.yml — catalog of pages the pipeline writes
|
|
6
|
+
#
|
|
7
|
+
# Every page the pipeline is allowed to create or edit must be listed here.
|
|
8
|
+
# Pages not listed are treated as untracked (soft flag, not blocked).
|
|
9
|
+
# Pages listed as manual in automation.yml are excluded automatically.
|
|
10
|
+
#
|
|
11
|
+
# Fields:
|
|
12
|
+
# path — repo-relative path to the RST file
|
|
13
|
+
# title — canonical page title (used to normalise the RST heading)
|
|
14
|
+
# page_type — sub_page | section_index | standalone (default: sub_page)
|
|
15
|
+
# purpose — what this page should explain (passed to LLM as generation brief)
|
|
16
|
+
# diagrams — list of Mermaid diagram descriptions to auto-generate (optional)
|
|
17
|
+
|
|
18
|
+
pages:
|
|
19
|
+
# ── Repository README ──────────────────────────────────────────────────────
|
|
20
|
+
|
|
21
|
+
- path: README.md
|
|
22
|
+
title: OpenSTEF
|
|
23
|
+
page_type: standalone
|
|
24
|
+
purpose: >
|
|
25
|
+
The front door of the project. Keep it short and scannable (under two
|
|
26
|
+
minutes to read). Required sections in order: (1) Logo at the top.
|
|
27
|
+
(2) Status badges (build, license, version). (3) What is OpenSTEF —
|
|
28
|
+
max 4 sentences, link to the OpenSTEF website. (4) Brief monorepo
|
|
29
|
+
overview — how the repository is structured. (5) How to Install —
|
|
30
|
+
copy-paste-ready pip commands. (6) Examples — link to the examples/
|
|
31
|
+
folder. (7) License — state license, link to LICENSE file. (8)
|
|
32
|
+
Contributing — link to .github contributing pages, do not duplicate
|
|
33
|
+
inline. (9) Citations — BibTeX entry or DOI link. (10) Contact —
|
|
34
|
+
link to support page. Design principle: link out, do not duplicate
|
|
35
|
+
content that lives in the docs.
|
|
36
|
+
|
|
37
|
+
# ── Getting Started ────────────────────────────────────────────────────────
|
|
38
|
+
|
|
39
|
+
- path: docs/source/user_guide/getting_started/migration.rst
|
|
40
|
+
title: Migrating from OpenSTEF 3
|
|
41
|
+
page_type: sub_page
|
|
42
|
+
purpose: >
|
|
43
|
+
Help v3 users understand what changed and how to adapt their code.
|
|
44
|
+
v3 was a single `openstef` package with pipeline/task API plus `openstef-dbc`
|
|
45
|
+
for database access. v4 is a multi-package workspace that separates concerns.
|
|
46
|
+
Cover: (1) Why the split happened: core types vs models vs evaluation vs
|
|
47
|
+
orchestration are now independent. (2) Configuration: `PredictionJobDataClass`
|
|
48
|
+
became `ForecastingWorkflowConfig` (a full Pydantic model). Show a before/after
|
|
49
|
+
snippet. (3) Data: raw DataFrames became `TimeSeriesDataset`. (4) API: the
|
|
50
|
+
pipeline/task pattern became Workflows where users own I/O. (5) Database
|
|
51
|
+
connector: `openstef-dbc` has no v4 equivalent — users write their own data
|
|
52
|
+
integration. (6) Model type renames: 'xgb' → 'xgboost', 'lgb' → 'lgbm'.
|
|
53
|
+
(7) A migration checklist. Package mapping: openstef (core ML) → openstef-models,
|
|
54
|
+
openstef (data classes) → openstef-core, openstef (evaluation) → openstef-beam,
|
|
55
|
+
(new) → openstef-meta, openstef-dbc → no equivalent.
|
|
56
|
+
diagrams:
|
|
57
|
+
- >
|
|
58
|
+
Left-to-right graph showing v3 monolith splitting into v4 packages.
|
|
59
|
+
The v3 'openstef' box has arrows to openstef-models (Core ML), openstef-core
|
|
60
|
+
(Data Classes), openstef-beam (Evaluation), openstef-meta (New).
|
|
61
|
+
A separate 'openstef-dbc' box has an arrow to 'Your own I/O layer'
|
|
62
|
+
with a note 'v4 does not include a database connector'.
|
|
63
|
+
|
|
64
|
+
- path: docs/source/user_guide/getting_started/installation.rst
|
|
65
|
+
title: Installation
|
|
66
|
+
page_type: sub_page
|
|
67
|
+
purpose: >
|
|
68
|
+
Step-by-step installation guide generated from pyproject.toml.
|
|
69
|
+
pip commands for each package (openstef-core, openstef-models, openstef-beam,
|
|
70
|
+
openstef-meta), optional extras, and a quick-start snippet showing the
|
|
71
|
+
minimal working import. Note the meta-package openstef installs all sub-packages.
|
|
72
|
+
|
|
73
|
+
- path: docs/source/user_guide/getting_started/quick_start_tutorial.ipynb
|
|
74
|
+
title: Quick Start
|
|
75
|
+
page_type: sub_page
|
|
76
|
+
purpose: >
|
|
77
|
+
Train your first model and make a forecast in under 5 minutes.
|
|
78
|
+
This notebook is human-authored and managed manually — listed here
|
|
79
|
+
so neighbouring pages know it exists and can reference it without
|
|
80
|
+
duplicating its content.
|
|
81
|
+
|
|
82
|
+
- path: docs/source/user_guide/getting_started/foundation_model_forecasting_quickstart.ipynb
|
|
83
|
+
title: Foundation Model Quickstart
|
|
84
|
+
page_type: sub_page
|
|
85
|
+
purpose: >
|
|
86
|
+
Forecast with a pretrained foundation model in a few minutes — no
|
|
87
|
+
per-target training required. This notebook is human-authored and
|
|
88
|
+
managed manually — listed here so neighbouring pages know it exists
|
|
89
|
+
and can reference it without duplicating its content.
|
|
90
|
+
|
|
91
|
+
# ── Concepts ───────────────────────────────────────────────────────────────
|
|
92
|
+
|
|
93
|
+
- path: docs/source/user_guide/concepts/intro_to_energy_forecasting.rst
|
|
94
|
+
title: Intro to Energy Forecasting
|
|
95
|
+
page_type: sub_page
|
|
96
|
+
purpose: >
|
|
97
|
+
Context for the rest of the docs. What is short-term load forecasting and
|
|
98
|
+
why do grid operators need it? What input signals matter (load history, weather
|
|
99
|
+
forecasts, calendar features, market prices) and why each contributes. What
|
|
100
|
+
'horizon' means (15 minutes to 48 hours) and why accuracy degrades with lead time.
|
|
101
|
+
Practical difficulties: unpredictable consumers, aggregation level effects,
|
|
102
|
+
capacity changes. Keep short and focused. No diagram needed.
|
|
103
|
+
|
|
104
|
+
- path: docs/source/user_guide/concepts/models.rst
|
|
105
|
+
title: Models
|
|
106
|
+
page_type: sub_page
|
|
107
|
+
purpose: >
|
|
108
|
+
Overview of available models with selection guidance. Explain the containment
|
|
109
|
+
hierarchy: Forecaster (pure ML predictor) → ForecastingModel (adds pre/post
|
|
110
|
+
TransformPipelines) → CustomForecastingWorkflow (adds callbacks, model_id,
|
|
111
|
+
lifecycle) → Presets (opinionated factories via ForecastingWorkflowConfig).
|
|
112
|
+
Then a model-selection comparison table: Ensemble (preferred, tree+linear),
|
|
113
|
+
GBLinear (congestion management, extrapolation), LGBMLinear (balance),
|
|
114
|
+
XGBoost/LGBM (general-purpose), MedianForecaster (stable loads baseline),
|
|
115
|
+
FlatlinerForecaster and ConstantQuantileForecaster (fallback). All support
|
|
116
|
+
quantile forecasting. Link to API reference per model.
|
|
117
|
+
diagrams:
|
|
118
|
+
- >
|
|
119
|
+
Nested boxes showing containment (innermost to outermost): Forecaster
|
|
120
|
+
(pure ML predictor, e.g., XGBoostForecaster) is innermost.
|
|
121
|
+
ForecastingModel wraps Forecaster and adds preprocessing and postprocessing
|
|
122
|
+
TransformPipelines. CustomForecastingWorkflow wraps ForecastingModel and
|
|
123
|
+
adds callbacks, model_id, and lifecycle management. Outside, Presets
|
|
124
|
+
(ForecastingWorkflowConfig + create_forecasting_workflow factory) construct
|
|
125
|
+
a fully-wired Workflow from configuration. No data flow arrows — this is
|
|
126
|
+
purely about what-contains-what.
|
|
127
|
+
|
|
128
|
+
- path: docs/source/user_guide/concepts/metalearning.rst
|
|
129
|
+
title: Metalearning
|
|
130
|
+
page_type: sub_page
|
|
131
|
+
purpose: >
|
|
132
|
+
Explain metalearning as implemented in openstef-meta. Key insight: ensemble
|
|
133
|
+
models combine complementary strengths — tree-based models capture non-linear
|
|
134
|
+
patterns but cannot extrapolate; linear models can extrapolate but not learn
|
|
135
|
+
non-linear patterns. Architecture: EnsembleForecastingModel fans out to N
|
|
136
|
+
parallel per-forecaster pipelines. ForecastCombiner produces the final forecast.
|
|
137
|
+
Two strategies: WeightsCombiner (LGBM classifier per quantile, soft probability
|
|
138
|
+
weighting) and StackingCombiner (meta-regressor takes base predictions as input).
|
|
139
|
+
Link to ensemble_forecasting tutorial.
|
|
140
|
+
diagrams:
|
|
141
|
+
- >
|
|
142
|
+
EnsembleForecastingModel prediction flow: TimeSeriesDataset → shared
|
|
143
|
+
preprocessing TransformPipeline → fans out to N parallel paths
|
|
144
|
+
[per-forecaster preprocessing → Forecaster] for each base model →
|
|
145
|
+
merge into EnsembleForecastDataset → ForecastCombiner →
|
|
146
|
+
final ForecastDataset.
|
|
147
|
+
- >
|
|
148
|
+
Two formula-style diagrams side by side. WeightsCombiner: base predictions →
|
|
149
|
+
LGBM classifier per quantile → predict_proba → soft probability weights →
|
|
150
|
+
weighted average = final forecast. StackingCombiner: base predictions per
|
|
151
|
+
quantile (as input features) → meta-regressor → direct final quantile
|
|
152
|
+
prediction.
|
|
153
|
+
|
|
154
|
+
- path: docs/source/user_guide/concepts/beam.rst
|
|
155
|
+
title: BEAM
|
|
156
|
+
page_type: sub_page
|
|
157
|
+
purpose: >
|
|
158
|
+
Explain BEAM (Backtesting, Evaluation, Analysis, and Metrics). BenchmarkPipeline
|
|
159
|
+
orchestrates sequential stages per target: (A) BacktestPipeline steps through
|
|
160
|
+
data via BacktestEventGenerator, using BacktestForecasterMixin with
|
|
161
|
+
RestrictedHorizonVersionedTimeSeries to prevent data leakage. Output:
|
|
162
|
+
predictions as TimeSeriesDataset. (B) EvaluationPipeline segments by
|
|
163
|
+
available_at x lead_time x time_windows, computes configurable metrics.
|
|
164
|
+
Output: EvaluationReport. (C) AnalysisPipeline produces HTML visualisations.
|
|
165
|
+
BenchmarkStorage persists outputs. Value: fair, reproducible model comparison.
|
|
166
|
+
Link to backtesting guide for practical usage.
|
|
167
|
+
diagrams:
|
|
168
|
+
- >
|
|
169
|
+
BenchmarkPipeline as outer orchestrator containing the sequential per-target
|
|
170
|
+
flow: TargetProvider feeds data → ForecasterFactory creates BacktestForecasterMixin
|
|
171
|
+
→ BacktestPipeline produces predictions (TimeSeriesDataset) →
|
|
172
|
+
EvaluationPipeline produces EvaluationReport → AnalysisPipeline produces
|
|
173
|
+
visualisations (AnalysisOutput). BenchmarkStorage persists after each stage.
|
|
174
|
+
|
|
175
|
+
- path: docs/source/user_guide/concepts/component_splitting.rst
|
|
176
|
+
title: Component Splitting
|
|
177
|
+
page_type: sub_page
|
|
178
|
+
purpose: >
|
|
179
|
+
Explain what component splitting is and why operators need it. A grid operator
|
|
180
|
+
sees aggregated load but needs to understand the constituents (solar, wind,
|
|
181
|
+
base industrial, residential). Component splitting decomposes an aggregated
|
|
182
|
+
forecast into constituents using known profiles or ratios. Critical: this does
|
|
183
|
+
NOT improve forecast accuracy — the forecast is made on aggregated load first,
|
|
184
|
+
then decomposed. Use cases: grid planning, congestion analysis, understanding
|
|
185
|
+
generation mix, regulatory reporting.
|
|
186
|
+
|
|
187
|
+
- path: docs/source/user_guide/concepts/foundation_models.rst
|
|
188
|
+
title: Foundation Models
|
|
189
|
+
page_type: sub_page
|
|
190
|
+
purpose: >
|
|
191
|
+
Zero-shot pretrained forecasting on an ONNX runtime — no per-target
|
|
192
|
+
training required. Explain what a foundation model is in the OpenSTEF
|
|
193
|
+
context, how the ONNX runtime is used for inference, what fields control model
|
|
194
|
+
selection and execution providers (CPU, CUDA, CoreML), and how batching works
|
|
195
|
+
across multiple targets. Cover the tradeoff vs trained models: faster
|
|
196
|
+
deployment, no training data needed, but less adaptation to local patterns.
|
|
197
|
+
|
|
198
|
+
# ── Guides ─────────────────────────────────────────────────────────────────
|
|
199
|
+
|
|
200
|
+
- path: docs/source/user_guide/guides/forecasting.rst
|
|
201
|
+
title: Forecasting
|
|
202
|
+
page_type: sub_page
|
|
203
|
+
purpose: >
|
|
204
|
+
The central how-to-forecast page — architecture and design decisions, not
|
|
205
|
+
runnable code (tutorials cover that). What OpenSTEF needs: datetime-indexed
|
|
206
|
+
data with a 'load' column, weather features, declared sample_interval.
|
|
207
|
+
What it returns: ForecastDataset with point forecast and optional quantiles.
|
|
208
|
+
Recommend Presets for production, Workflow for research. Data requirements:
|
|
209
|
+
expected columns, time zones, sample_interval. Fit/predict lifecycle at
|
|
210
|
+
Workflow level: fit (preprocessing → forecaster.fit → callbacks),
|
|
211
|
+
predict (preprocessing → forecaster.predict → postprocessing → callbacks).
|
|
212
|
+
Model reuse: if a recent model exists in storage, workflow skips retraining.
|
|
213
|
+
Link to forecasting_quickstart and custom_pipeline tutorials.
|
|
214
|
+
diagrams:
|
|
215
|
+
- >
|
|
216
|
+
Two parallel flows. Fit path: Historical TimeSeriesDataset →
|
|
217
|
+
preprocessing TransformPipeline (validation → feature engineering →
|
|
218
|
+
standardisation) → ForecastInputDataset → Forecaster.fit() → trained model
|
|
219
|
+
→ callbacks (MLflow storage). Predict path: New TimeSeriesDataset → same
|
|
220
|
+
preprocessing → ForecastInputDataset → Forecaster.predict() → raw
|
|
221
|
+
ForecastDataset → postprocessing TransformPipeline (quantile sorting,
|
|
222
|
+
confidence intervals) → final ForecastDataset → callbacks (logging).
|
|
223
|
+
Workflow wraps both paths.
|
|
224
|
+
|
|
225
|
+
- path: docs/source/user_guide/guides/feature_engineering_tutorial.ipynb
|
|
226
|
+
title: Feature Engineering
|
|
227
|
+
page_type: sub_page
|
|
228
|
+
purpose: >
|
|
229
|
+
Create, select, and manage features for your models.
|
|
230
|
+
|
|
231
|
+
- path: docs/source/user_guide/guides/datasets_tutorial.ipynb
|
|
232
|
+
title: Datasets
|
|
233
|
+
page_type: sub_page
|
|
234
|
+
purpose: >
|
|
235
|
+
Prepare and validate input data for training and prediction.
|
|
236
|
+
|
|
237
|
+
- path: docs/source/user_guide/guides/probabilistic_forecasting.rst
|
|
238
|
+
title: Probabilistic Forecasting
|
|
239
|
+
page_type: sub_page
|
|
240
|
+
purpose: >
|
|
241
|
+
Why: a point forecast is not enough — grid operators need uncertainty ranges
|
|
242
|
+
for reserve planning, congestion management, and market bidding. How OpenSTEF
|
|
243
|
+
provides this: all models support quantile forecasting via the quantiles field
|
|
244
|
+
on ForecastingWorkflowConfig. XGBoost uses pinball loss, GBLinear uses
|
|
245
|
+
reg:quantileerror, LGBM uses MultiQuantileRegressor. Isotonic calibration:
|
|
246
|
+
IsotonicQuantileCalibrator is a postprocessing Transform that maps predicted
|
|
247
|
+
values to observed quantile levels using sklearn IsotonicRegression, restoring
|
|
248
|
+
proper coverage while enforcing monotonicity. Link to quantile_calibration
|
|
249
|
+
tutorial and IsotonicQuantileCalibrator API reference.
|
|
250
|
+
|
|
251
|
+
- path: docs/source/user_guide/guides/reliability_fallback.rst
|
|
252
|
+
title: Reliability and Fallback
|
|
253
|
+
page_type: sub_page
|
|
254
|
+
purpose: >
|
|
255
|
+
Operational reality: data feeds fail — meters flatline, weather APIs go down,
|
|
256
|
+
data arrives late. The system must detect and respond gracefully. Validation
|
|
257
|
+
transforms: FlatlineChecker (configurable via flatliner_threshold,
|
|
258
|
+
detect_non_zero_flatliner), CompletenessChecker (completeness_threshold).
|
|
259
|
+
Fallback strategies: FlatlinerForecaster (constant prediction on flatline),
|
|
260
|
+
ConstantQuantileForecaster (minimal forecast on low data availability,
|
|
261
|
+
configured via completeness_threshold_target_constant_quantile). All configured
|
|
262
|
+
in ForecastingWorkflowConfig; the preset factory switches automatically based
|
|
263
|
+
on data quality checks.
|
|
264
|
+
|
|
265
|
+
- path: docs/source/user_guide/guides/backtesting.ipynb
|
|
266
|
+
title: Backtesting
|
|
267
|
+
page_type: sub_page
|
|
268
|
+
purpose: >
|
|
269
|
+
Practical guide: how to evaluate your model on historical data before trusting
|
|
270
|
+
it in production. Configure BacktestForecasterMixin (RestrictedHorizonVersionedTimeSeries
|
|
271
|
+
prevents lookahead). Run BacktestPipeline stepping through history via
|
|
272
|
+
BacktestEventGenerator (BacktestConfig with predict_interval and train_interval).
|
|
273
|
+
Then EvaluationPipeline segments by available_at x lead_time x time_windows.
|
|
274
|
+
Interpreting results: per-window vs aggregated metrics, what good looks like
|
|
275
|
+
for energy forecasting. Link to BEAM concept page and backtesting_quickstart
|
|
276
|
+
tutorial.
|
|
277
|
+
|
|
278
|
+
- path: docs/source/user_guide/guides/deployment.rst
|
|
279
|
+
title: Deployment
|
|
280
|
+
page_type: sub_page
|
|
281
|
+
purpose: >
|
|
282
|
+
How the library works in different deployment contexts without prescribing a
|
|
283
|
+
single approach. OpenSTEF is a pure ML library with no built-in scheduling,
|
|
284
|
+
orchestration, or data storage. Three common strategies: (1) Scheduled notebooks
|
|
285
|
+
(training + forecasting notebooks with data integration, run on Sagemaker /
|
|
286
|
+
Databricks). (2) DAG-based orchestration (Airflow, Dagster, Prefect — separate
|
|
287
|
+
data integration, training, prediction stages). (3) Queued execution (per-location
|
|
288
|
+
tasks dispatched to workers, optimised for large-scale operations). Data sources:
|
|
289
|
+
link Open-Meteo for weather (free, global), KNMI for NL-specific weather. Model
|
|
290
|
+
storage: MLflow model registry via MLFlowStorageCallback handles versioning and
|
|
291
|
+
reuse. Storage is pluggable — users implement custom callbacks. OpenSTEF is
|
|
292
|
+
modular: custom callbacks, storage backends, and integration layers are
|
|
293
|
+
encouraged.
|
|
294
|
+
|
|
295
|
+
- path: docs/source/user_guide/guides/foundation_model_forecasting.ipynb
|
|
296
|
+
title: Foundation Model Forecasting
|
|
297
|
+
page_type: sub_page
|
|
298
|
+
purpose: >
|
|
299
|
+
Checkpoints, execution providers for your hardware, batching, and
|
|
300
|
+
backtesting with a pretrained foundation model.
|
|
301
|
+
|
|
302
|
+
- path: docs/source/user_guide/logging.rst
|
|
303
|
+
title: Logging
|
|
304
|
+
page_type: sub_page
|
|
305
|
+
purpose: >
|
|
306
|
+
How to configure logging for OpenSTEF applications. Cover the default
|
|
307
|
+
NullHandler behaviour, the logger naming hierarchy and what each level
|
|
308
|
+
emits, common configuration patterns for development and production
|
|
309
|
+
(including structured JSON output), and troubleshooting tips for missing
|
|
310
|
+
or excessive output.
|
|
@@ -7,7 +7,7 @@ requires = [ "hatchling" ]
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "openstef-beam"
|
|
10
|
-
version = "4.
|
|
10
|
+
version = "4.2.2"
|
|
11
11
|
description = "Backtesting, Evaluation, Analysis and Metrics (BEAM) library for OpenSTEF"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
keywords = [ "energy", "forecasting", "machinelearning" ]
|
|
@@ -7,7 +7,7 @@ requires = [ "hatchling" ]
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "openstef-core"
|
|
10
|
-
version = "4.
|
|
10
|
+
version = "4.2.2"
|
|
11
11
|
description = "Core functionality for OpenSTEF, a framework for short-term energy forecasting."
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
keywords = [ "energy", "forecasting", "machinelearning" ]
|
|
@@ -7,7 +7,7 @@ requires = [ "hatchling" ]
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "openstef-foundation-models"
|
|
10
|
-
version = "4.
|
|
10
|
+
version = "4.2.2"
|
|
11
11
|
description = "Foundation model support for OpenSTEF"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
keywords = [ "energy", "forecasting", "foundationmodels", "machinelearning", "onnx" ]
|
|
@@ -111,6 +111,12 @@ class LGBMHyperParams(HyperParams):
|
|
|
111
111
|
description="Fraction of features used when constructing each tree. Range: (0,1]",
|
|
112
112
|
)
|
|
113
113
|
|
|
114
|
+
# Early Stopping
|
|
115
|
+
early_stopping_rounds: int | None = Field(
|
|
116
|
+
default=None,
|
|
117
|
+
description="Training will stop if performance doesn't improve for this many rounds. Requires validation data.",
|
|
118
|
+
)
|
|
119
|
+
|
|
114
120
|
@classmethod
|
|
115
121
|
def forecaster_class(cls) -> "type[LGBMForecaster]":
|
|
116
122
|
"""Create a LightGBM forecaster instance from this configuration.
|
|
@@ -184,10 +190,6 @@ class LGBMForecaster(Forecaster, ExplainableForecaster, ContributionsMixin):
|
|
|
184
190
|
alias="seed",
|
|
185
191
|
description="Random seed for reproducibility.",
|
|
186
192
|
)
|
|
187
|
-
early_stopping_rounds: int | None = Field(
|
|
188
|
-
default=None,
|
|
189
|
-
description="Training stops if performance doesn't improve for this many rounds.",
|
|
190
|
-
)
|
|
191
193
|
|
|
192
194
|
_lgbm_model: MultiQuantileRegressor = PrivateAttr()
|
|
193
195
|
|
|
@@ -229,7 +231,7 @@ class LGBMForecaster(Forecaster, ExplainableForecaster, ContributionsMixin):
|
|
|
229
231
|
"colsample_bytree": self.hyperparams.colsample_bytree,
|
|
230
232
|
# General parameters
|
|
231
233
|
"random_state": self.random_state,
|
|
232
|
-
"early_stopping_rounds": self.early_stopping_rounds,
|
|
234
|
+
"early_stopping_rounds": self.hyperparams.early_stopping_rounds,
|
|
233
235
|
"verbosity": self.verbosity,
|
|
234
236
|
"n_jobs": self.n_jobs,
|
|
235
237
|
}
|
|
@@ -111,6 +111,12 @@ class LGBMLinearHyperParams(HyperParams):
|
|
|
111
111
|
description="Fraction of features used when constructing each tree. Range: (0,1]",
|
|
112
112
|
)
|
|
113
113
|
|
|
114
|
+
# Early Stopping
|
|
115
|
+
early_stopping_rounds: int | None = Field(
|
|
116
|
+
default=None,
|
|
117
|
+
description="Training will stop if performance doesn't improve for this many rounds. Requires validation data.",
|
|
118
|
+
)
|
|
119
|
+
|
|
114
120
|
@classmethod
|
|
115
121
|
def forecaster_class(cls) -> "type[LGBMLinearForecaster]":
|
|
116
122
|
"""Get forecaster class for these hyperparams.
|
|
@@ -185,10 +191,6 @@ class LGBMLinearForecaster(Forecaster, ExplainableForecaster, ContributionsMixin
|
|
|
185
191
|
alias="seed",
|
|
186
192
|
description="Random seed for reproducibility.",
|
|
187
193
|
)
|
|
188
|
-
early_stopping_rounds: int | None = Field(
|
|
189
|
-
default=None,
|
|
190
|
-
description="Training stops if performance doesn't improve for this many rounds.",
|
|
191
|
-
)
|
|
192
194
|
|
|
193
195
|
_lgbmlinear_model: MultiQuantileRegressor = PrivateAttr()
|
|
194
196
|
|
|
@@ -230,7 +232,7 @@ class LGBMLinearForecaster(Forecaster, ExplainableForecaster, ContributionsMixin
|
|
|
230
232
|
"colsample_bytree": self.hyperparams.colsample_bytree,
|
|
231
233
|
# General parameters
|
|
232
234
|
"random_state": self.random_state,
|
|
233
|
-
"early_stopping_rounds": self.early_stopping_rounds,
|
|
235
|
+
"early_stopping_rounds": self.hyperparams.early_stopping_rounds,
|
|
234
236
|
"verbosity": self.verbosity,
|
|
235
237
|
"n_jobs": self.n_jobs,
|
|
236
238
|
}
|
|
@@ -84,6 +84,9 @@ class MultiQuantileRegressor(BaseEstimator, RegressorMixin):
|
|
|
84
84
|
"""
|
|
85
85
|
# Pass model-specific eval arguments
|
|
86
86
|
kwargs = {}
|
|
87
|
+
|
|
88
|
+
x_array = np.asarray(X)
|
|
89
|
+
|
|
87
90
|
for model in self._models:
|
|
88
91
|
# Check if early stopping is supported
|
|
89
92
|
# Check that eval_set is supported
|
|
@@ -91,21 +94,20 @@ class MultiQuantileRegressor(BaseEstimator, RegressorMixin):
|
|
|
91
94
|
model.set_params(early_stopping_rounds=None)
|
|
92
95
|
|
|
93
96
|
if eval_set is not None and self.learner_eval_sample_weight_param is not None:
|
|
97
|
+
kwargs["eval_set"] = [
|
|
98
|
+
(x_array if eval_x is X else np.asarray(eval_x), eval_y) for eval_x, eval_y in eval_set
|
|
99
|
+
]
|
|
94
100
|
kwargs[self.learner_eval_sample_weight_param] = eval_sample_weight
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
model.set_params(early_stopping_rounds=self.hyperparams["early_stopping_rounds"])
|
|
101
|
+
if "early_stopping_rounds" in self.hyperparams:
|
|
102
|
+
model.set_params(early_stopping_rounds=self.hyperparams["early_stopping_rounds"])
|
|
98
103
|
|
|
99
104
|
if feature_name:
|
|
100
105
|
self.model_feature_names = feature_name
|
|
101
106
|
else:
|
|
102
107
|
self.model_feature_names = []
|
|
103
108
|
|
|
104
|
-
if eval_sample_weight is not None and self.learner_eval_sample_weight_param:
|
|
105
|
-
kwargs[self.learner_eval_sample_weight_param] = eval_sample_weight
|
|
106
|
-
|
|
107
109
|
model.fit( # type: ignore
|
|
108
|
-
X=
|
|
110
|
+
X=x_array,
|
|
109
111
|
y=y,
|
|
110
112
|
sample_weight=sample_weight,
|
|
111
113
|
**kwargs,
|
|
@@ -117,3 +117,28 @@ def test_is_fitted_true_after_fit(dataset: tuple[pd.DataFrame, pd.Series], basel
|
|
|
117
117
|
|
|
118
118
|
# Assert
|
|
119
119
|
assert model.is_fitted
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
def test_fit_forwards_eval_set_for_early_stopping_lgbm(dataset: tuple[pd.DataFrame, pd.Series]):
|
|
123
|
+
# Arrange
|
|
124
|
+
quantiles = [Quantile(0.1), Quantile(0.5), Quantile(0.9)]
|
|
125
|
+
early_stopping_rounds = 3
|
|
126
|
+
X, y = dataset
|
|
127
|
+
y = y.to_numpy()
|
|
128
|
+
X_train, y_train = X.iloc[:80], y[:80] # noqa: N806
|
|
129
|
+
X_val, y_val = X.iloc[80:], y[80:] # noqa: N806
|
|
130
|
+
model = MultiQuantileRegressor(
|
|
131
|
+
base_learner=LGBMRegressor,
|
|
132
|
+
quantile_param="alpha",
|
|
133
|
+
quantiles=quantiles,
|
|
134
|
+
hyperparams={"objective": "quantile", "n_estimators": 10, "early_stopping_rounds": early_stopping_rounds},
|
|
135
|
+
)
|
|
136
|
+
|
|
137
|
+
# Act
|
|
138
|
+
model.fit(X_train, y_train, eval_set=[(X_train, y_train), (X_val, y_val)])
|
|
139
|
+
|
|
140
|
+
# Assert
|
|
141
|
+
for estimator in model.models:
|
|
142
|
+
assert isinstance(estimator, LGBMRegressor)
|
|
143
|
+
assert estimator.get_params()["early_stopping_rounds"] == early_stopping_rounds
|
|
144
|
+
assert estimator.evals_result_
|
|
@@ -7,7 +7,7 @@ requires = [ "hatchling" ]
|
|
|
7
7
|
|
|
8
8
|
[project]
|
|
9
9
|
name = "openstef"
|
|
10
|
-
version = "4.
|
|
10
|
+
version = "4.2.2"
|
|
11
11
|
description = "Open Short Term Energy forecasting library"
|
|
12
12
|
readme = "README.md"
|
|
13
13
|
keywords = [ "energy", "forecasting", "machinelearning" ]
|
|
@@ -24,32 +24,32 @@ classifiers = [
|
|
|
24
24
|
"Programming Language :: Python :: 3.13",
|
|
25
25
|
]
|
|
26
26
|
dependencies = [
|
|
27
|
-
"openstef-core==4.
|
|
28
|
-
"openstef-models[xgb-cpu]==4.
|
|
27
|
+
"openstef-core==4.2.2",
|
|
28
|
+
"openstef-models[xgb-cpu]==4.2.2",
|
|
29
29
|
]
|
|
30
30
|
optional-dependencies.all = [
|
|
31
|
-
"openstef-beam[all]==4.
|
|
32
|
-
"openstef-core==4.
|
|
33
|
-
"openstef-foundation-models[cpu]==4.
|
|
34
|
-
"openstef-meta==4.
|
|
35
|
-
"openstef-models[xgb-cpu]==4.
|
|
31
|
+
"openstef-beam[all]==4.2.2",
|
|
32
|
+
"openstef-core==4.2.2",
|
|
33
|
+
"openstef-foundation-models[cpu]==4.2.2",
|
|
34
|
+
"openstef-meta==4.2.2",
|
|
35
|
+
"openstef-models[xgb-cpu]==4.2.2",
|
|
36
36
|
]
|
|
37
37
|
optional-dependencies.beam = [
|
|
38
38
|
"huggingface-hub>=0.35.3",
|
|
39
|
-
"openstef-beam==4.
|
|
39
|
+
"openstef-beam==4.2.2",
|
|
40
40
|
]
|
|
41
41
|
optional-dependencies.foundation-models = [
|
|
42
|
-
"openstef-foundation-models[cpu]==4.
|
|
42
|
+
"openstef-foundation-models[cpu]==4.2.2",
|
|
43
43
|
]
|
|
44
44
|
optional-dependencies.meta = [
|
|
45
|
-
"openstef-meta==4.
|
|
45
|
+
"openstef-meta==4.2.2",
|
|
46
46
|
]
|
|
47
47
|
optional-dependencies.models = [
|
|
48
|
-
"openstef-meta==4.
|
|
49
|
-
"openstef-models[xgb-cpu]==4.
|
|
48
|
+
"openstef-meta==4.2.2",
|
|
49
|
+
"openstef-models[xgb-cpu]==4.2.2",
|
|
50
50
|
]
|
|
51
51
|
optional-dependencies.core = [
|
|
52
|
-
"openstef-core==4.
|
|
52
|
+
"openstef-core==4.2.2",
|
|
53
53
|
]
|
|
54
54
|
urls.Documentation = "https://openstef.github.io/openstef/index.html"
|
|
55
55
|
urls.Homepage = "https://lfenergy.org/projects/openstef/"
|