PVNet 4.0.5__tar.gz → 4.0.7__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.
Files changed (50) hide show
  1. {pvnet-4.0.5 → pvnet-4.0.7}/PKG-INFO +1 -1
  2. {pvnet-4.0.5 → pvnet-4.0.7}/PVNet.egg-info/PKG-INFO +1 -1
  3. pvnet-4.0.7/pvnet/__init__.py +2 -0
  4. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/base_model.py +34 -0
  5. pvnet-4.0.5/pvnet/__init__.py +0 -2
  6. {pvnet-4.0.5 → pvnet-4.0.7}/LICENSE +0 -0
  7. {pvnet-4.0.5 → pvnet-4.0.7}/MANIFEST.in +0 -0
  8. {pvnet-4.0.5 → pvnet-4.0.7}/PVNet.egg-info/SOURCES.txt +0 -0
  9. {pvnet-4.0.5 → pvnet-4.0.7}/PVNet.egg-info/dependency_links.txt +0 -0
  10. {pvnet-4.0.5 → pvnet-4.0.7}/PVNet.egg-info/requires.txt +0 -0
  11. {pvnet-4.0.5 → pvnet-4.0.7}/PVNet.egg-info/top_level.txt +0 -0
  12. {pvnet-4.0.5 → pvnet-4.0.7}/README.md +0 -0
  13. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/callbacks.py +0 -0
  14. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/data/__init__.py +0 -0
  15. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/data/base_datamodule.py +0 -0
  16. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/data/site_datamodule.py +0 -0
  17. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/data/uk_regional_datamodule.py +0 -0
  18. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/load_model.py +0 -0
  19. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/__init__.py +0 -0
  20. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/baseline/__init__.py +0 -0
  21. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/baseline/last_value.py +0 -0
  22. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/baseline/single_value.py +0 -0
  23. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/ensemble.py +0 -0
  24. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/model_cards/pv_india_model_card_template.md +0 -0
  25. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/model_cards/pv_uk_regional_model_card_template.md +0 -0
  26. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/model_cards/wind_india_model_card_template.md +0 -0
  27. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/__init__.py +0 -0
  28. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/basic_blocks.py +0 -0
  29. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/encoders/__init__.py +0 -0
  30. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/encoders/basic_blocks.py +0 -0
  31. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/encoders/encoders2d.py +0 -0
  32. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/encoders/encoders3d.py +0 -0
  33. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/encoders/encodersRNN.py +0 -0
  34. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/linear_networks/__init__.py +0 -0
  35. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/linear_networks/basic_blocks.py +0 -0
  36. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/linear_networks/networks.py +0 -0
  37. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/multimodal.py +0 -0
  38. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/multimodal_base.py +0 -0
  39. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/site_encoders/__init__.py +0 -0
  40. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/site_encoders/basic_blocks.py +0 -0
  41. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/site_encoders/encoders.py +0 -0
  42. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/multimodal/unimodal_teacher.py +0 -0
  43. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/models/utils.py +0 -0
  44. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/optimizers.py +0 -0
  45. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/training.py +0 -0
  46. {pvnet-4.0.5 → pvnet-4.0.7}/pvnet/utils.py +0 -0
  47. {pvnet-4.0.5 → pvnet-4.0.7}/pyproject.toml +0 -0
  48. {pvnet-4.0.5 → pvnet-4.0.7}/setup.cfg +0 -0
  49. {pvnet-4.0.5 → pvnet-4.0.7}/tests/test_end2end.py +0 -0
  50. {pvnet-4.0.5 → pvnet-4.0.7}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PVNet
3
- Version: 4.0.5
3
+ Version: 4.0.7
4
4
  Summary: PVNet
5
5
  Author-email: Peter Dudfield <info@openclimatefix.org>
6
6
  Description-Content-Type: text/markdown
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: PVNet
3
- Version: 4.0.5
3
+ Version: 4.0.7
4
4
  Summary: PVNet
5
5
  Author-email: Peter Dudfield <info@openclimatefix.org>
6
6
  Description-Content-Type: text/markdown
@@ -0,0 +1,2 @@
1
+ """PVNet"""
2
+ __version__ = "4.0.7"
@@ -1,4 +1,5 @@
1
1
  """Base model for all PVNet submodels"""
2
+
2
3
  import json
3
4
  import logging
4
5
  import os
@@ -250,6 +251,7 @@ class PVNetModelHubMixin(PyTorchModelHubMixin):
250
251
  wandb_repo: Optional[str] = None,
251
252
  wandb_ids: Optional[Union[list[str], str]] = None,
252
253
  card_template_path=None,
254
+ revision: str = "main",
253
255
  **kwargs,
254
256
  ) -> Optional[str]:
255
257
  """
@@ -271,6 +273,8 @@ class PVNetModelHubMixin(PyTorchModelHubMixin):
271
273
  wandb_ids: Identifier(s) of the model on wandb.
272
274
  card_template_path: Path to the HuggingFace model card template. Defaults to card in
273
275
  PVNet library if set to None.
276
+ revision (`str`, *optional*, defaults to `"main"`):
277
+ The revision to push the model to. Only used if `push_to_hub=True`.
274
278
  kwargs:
275
279
  Additional key word arguments passed along to the
276
280
  [`~ModelHubMixin._from_pretrained`] method.
@@ -335,6 +339,7 @@ class PVNetModelHubMixin(PyTorchModelHubMixin):
335
339
  repo_id=repo_id,
336
340
  repo_type="model",
337
341
  folder_path=save_directory,
342
+ revision=revision,
338
343
  )
339
344
 
340
345
  return None
@@ -718,6 +723,35 @@ class BaseModel(pl.LightningModule, PVNetModelHubMixin):
718
723
  try:
719
724
  # join together validation results, and save to wandb
720
725
  validation_results_df = pd.concat(self.validation_epoch_results)
726
+ validation_results_df["error"] = (
727
+ validation_results_df["y"] - validation_results_df["y_quantile_0.5"]
728
+ )
729
+
730
+ if isinstance(self.logger, pl.loggers.WandbLogger):
731
+ # log error distribution metrics
732
+ wandb.log(
733
+ {
734
+ "2nd_percentile_median_forecast_error": validation_results_df[
735
+ "error"
736
+ ].quantile(0.02),
737
+ "5th_percentile_median_forecast_error": validation_results_df[
738
+ "error"
739
+ ].quantile(0.05),
740
+ "95th_percentile_median_forecast_error": validation_results_df[
741
+ "error"
742
+ ].quantile(0.95),
743
+ "98th_percentile_median_forecast_error": validation_results_df[
744
+ "error"
745
+ ].quantile(0.98),
746
+ "95th_percentile_median_forecast_absolute_error": abs(
747
+ validation_results_df["error"]
748
+ ).quantile(0.95),
749
+ "98th_percentile_median_forecast_absolute_error": abs(
750
+ validation_results_df["error"]
751
+ ).quantile(0.98),
752
+ }
753
+ )
754
+
721
755
  with tempfile.TemporaryDirectory() as tempdir:
722
756
  filename = os.path.join(tempdir, f"validation_results_{self.current_epoch}.csv")
723
757
  validation_results_df.to_csv(filename, index=False)
@@ -1,2 +0,0 @@
1
- """PVNet"""
2
- __version__ = "4.0.5"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes