ins-pricing 0.2.9__py3-none-any.whl → 0.3.1__py3-none-any.whl

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 (27) hide show
  1. ins_pricing/CHANGELOG.md +93 -0
  2. ins_pricing/README.md +11 -0
  3. ins_pricing/cli/Explain_entry.py +50 -48
  4. ins_pricing/cli/bayesopt_entry_runner.py +699 -569
  5. ins_pricing/cli/utils/evaluation_context.py +320 -0
  6. ins_pricing/cli/utils/import_resolver.py +350 -0
  7. ins_pricing/modelling/core/bayesopt/PHASE2_REFACTORING_SUMMARY.md +449 -0
  8. ins_pricing/modelling/core/bayesopt/PHASE3_REFACTORING_SUMMARY.md +406 -0
  9. ins_pricing/modelling/core/bayesopt/REFACTORING_SUMMARY.md +247 -0
  10. ins_pricing/modelling/core/bayesopt/config_components.py +351 -0
  11. ins_pricing/modelling/core/bayesopt/config_preprocess.py +3 -4
  12. ins_pricing/modelling/core/bayesopt/core.py +153 -94
  13. ins_pricing/modelling/core/bayesopt/models/model_ft_trainer.py +122 -34
  14. ins_pricing/modelling/core/bayesopt/trainers/trainer_base.py +298 -142
  15. ins_pricing/modelling/core/bayesopt/utils/__init__.py +86 -0
  16. ins_pricing/modelling/core/bayesopt/utils/constants.py +183 -0
  17. ins_pricing/modelling/core/bayesopt/utils/distributed_utils.py +186 -0
  18. ins_pricing/modelling/core/bayesopt/utils/io_utils.py +126 -0
  19. ins_pricing/modelling/core/bayesopt/utils/metrics_and_devices.py +540 -0
  20. ins_pricing/modelling/core/bayesopt/utils/torch_trainer_mixin.py +591 -0
  21. ins_pricing/modelling/core/bayesopt/utils.py +98 -1496
  22. ins_pricing/modelling/core/bayesopt/utils_backup.py +1503 -0
  23. ins_pricing/setup.py +1 -1
  24. {ins_pricing-0.2.9.dist-info → ins_pricing-0.3.1.dist-info}/METADATA +14 -1
  25. {ins_pricing-0.2.9.dist-info → ins_pricing-0.3.1.dist-info}/RECORD +27 -14
  26. {ins_pricing-0.2.9.dist-info → ins_pricing-0.3.1.dist-info}/WHEEL +0 -0
  27. {ins_pricing-0.2.9.dist-info → ins_pricing-0.3.1.dist-info}/top_level.txt +0 -0
ins_pricing/setup.py CHANGED
@@ -3,7 +3,7 @@ from setuptools import setup, find_packages
3
3
 
4
4
  setup(
5
5
  name="ins_pricing",
6
- version="0.2.9",
6
+ version="0.3.1",
7
7
  description="Reusable modelling, pricing, governance, and reporting utilities.",
8
8
  author="meishi125478",
9
9
  license="Proprietary",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ins_pricing
3
- Version: 0.2.9
3
+ Version: 0.3.1
4
4
  Summary: Reusable modelling, pricing, governance, and reporting utilities.
5
5
  Author: meishi125478
6
6
  License: Proprietary
@@ -139,6 +139,19 @@ pip install ins_pricing[plotting] # Visualization
139
139
  pip install ins_pricing[gnn] # Graph neural networks
140
140
  ```
141
141
 
142
+ #### Multi-platform & GPU installation notes
143
+
144
+ - **PyTorch (CPU/GPU/MPS)**: Install the correct PyTorch build for your platform/GPU first (CUDA on
145
+ Linux/Windows, ROCm on supported AMD platforms, or MPS on Apple Silicon). Then install the
146
+ optional extras you need (e.g., `bayesopt`, `explain`, or `gnn`). This avoids pip pulling a
147
+ mismatched wheel.
148
+ - **Torch Geometric (GNN)**: `torch-geometric` often requires platform-specific wheels (e.g.,
149
+ `torch-scatter`, `torch-sparse`). Follow the official PyG installation instructions for your
150
+ CUDA/ROCm/CPU environment, then install `ins_pricing[gnn]`.
151
+ - **Multi-GPU**: Training code will use CUDA when available and can enable multi-GPU via
152
+ `torch.distributed`/`DataParallel` where supported. On Windows, CUDA DDP is not supported and will
153
+ fall back to single-GPU or DataParallel where possible.
154
+
142
155
  ### Requirements
143
156
 
144
157
  - Python >= 3.9
@@ -1,20 +1,22 @@
1
- ins_pricing/CHANGELOG.md,sha256=Z423KtXu_4_cL0T2C947K8F5hHjulRvoc3lRjH5nCVw,7618
2
- ins_pricing/README.md,sha256=pMOO1cU06oBfvm5d8gvAsQsJr9bfb6AKdpXlrx0AAxw,2727
1
+ ins_pricing/CHANGELOG.md,sha256=5fgGpaLI3kc_JuV3it0yNgMATst5fWEKuNT121Djea8,11633
2
+ ins_pricing/README.md,sha256=W4V2xtzM6pyQzwJPvWP7cNn-We9rxM8xrxRlBVQwoY8,3399
3
3
  ins_pricing/RELEASE_NOTES_0.2.8.md,sha256=KIJzk1jbZbZPKjwnkPSDHO_2Ipv3SP3CzCNDdf07jI0,9331
4
4
  ins_pricing/__init__.py,sha256=46j1wCdLVrgrofeBwKl-3NXTxzjbTv-w3KjW-dyKGiY,2622
5
5
  ins_pricing/exceptions.py,sha256=5fZavPV4zNJ7wPC75L215KkHXX9pRrfDAYZOdSKJMGo,4778
6
- ins_pricing/setup.py,sha256=YXo6D3Tjgo6DwXI2SOufrvgYbHY2oCnT2dStGzA5Fuc,1702
6
+ ins_pricing/setup.py,sha256=ehvh_bSMMpl0uerZQMZXU-NKSYgV9dlDEFvGej2Hrq0,1702
7
7
  ins_pricing/cli/BayesOpt_entry.py,sha256=X3AiNQQh5ARcjVMM2vOKWPYPDIId40n_RPZA76pTGl4,558
8
8
  ins_pricing/cli/BayesOpt_incremental.py,sha256=_Klr5vvNoq_TbgwrH_T3f0a6cHmA9iVJMViiji6ahJY,35927
9
9
  ins_pricing/cli/Explain_Run.py,sha256=gEPQjqHiXyXlCTKjUzwSvbAn5_h74ABgb_sEGs-YHVE,664
10
- ins_pricing/cli/Explain_entry.py,sha256=PP6j4uQspmettCk21lhh9L9jurDwZfWXGxS2EBUZpMs,23191
10
+ ins_pricing/cli/Explain_entry.py,sha256=xS23x31qRvXqy2Wvo21wbkxmPRLHy77aZbtjY-J59NA,23570
11
11
  ins_pricing/cli/Pricing_Run.py,sha256=qZribQ_ku4NK4oIvlrLJdM-jyyKtIUoCbbvo8Wh_RQ4,711
12
12
  ins_pricing/cli/__init__.py,sha256=F296f1J_tBPv33lDJQ6LaN_CPwMJTMtOuTsMof0dr2o,50
13
- ins_pricing/cli/bayesopt_entry_runner.py,sha256=GIbvR-793BMfDXDQztfHZnHS7r01XZTh76lVtfrB1H4,51586
13
+ ins_pricing/cli/bayesopt_entry_runner.py,sha256=Cl5_uw_nHxkRESUW_OLjSJaHQMfiXdbitttN7ZS-tVM,53841
14
14
  ins_pricing/cli/watchdog_run.py,sha256=ehUkN9VqsQkxc6YC_WLanU6Pu-ers-nvPEtCaJ9UsgY,6188
15
15
  ins_pricing/cli/utils/__init__.py,sha256=u3kt1B27OiuOEgw6PQN-fNs9vNiAjdPyybsRQsZkM_I,54
16
16
  ins_pricing/cli/utils/cli_common.py,sha256=CgMnN_0NQQt7Bh5RjClOydz0LzU2TBmIOsFa3KxYQOQ,8254
17
17
  ins_pricing/cli/utils/cli_config.py,sha256=TC8fR1XdQIbaojbeac7dESj7TmCKSfpZTbLvJrkJLEY,13247
18
+ ins_pricing/cli/utils/evaluation_context.py,sha256=0zuDOcVzkWiuj4HyAT0psaAfEbSqpDXEGXSjxztHY6E,9485
19
+ ins_pricing/cli/utils/import_resolver.py,sha256=-1pvBQsB22vEAlx0x1-siERY1NgRCVxww7CbQ6u1A8s,11573
18
20
  ins_pricing/cli/utils/notebook_utils.py,sha256=qffnR84JVDjcsesWjGwnmJ4gyNhW0WhROnvISnWTT1s,11987
19
21
  ins_pricing/cli/utils/run_logging.py,sha256=V3Wh2EV6c1Mo0QTvfe4hl2J4LOR6bdQsT210o__YBWk,3677
20
22
  ins_pricing/docs/modelling/BayesOpt_USAGE.md,sha256=kPhaIhRSS4SkbIYjaJ1f3dVfXWqNIWKi0BgUU5QQEqc,40560
@@ -29,24 +31,35 @@ ins_pricing/modelling/__init__.py,sha256=0tiXRE3rAwSxHT0dSaosWf_vGd7FpRA_kHW6dcl
29
31
  ins_pricing/modelling/core/BayesOpt.py,sha256=i2tB3c6EeucjKAsHyicGDNU7DVVCTihg-TgSoM1y18E,3332
30
32
  ins_pricing/modelling/core/__init__.py,sha256=bF5OWfK_mfg5P2oz2jid3MGi9uA13fpqKK-DbPkuci0,54
31
33
  ins_pricing/modelling/core/evaluation.py,sha256=wEMWdzs12vPnDo5t183ORMDA6APuc5g6g9Uyfd6GVi8,3905
34
+ ins_pricing/modelling/core/bayesopt/PHASE2_REFACTORING_SUMMARY.md,sha256=x8890HLvIZ7q2N0AdYwL1_8lBUl6vClZ9SoEj-BskuQ,11835
35
+ ins_pricing/modelling/core/bayesopt/PHASE3_REFACTORING_SUMMARY.md,sha256=B8ZEzaLesU454OaR10Tg50es7t30UB9pxF6GabbNbj0,11804
36
+ ins_pricing/modelling/core/bayesopt/REFACTORING_SUMMARY.md,sha256=hJZKXe9-bBGJVN_5c5l8nHQ1X7NK4BbeE-uXQoH0rAM,7479
32
37
  ins_pricing/modelling/core/bayesopt/__init__.py,sha256=5WGZeQI9B1P9OXQUgq7XogcjAbv2oXnp076bW16e_ss,1955
33
- ins_pricing/modelling/core/bayesopt/config_preprocess.py,sha256=2UpkcmhEk2V3uLv2aIjLfAy8yriiZrwPcgruZf04dDw,20742
34
- ins_pricing/modelling/core/bayesopt/core.py,sha256=ewChb0s-on3ZWIcbCpJTJAaeHeo28nBzsFyvQ-zWHio,40926
38
+ ins_pricing/modelling/core/bayesopt/config_components.py,sha256=OjRyM1EuSXL9_3THD1nGLRsioJs7lO_ZKVZDkUA3LX8,12156
39
+ ins_pricing/modelling/core/bayesopt/config_preprocess.py,sha256=5oFbesUPiTeqEVY_j6c9Ake_7K9CWcwSutcUWo6EuxY,20665
40
+ ins_pricing/modelling/core/bayesopt/core.py,sha256=tRgCso6--QL-Orj8oFqLgsFj6wV5bR5Rx21iffKNWVY,43873
35
41
  ins_pricing/modelling/core/bayesopt/model_explain_mixin.py,sha256=jCk1zPpwgwBBCndaq-A0_cQnc4RHueh2p5cAuE9ArTo,11620
36
42
  ins_pricing/modelling/core/bayesopt/model_plotting_mixin.py,sha256=lD0rUvWV4eWatmTzMrmAUm2Flj8uAOa3R9S2JyYV94k,21807
37
- ins_pricing/modelling/core/bayesopt/utils.py,sha256=5RKizpR3j6KwR87WqqaXPtgjQXWPW4vM75sIkx38SSM,57924
43
+ ins_pricing/modelling/core/bayesopt/utils.py,sha256=fTDqBHCxsOVte0QhPqnMw8vkefIvkppufIRkt9iHqjU,2852
44
+ ins_pricing/modelling/core/bayesopt/utils_backup.py,sha256=5RKizpR3j6KwR87WqqaXPtgjQXWPW4vM75sIkx38SSM,57924
38
45
  ins_pricing/modelling/core/bayesopt/models/__init__.py,sha256=vFFCkGnO6rm50TbxR6QekKKQjq-NW4UFwog6fng8-p8,700
39
46
  ins_pricing/modelling/core/bayesopt/models/model_ft_components.py,sha256=0I0NiDf1D3cOhTRQwatsNTw9Julmxv5v3HZV8fTrvcQ,10989
40
- ins_pricing/modelling/core/bayesopt/models/model_ft_trainer.py,sha256=IJoBOYHo5uzLEpo4DZj1PsPXojmCKbMaoRudhB9IGBY,36531
47
+ ins_pricing/modelling/core/bayesopt/models/model_ft_trainer.py,sha256=srBsI4KmijRC6s4G-XlVI9ahzjc2yquQxgdeICP1_4A,39253
41
48
  ins_pricing/modelling/core/bayesopt/models/model_gnn.py,sha256=l_oIgLeTJndfYR8lpZbqUq0MKH6wReE2z1B8n1E0P8k,28095
42
49
  ins_pricing/modelling/core/bayesopt/models/model_resn.py,sha256=hAU77GcGC1mHbOOLfZ9vC5nhUhHlaPZmXjrkH3BrjKc,17128
43
50
  ins_pricing/modelling/core/bayesopt/trainers/__init__.py,sha256=ODYKjT-v4IDxu4ohGLCXY8r1-pMME9LAaNx6pmj5_38,481
44
- ins_pricing/modelling/core/bayesopt/trainers/trainer_base.py,sha256=BGAd45gUPhiR0saikqxNXXsQqKcnDuVYO7k-kPo6nHQ,51095
51
+ ins_pricing/modelling/core/bayesopt/trainers/trainer_base.py,sha256=xBo05nBYnV4crY7vQbugFkttABGKOh1qdpWILW8fazs,54961
45
52
  ins_pricing/modelling/core/bayesopt/trainers/trainer_ft.py,sha256=jkafhvfEqIV_PYJ90e8kkOXVGvFpCKS0CRSKLvQ_elQ,34730
46
53
  ins_pricing/modelling/core/bayesopt/trainers/trainer_glm.py,sha256=wVU6F2Ubyu3IxP6K-epjkUTGOE8gKPCdpVxGW-JP9rM,7806
47
54
  ins_pricing/modelling/core/bayesopt/trainers/trainer_gnn.py,sha256=OChMeBELl_XWYZmZcpKq5BLY-srtTgempk4L5D0I7ys,13453
48
55
  ins_pricing/modelling/core/bayesopt/trainers/trainer_resn.py,sha256=y9KyKoUHLiKoXiX6XP4QGu0MKX5LyvlmSAT5tgn826M,11140
49
56
  ins_pricing/modelling/core/bayesopt/trainers/trainer_xgb.py,sha256=Ha3PtkB7AedlnRwWEfIBTEAPO69LY5lnjUrdGNL-yas,13783
57
+ ins_pricing/modelling/core/bayesopt/utils/__init__.py,sha256=dbf4DrWOH4rABOuaZdBF7drYOBH5prjvM0TexT6DYyg,1911
58
+ ins_pricing/modelling/core/bayesopt/utils/constants.py,sha256=0ihYxGlJ8tIElYvkhIDe5FfJShegvu29WZ_Xvfqa0iE,5790
59
+ ins_pricing/modelling/core/bayesopt/utils/distributed_utils.py,sha256=cu01dHyYE5EREbmtJgCHSH6z5mQIqajz8_-oWZV6zVc,5787
60
+ ins_pricing/modelling/core/bayesopt/utils/io_utils.py,sha256=vXDlAc_taCG2joxnC6wu0jVYA76UhRbX9OT_5z_im-E,3857
61
+ ins_pricing/modelling/core/bayesopt/utils/metrics_and_devices.py,sha256=irrsE-oDDpOd82QyW9uxfDueF8RFKkUHME4wyWr7vRI,20533
62
+ ins_pricing/modelling/core/bayesopt/utils/torch_trainer_mixin.py,sha256=_ELpu5dxucq5luO_cqe_kxT7oMIVXd63pb4EZ7fWlUQ,24465
50
63
  ins_pricing/modelling/explain/__init__.py,sha256=CPoGzGu8TTO3FOXjxoXC13VkuIDCf3YTH6L3BqJq3Ok,1171
51
64
  ins_pricing/modelling/explain/gradients.py,sha256=9TqCws_p49nFxVMcjVxe4KCZ7frezeL0uV_LCdoM5yo,11088
52
65
  ins_pricing/modelling/explain/metrics.py,sha256=K_xOY7ZrHWhbJ79RNB7eXN3VXeTe8vq68ZLH2BlZufA,5389
@@ -106,7 +119,7 @@ ins_pricing/utils/metrics.py,sha256=zhKYgXgki8RDscjP_GO2lEgzrtMIZCqOX_aLpQzdw6k,
106
119
  ins_pricing/utils/paths.py,sha256=o_tBiclFvBci4cYg9WANwKPxrMcglEdOjDP-EZgGjdQ,8749
107
120
  ins_pricing/utils/profiling.py,sha256=kmbykHLcYywlZxAf_aVU8HXID3zOvUcBoO5Q58AijhA,11132
108
121
  ins_pricing/utils/validation.py,sha256=4Tw9VUJPk0N-WO3YUqZP-xXRl1Xpubkm0vi3WzzZrv4,13348
109
- ins_pricing-0.2.9.dist-info/METADATA,sha256=uQLsM3-erzbt48qF7nt7_Orf18CF-aKkk4_5B4_yeMk,5397
110
- ins_pricing-0.2.9.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
111
- ins_pricing-0.2.9.dist-info/top_level.txt,sha256=haZuNQpHKNBEPZx3NjLnHp8pV3I_J9QG8-HyJn00FA0,12
112
- ins_pricing-0.2.9.dist-info/RECORD,,
122
+ ins_pricing-0.3.1.dist-info/METADATA,sha256=6zht9zTZNt7svuM5rDbLAvawAACRb24YlvswuaC9Ab0,6263
123
+ ins_pricing-0.3.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
124
+ ins_pricing-0.3.1.dist-info/top_level.txt,sha256=haZuNQpHKNBEPZx3NjLnHp8pV3I_J9QG8-HyJn00FA0,12
125
+ ins_pricing-0.3.1.dist-info/RECORD,,