naeural-client 2.6.33__tar.gz → 2.6.35__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 (154) hide show
  1. {naeural_client-2.6.33 → naeural_client-2.6.35}/PKG-INFO +1 -1
  2. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/_ver.py +1 -1
  3. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/generic_session.py +9 -2
  4. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/plugin_template.py +34 -0
  5. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/base_logger.py +4 -1
  6. {naeural_client-2.6.33 → naeural_client-2.6.35}/pyproject.toml +1 -1
  7. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/auth/auth.py +1 -1
  8. naeural_client-2.6.35/xperimental/ora/ora_check.py +46 -0
  9. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/test1.py +20 -6
  10. {naeural_client-2.6.33 → naeural_client-2.6.35}/.devcontainer/Dockerfile +0 -0
  11. {naeural_client-2.6.33 → naeural_client-2.6.35}/.devcontainer/devcontainer.json +0 -0
  12. {naeural_client-2.6.33 → naeural_client-2.6.35}/.gitattributes +0 -0
  13. {naeural_client-2.6.33 → naeural_client-2.6.35}/.github/workflows/python-publish.yml +0 -0
  14. {naeural_client-2.6.33 → naeural_client-2.6.35}/.gitignore +0 -0
  15. {naeural_client-2.6.33 → naeural_client-2.6.35}/.vscode/launch.json +0 -0
  16. {naeural_client-2.6.33 → naeural_client-2.6.35}/LICENSE +0 -0
  17. {naeural_client-2.6.33 → naeural_client-2.6.35}/README.md +0 -0
  18. {naeural_client-2.6.33 → naeural_client-2.6.35}/TODOs.md +0 -0
  19. {naeural_client-2.6.33 → naeural_client-2.6.35}/__init__.py +0 -0
  20. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/__init__.py +0 -0
  21. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/__init__.py +0 -0
  22. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/distributed_custom_code_presets.py +0 -0
  23. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/instance.py +0 -0
  24. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/payload/__init__.py +0 -0
  25. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/payload/payload.py +0 -0
  26. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/pipeline.py +0 -0
  27. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/responses.py +0 -0
  28. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/transaction.py +0 -0
  29. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base/webapp_pipeline.py +0 -0
  30. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/base_decentra_object.py +0 -0
  31. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/bc/__init__.py +0 -0
  32. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/bc/base.py +0 -0
  33. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/bc/chain.py +0 -0
  34. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/bc/ec.py +0 -0
  35. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/certs/__init__.py +0 -0
  36. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
  37. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/cli/README.md +0 -0
  38. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/cli/cli.py +0 -0
  39. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/cli/cli_commands.py +0 -0
  40. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/cli/nodes.py +0 -0
  41. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/cli/oracles.py +0 -0
  42. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/code_cheker/__init__.py +0 -0
  43. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/code_cheker/base.py +0 -0
  44. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/code_cheker/checker.py +0 -0
  45. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/comm/__init__.py +0 -0
  46. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/comm/amqp_wrapper.py +0 -0
  47. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/comm/mqtt_wrapper.py +0 -0
  48. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/README.md +0 -0
  49. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/__init__.py +0 -0
  50. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/apps.py +0 -0
  51. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/base.py +0 -0
  52. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/comms.py +0 -0
  53. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/environment.py +0 -0
  54. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/formatter.py +0 -0
  55. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/heartbeat.py +0 -0
  56. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/misc.py +0 -0
  57. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/const/payload.py +0 -0
  58. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/__init__.py +0 -0
  59. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/__init__.py +0 -0
  60. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
  61. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
  62. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
  63. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
  64. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
  65. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
  66. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/default/session/mqtt_session.py +0 -0
  67. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/__init__.py +0 -0
  68. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/base/__init__.py +0 -0
  69. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/base/base_formatter.py +0 -0
  70. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/default/__init__.py +0 -0
  71. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/default/a_dummy.py +0 -0
  72. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/default/aixp1.py +0 -0
  73. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/default/default.py +0 -0
  74. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
  75. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/__init__.py +0 -0
  76. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/__init__.py +0 -0
  77. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
  78. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
  79. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
  80. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
  81. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
  82. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
  83. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
  84. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
  85. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
  86. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
  87. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
  88. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
  89. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/small_logger.py +0 -0
  90. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/tzlocal/__init__.py +0 -0
  91. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/tzlocal/unix.py +0 -0
  92. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/tzlocal/utils.py +0 -0
  93. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/tzlocal/win32.py +0 -0
  94. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
  95. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/plugins_manager_mixin.py +0 -0
  96. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/utils/__init__.py +0 -0
  97. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/utils/comm_utils.py +0 -0
  98. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/utils/config.py +0 -0
  99. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/utils/dotenv.py +0 -0
  100. {naeural_client-2.6.33 → naeural_client-2.6.35}/naeural_client/utils/oracle_sync/multiple_requests.py +0 -0
  101. {naeural_client-2.6.33 → naeural_client-2.6.35}/nepctl.MD +0 -0
  102. {naeural_client-2.6.33 → naeural_client-2.6.35}/requirements.txt +0 -0
  103. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/.example_env +0 -0
  104. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
  105. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
  106. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/_example_pk_sdk.pem +0 -0
  107. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex01_part1_connect.py +0 -0
  108. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex01_part2_filter.py +0 -0
  109. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex01_part3_adv_filter.py +0 -0
  110. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex02_deploy_end_to_end.ipynb +0 -0
  111. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex02_deploy_existing_plugin.py +0 -0
  112. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
  113. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
  114. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
  115. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
  116. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
  117. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex08_custom_webapi.py +0 -0
  118. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
  119. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex10_telegram_echo_bot.py +0 -0
  120. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
  121. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex12_telegram_smart_bot.py +0 -0
  122. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
  123. {naeural_client-2.6.33 → naeural_client-2.6.35}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
  124. {naeural_client-2.6.33 → naeural_client-2.6.35}/winrun.bat +0 -0
  125. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/.example_env +0 -0
  126. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/_archive/test.py +0 -0
  127. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/_tutorials/3. simple_real_time_custom_code.py +0 -0
  128. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/_tutorials/4. real_time_custom_code_2.py +0 -0
  129. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/_tutorials/8. chatbot.py +0 -0
  130. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/check_local_keys/check1.py +0 -0
  131. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/decentralized/chain_dist_example.py +0 -0
  132. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
  133. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
  134. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/enc_dec/enc_dec_test.py +0 -0
  135. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/enc_dec/payload_tester.py +0 -0
  136. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/eth/eth_sign.py +0 -0
  137. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/eth/info.md +0 -0
  138. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/eth/sign.py +0 -0
  139. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/multi-enc-dec/multi_test1.py +0 -0
  140. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/multi-enc-dec/multi_test2.py +0 -0
  141. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/names/gen1.py +0 -0
  142. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/names/gen2.py +0 -0
  143. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/names/gen3.py +0 -0
  144. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/sign/simple_payload_checker.py +0 -0
  145. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/sign/test_sign1.py +0 -0
  146. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/sign/test_sign2.py +0 -0
  147. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/utils/get_documentation.py +0 -0
  148. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/README.md +0 -0
  149. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/attach_example.py +0 -0
  150. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/ex1.py +0 -0
  151. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/hello.py +0 -0
  152. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/remote_exec.py +0 -0
  153. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/various/save_images.py +0 -0
  154. {naeural_client-2.6.33 → naeural_client-2.6.35}/xperimental/wl/wl_add.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: naeural_client
3
- Version: 2.6.33
3
+ Version: 2.6.35
4
4
  Summary: `naeural_client` is the Python SDK required for client app development for the Naeural Edge Protocol Edge Protocol framework
5
5
  Project-URL: Homepage, https://github.com/NaeuralEdgeProtocol/naeural_client
6
6
  Project-URL: Bug Tracker, https://github.com/NaeuralEdgeProtocol/naeural_client/issues
@@ -1,4 +1,4 @@
1
- __VER__ = "2.6.33"
1
+ __VER__ = "2.6.35"
2
2
 
3
3
  if __name__ == "__main__":
4
4
  with open("pyproject.toml", "rt") as fd:
@@ -2183,12 +2183,14 @@ class GenericSession(BaseDecentrAIObject):
2183
2183
  self,
2184
2184
  *,
2185
2185
  node,
2186
- name,
2186
+ name="Ratio1 Web App",
2187
2187
  signature=PLUGIN_SIGNATURES.CUSTOM_WEBAPI_01,
2188
2188
  ngrok_edge_label=None,
2189
2189
  endpoints=None,
2190
2190
  use_ngrok=True,
2191
2191
  extra_debug=False,
2192
+ summary="Ratio1 WebApp created via SDK",
2193
+ description=None,
2192
2194
  **kwargs
2193
2195
  ):
2194
2196
  """
@@ -2216,10 +2218,12 @@ class GenericSession(BaseDecentrAIObject):
2216
2218
  """
2217
2219
 
2218
2220
  ngrok_use_api = True
2221
+
2222
+ pipeline_name = name.replace(" ", "_").lower()
2219
2223
 
2220
2224
  pipeline: WebappPipeline = self.create_pipeline(
2221
2225
  node=node,
2222
- name=name,
2226
+ name=pipeline_name,
2223
2227
  pipeline_type=WebappPipeline,
2224
2228
  extra_debug=extra_debug,
2225
2229
  # default TYPE is "Void"
@@ -2231,6 +2235,9 @@ class GenericSession(BaseDecentrAIObject):
2231
2235
  use_ngrok=use_ngrok,
2232
2236
  ngrok_edge_label=ngrok_edge_label,
2233
2237
  ngrok_use_api=ngrok_use_api,
2238
+ api_title=name,
2239
+ api_summary=summary,
2240
+ api_description=description,
2234
2241
  **kwargs
2235
2242
  )
2236
2243
 
@@ -551,6 +551,40 @@ class CustomPluginTemplate:
551
551
  """
552
552
  raise NotImplementedError
553
553
 
554
+
555
+ def mlapi_timeseries_fit_predict(self, data, steps : int, **kwargs):
556
+ """
557
+ Takes a list of values and directly returns predictions using a basic AR model
558
+
559
+
560
+ Parameters
561
+ ----------
562
+ data : list
563
+ List of float values. Note there is a lower limit of 10 values per series.
564
+
565
+ steps : int
566
+ Number of prediction steps.
567
+
568
+ Returns
569
+ -------
570
+ yh : list
571
+ the `steps` predicted values.
572
+
573
+
574
+ Example
575
+ -------
576
+ ```
577
+ yh = self.mlapi_timeseries_fit_predict(
578
+ data=[0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89],
579
+ steps=3
580
+ )
581
+ result = {'preds' : yh}
582
+ ```
583
+
584
+ """
585
+ raise NotImplementedError
586
+
587
+
554
588
  @property
555
589
  def bs4(self):
556
590
  """
@@ -1687,8 +1687,11 @@ class BaseLogger(object):
1687
1687
  def now_str_fmt(fmt=None):
1688
1688
  if fmt is None:
1689
1689
  fmt = '%Y-%m-%d %H:%M:%S.%f'
1690
-
1691
1690
  return dt.now().strftime(fmt)
1691
+
1692
+ @staticmethod
1693
+ def str_to_bool(s):
1694
+ return str(s).lower() in ['true', 't', 'yes', 'y', '1', 'on']
1692
1695
 
1693
1696
  def get_error_info(self, return_err_val=False):
1694
1697
  """
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "naeural_client"
7
- version = "2.6.33"
7
+ version = "2.6.35"
8
8
  authors = [
9
9
  { name="Andrei Ionut Damian", email="andrei.damian@me.com" },
10
10
  { name="Cristan Bleotiu", email="cristibleotiu@gmail.com" },
@@ -16,7 +16,7 @@ if __name__ == '__main__' :
16
16
  }
17
17
  )
18
18
 
19
- for _ in range(2):
19
+ for _ in range(4):
20
20
  d = eng1.dauth_autocomplete(
21
21
  add_env=False,
22
22
  debug=True,
@@ -0,0 +1,46 @@
1
+ import requests
2
+ import json
3
+ import pandas as pd
4
+
5
+ if __name__ == "__main__":
6
+ N = 4
7
+
8
+ # the provided url, note: if this does not return json directly, it might need adjustment
9
+ url = "https://naeural-oracle.ngrok.app/active_nodes_list"
10
+ server_alias_counts = {}
11
+
12
+ for i in range(N):
13
+ try:
14
+ response = requests.get(url)
15
+ response.raise_for_status()
16
+ data = response.json()
17
+ except Exception as e:
18
+ print(f"error occurred during request {i+1}: {e}")
19
+ continue
20
+
21
+ # extract nodes data from the json response
22
+ result = data.get("result", {})
23
+ server_alias = result.get("server_alias")
24
+ if server_alias:
25
+ server_alias_counts[server_alias] = server_alias_counts.get(server_alias, 0) + 1
26
+ nodes = result.get("nodes", {})
27
+ node_list = []
28
+ for node_addr, node_data in nodes.items():
29
+ if not isinstance(node_data, dict):
30
+ continue
31
+ eth_addr = node_data.get("eth_addr")
32
+ alias = node_data.get("alias")
33
+ node_list.append({
34
+ "Node alias": alias,
35
+ "Node ETH": eth_addr,
36
+ "Node addr": node_addr
37
+ })
38
+
39
+ # create and display the pandas dataframe for this request
40
+ df = pd.DataFrame(node_list)
41
+ print(f"\nResponse #{i+1} from {server_alias}:")
42
+ print(df)
43
+
44
+ # update the server_alias counts
45
+
46
+ print("\nserver_alias counts:", server_alias_counts)
@@ -1,15 +1,29 @@
1
1
  from naeural_client import Session, CustomPluginTemplate, PLUGIN_TYPES
2
2
 
3
-
4
-
5
- def run_predict(plugin: CustomPluginTemplate, inputs: list, nr_steps: int) -> list:
3
+ def run_predict(plugin: CustomPluginTemplate, inputs: list[int], nr_steps: int) -> list:
4
+ """
5
+ Here we use the Ratio1 build in basic ML internal API
6
+ """
6
7
  preds = plugin.basic_ts_fit_predict(inputs, nr_steps)
7
- return preds
8
+ # now we apply some simple heuristic to get the lower and upper bounds
9
+ lower_bound = []
10
+ upper_bound = []
11
+ heuristic_factor = 0.1
12
+ for pred in preds:
13
+ lower_bound.append(int(pred - abs(pred * heuristic_factor)))
14
+ upper_bound.append(int(pred + abs(pred * heuristic_factor)))
15
+ #endfor
16
+ result = {
17
+ "predictions": [round(x,1) for x in preds],
18
+ "lower_bound": lower_bound,
19
+ "upper_bound": upper_bound
20
+ }
21
+ return result
8
22
 
9
23
 
10
24
  if __name__ == '__main__':
11
25
 
12
- session = Session()
26
+ session = Session(silent=True)
13
27
  my_node = "0xai_ApM1AbzLq1VtsLIidmvzt1Nv4Cyl5Wed0fHNMoZv9u4X"
14
28
 
15
29
  app, _ = session.create_web_app(
@@ -31,5 +45,5 @@ if __name__ == '__main__':
31
45
  session.wait(
32
46
  close_pipeline_on_timeout=True,
33
47
  close_session_on_timeout=True,
34
- seconds=60
48
+ seconds=300
35
49
  )
File without changes