oracle-ads 2.13.0__py3-none-any.whl → 2.13.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 (55) hide show
  1. ads/aqua/__init__.py +7 -1
  2. ads/aqua/app.py +24 -23
  3. ads/aqua/client/client.py +48 -11
  4. ads/aqua/common/entities.py +28 -1
  5. ads/aqua/common/enums.py +13 -7
  6. ads/aqua/common/utils.py +8 -13
  7. ads/aqua/config/container_config.py +203 -0
  8. ads/aqua/config/evaluation/evaluation_service_config.py +5 -181
  9. ads/aqua/constants.py +0 -1
  10. ads/aqua/evaluation/evaluation.py +4 -4
  11. ads/aqua/extension/base_handler.py +4 -0
  12. ads/aqua/extension/model_handler.py +19 -28
  13. ads/aqua/finetuning/finetuning.py +2 -3
  14. ads/aqua/model/entities.py +2 -3
  15. ads/aqua/model/model.py +25 -30
  16. ads/aqua/modeldeployment/deployment.py +6 -14
  17. ads/aqua/modeldeployment/entities.py +2 -2
  18. ads/aqua/server/__init__.py +4 -0
  19. ads/aqua/server/__main__.py +24 -0
  20. ads/aqua/server/app.py +47 -0
  21. ads/aqua/server/aqua_spec.yml +1291 -0
  22. ads/aqua/ui.py +5 -199
  23. ads/common/auth.py +20 -11
  24. ads/common/utils.py +91 -11
  25. ads/config.py +3 -0
  26. ads/llm/__init__.py +1 -0
  27. ads/llm/langchain/plugins/llms/oci_data_science_model_deployment_endpoint.py +32 -23
  28. ads/model/artifact_downloader.py +4 -1
  29. ads/model/common/utils.py +15 -3
  30. ads/model/datascience_model.py +339 -8
  31. ads/model/model_metadata.py +54 -14
  32. ads/model/model_version_set.py +5 -3
  33. ads/model/service/oci_datascience_model.py +477 -5
  34. ads/opctl/anomaly_detection.py +11 -0
  35. ads/opctl/forecast.py +11 -0
  36. ads/opctl/operator/common/utils.py +16 -0
  37. ads/opctl/operator/lowcode/common/data.py +5 -2
  38. ads/opctl/operator/lowcode/common/transformations.py +2 -12
  39. ads/opctl/operator/lowcode/forecast/__main__.py +5 -5
  40. ads/opctl/operator/lowcode/forecast/model/arima.py +6 -3
  41. ads/opctl/operator/lowcode/forecast/model/automlx.py +61 -31
  42. ads/opctl/operator/lowcode/forecast/model/base_model.py +66 -40
  43. ads/opctl/operator/lowcode/forecast/model/forecast_datasets.py +79 -13
  44. ads/opctl/operator/lowcode/forecast/model/neuralprophet.py +5 -2
  45. ads/opctl/operator/lowcode/forecast/model/prophet.py +28 -15
  46. ads/opctl/operator/lowcode/forecast/model_evaluator.py +13 -15
  47. ads/opctl/operator/lowcode/forecast/schema.yaml +1 -1
  48. ads/opctl/operator/lowcode/forecast/whatifserve/deployment_manager.py +7 -0
  49. ads/opctl/operator/lowcode/forecast/whatifserve/score.py +19 -11
  50. {oracle_ads-2.13.0.dist-info → oracle_ads-2.13.1.dist-info}/METADATA +18 -15
  51. {oracle_ads-2.13.0.dist-info → oracle_ads-2.13.1.dist-info}/RECORD +54 -48
  52. {oracle_ads-2.13.0.dist-info → oracle_ads-2.13.1.dist-info}/WHEEL +1 -1
  53. ads/aqua/config/evaluation/evaluation_service_model_config.py +0 -8
  54. {oracle_ads-2.13.0.dist-info → oracle_ads-2.13.1.dist-info}/entry_points.txt +0 -0
  55. {oracle_ads-2.13.0.dist-info → oracle_ads-2.13.1.dist-info/licenses}/LICENSE.txt +0 -0
ads/aqua/server/app.py ADDED
@@ -0,0 +1,47 @@
1
+ #!/usr/bin/env python
2
+
3
+ # Copyright (c) 2025 Oracle and/or its affiliates.
4
+ # Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/
5
+
6
+ import os
7
+ from logging import getLogger
8
+
9
+ import tornado.ioloop
10
+ import tornado.web
11
+
12
+ from ads.aqua.extension import __handlers__
13
+
14
+ logger = getLogger(__name__)
15
+ AQUA_PORT = "AQUA_PORT"
16
+ AQUA_HOST = "AQUA_HOST"
17
+ AQUA_PROCESS_COUNT = "AQUA_PROCESS_COUNT"
18
+ AQUA_CORS_ENABLE = "AQUA_CORS_ENABLE"
19
+
20
+ URL_PATTERN = r"/aqua/"
21
+
22
+
23
+ def prepare(self):
24
+ self.set_header("Access-Control-Allow-Origin", "*")
25
+
26
+
27
+ def make_app():
28
+ # Patch the prepare method to allow CORS request
29
+ if os.environ.get(AQUA_CORS_ENABLE, "0") == "1":
30
+ for _, handler in __handlers__:
31
+ handler.prepare = prepare
32
+ handlers = [(URL_PATTERN + url, handler) for url, handler in __handlers__]
33
+ # logger.debug(handlers)
34
+ return tornado.web.Application(handlers)
35
+
36
+
37
+ def start_server():
38
+ app = make_app()
39
+ server = tornado.httpserver.HTTPServer(app)
40
+ port = int(os.environ.get(AQUA_PORT, 8080))
41
+ host = os.environ.get(AQUA_HOST, "0.0.0.0")
42
+ processes = int(os.environ.get(AQUA_PROCESS_COUNT, 0))
43
+ server.bind(port=port, address=host)
44
+ server.start(processes)
45
+ logger.info(f"Starting the server from directory: {os.getcwd()}")
46
+ logger.info(f"Aqua API server running on http://{host}:{port}")
47
+ tornado.ioloop.IOLoop.current().start()