naeural-client 2.6.36__tar.gz → 2.6.38__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.
- {naeural_client-2.6.36 → naeural_client-2.6.38}/PKG-INFO +1 -1
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/_ver.py +1 -1
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/bc/base.py +30 -1
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/base_logger.py +18 -1
- {naeural_client-2.6.36 → naeural_client-2.6.38}/pyproject.toml +1 -1
- naeural_client-2.6.38/xperimental/_checks/cstore_check.py +71 -0
- {naeural_client-2.6.36/xperimental/ora → naeural_client-2.6.38/xperimental/_checks}/ora_check.py +2 -1
- naeural_client-2.6.38/xperimental/test1.py +49 -0
- naeural_client-2.6.36/tutorials/ex02_deploy_end_to_end.ipynb +0 -25
- naeural_client-2.6.36/xperimental/.example_env +0 -11
- naeural_client-2.6.36/xperimental/names/gen1.py +0 -58
- naeural_client-2.6.36/xperimental/names/gen2.py +0 -45
- naeural_client-2.6.36/xperimental/names/gen3.py +0 -45
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.devcontainer/Dockerfile +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.devcontainer/devcontainer.json +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.gitattributes +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.github/workflows/python-publish.yml +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.gitignore +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/.vscode/launch.json +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/LICENSE +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/README.md +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/TODOs.md +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/distributed_custom_code_presets.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/generic_session.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/instance.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/payload/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/payload/payload.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/pipeline.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/plugin_template.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/responses.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/transaction.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base/webapp_pipeline.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/base_decentra_object.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/bc/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/bc/chain.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/bc/ec.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/certs/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/certs/r9092118.ala.eu-central-1.emqxsl.com.crt +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/cli/README.md +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/cli/cli.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/cli/cli_commands.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/cli/nodes.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/cli/oracles.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/code_cheker/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/code_cheker/base.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/code_cheker/checker.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/comm/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/comm/amqp_wrapper.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/comm/mqtt_wrapper.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/README.md +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/apps.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/base.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/comms.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/environment.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/formatter.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/heartbeat.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/misc.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/const/payload.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/chain_dist_custom_job_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/custom_webapi_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/net_mon_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/telegram_basic_bot_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/telegram_conversational_bot_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/view_scene_01_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/session/mqtt_session.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/base/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/base/base_formatter.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/a_dummy.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/aixp1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/default.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/io_formatter_manager.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/class_instance_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/computer_vision_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/datetime_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/download_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/general_serialization_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/json_serialization_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/pickle_serialization_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/process_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/resource_size_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/timers_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/upload_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/utils_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/small_logger.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/unix.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/utils.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/win32.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/windows_tz.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/plugins_manager_mixin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/utils/__init__.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/utils/comm_utils.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/utils/config.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/utils/dotenv.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/utils/oracle_sync/multiple_requests.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/nepctl.MD +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/requirements.txt +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/.example_env +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/8. custom_code_fastapi_assets/index.html +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/9. code_sandbox_from_scratch_assets/index.html +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/_example_pk_sdk.pem +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex01_part1_connect.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex01_part2_filter.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex01_part3_adv_filter.py +0 -0
- /naeural_client-2.6.36/xperimental/test1.py → /naeural_client-2.6.38/tutorials/ex02_part1_deploy_webapi.py +0 -0
- /naeural_client-2.6.36/tutorials/ex02_deploy_existing_plugin.py → /naeural_client-2.6.38/tutorials/ex02_part2_deploy_plugin.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex03_custom_code_on_one_remote__example_1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex04_custom_code_on_one_remote__example_2.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex05_custom_code_on_one_remote__example_3.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex06_custom_code_on_multiple_remotes__example_1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex07_custom_code_on_multiple_remotes__example_2.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex08_custom_webapi.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex09_code_sandbox_from_scratch.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex10_telegram_echo_bot.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex11_telegram_blackjack_bot.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex12_telegram_smart_bot.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/ex13_launch_repo_based_webapp.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/video_presentation/1. hello_world.ipynb +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/winrun.bat +0 -0
- {naeural_client-2.6.36/xperimental/various → naeural_client-2.6.38/xperimental}/README.md +0 -0
- /naeural_client-2.6.36/xperimental/auth/auth.py → /naeural_client-2.6.38/xperimental/_checks/auth_check.py +0 -0
- /naeural_client-2.6.36/xperimental/check_local_keys/check1.py → /naeural_client-2.6.38/xperimental/_checks/keys_check.py +0 -0
- /naeural_client-2.6.36/xperimental/enc_dec/payload_tester.py → /naeural_client-2.6.38/xperimental/_checks/payload_check.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/decentralized/chain_dist_example.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/decentralized/chain_dist_example_initiator.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/decentralized/chain_dist_example_worker.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/enc_dec/enc_dec_test.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/eth/eth_sign.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/eth/info.md +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/eth/sign.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/multi-enc-dec/multi_test1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/multi-enc-dec/multi_test2.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/sign/simple_payload_checker.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/sign/test_sign1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/sign/test_sign2.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/utils/get_documentation.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/various/attach_example.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/various/ex1.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/various/hello.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/various/remote_exec.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/various/save_images.py +0 -0
- {naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/wl/wl_add.py +0 -0
- {naeural_client-2.6.36/xperimental → naeural_client-2.6.38/xperimental/xarchive}/_tutorials/3. simple_real_time_custom_code.py +0 -0
- {naeural_client-2.6.36/xperimental → naeural_client-2.6.38/xperimental/xarchive}/_tutorials/4. real_time_custom_code_2.py +0 -0
- {naeural_client-2.6.36/xperimental → naeural_client-2.6.38/xperimental/xarchive}/_tutorials/8. chatbot.py +0 -0
- {naeural_client-2.6.36/xperimental/_archive → naeural_client-2.6.38/xperimental/xarchive}/test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: naeural_client
|
3
|
-
Version: 2.6.
|
3
|
+
Version: 2.6.38
|
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
|
@@ -947,8 +947,29 @@ class BaseBlockEngine:
|
|
947
947
|
True if the current address is in the list.
|
948
948
|
|
949
949
|
"""
|
950
|
+
return self.address_in_list(self.address, lst_addresses)
|
951
|
+
|
952
|
+
def address_in_list(self, node_address, lst_addresses):
|
953
|
+
"""
|
954
|
+
Checks if the address is in the list of addresses
|
955
|
+
|
956
|
+
Parameters
|
957
|
+
----------
|
958
|
+
node_address : str
|
959
|
+
the address.
|
960
|
+
|
961
|
+
lst_addresses : list
|
962
|
+
the list of addresses.
|
963
|
+
|
964
|
+
Returns
|
965
|
+
-------
|
966
|
+
bool
|
967
|
+
True if the address is in the list.
|
968
|
+
|
969
|
+
"""
|
970
|
+
node_address = self._remove_prefix(node_address)
|
950
971
|
lst = [self._remove_prefix(x) for x in lst_addresses if x is not None]
|
951
|
-
return
|
972
|
+
return node_address in lst
|
952
973
|
|
953
974
|
@property
|
954
975
|
def address(self):
|
@@ -977,6 +998,14 @@ class BaseBlockEngine:
|
|
977
998
|
Returns a tuple with the allowed list (prefixed) and a list with names
|
978
999
|
"""
|
979
1000
|
return self._load_and_maybe_create_allowed(return_names=True, return_prefix=True)
|
1001
|
+
|
1002
|
+
|
1003
|
+
@property
|
1004
|
+
def whitelist_with_prefixes(self):
|
1005
|
+
"""
|
1006
|
+
Returns the allowed command senders (prefixed) for the current node
|
1007
|
+
"""
|
1008
|
+
return self._load_and_maybe_create_allowed(return_names=False, return_prefix=True)
|
980
1009
|
|
981
1010
|
|
982
1011
|
def maybe_remove_prefix(self, address):
|
@@ -460,20 +460,37 @@ class BaseLogger(object):
|
|
460
460
|
import platform
|
461
461
|
import subprocess
|
462
462
|
import re
|
463
|
+
import multiprocessing
|
463
464
|
str_system = platform.system()
|
464
465
|
if str_system == "Windows":
|
465
466
|
self.processor_platform = platform.processor()
|
467
|
+
|
466
468
|
elif str_system == "Darwin":
|
467
469
|
os.environ['PATH'] = os.environ['PATH'] + os.pathsep + '/usr/sbin'
|
468
470
|
command ="sysctl -n machdep.cpu.brand_string"
|
469
471
|
self.processor_platform = subprocess.check_output(command, shell=True).strip().decode('utf-8')
|
472
|
+
|
470
473
|
elif str_system == "Linux":
|
471
474
|
command = "cat /proc/cpuinfo"
|
472
475
|
all_info = subprocess.check_output(command, shell=True).decode().strip()
|
476
|
+
proc_platform = None
|
473
477
|
for line in all_info.split("\n"):
|
474
478
|
if "model name" in line:
|
475
|
-
|
479
|
+
proc_platform = re.sub( ".*model name.*:", "", line,1)
|
476
480
|
break
|
481
|
+
if proc_platform is None:
|
482
|
+
cores = multiprocessing.cpu_count()
|
483
|
+
proc_platform = "Unknown"
|
484
|
+
try:
|
485
|
+
lscpu_out = subprocess.check_output("lscpu", shell=True).decode().strip()
|
486
|
+
match_vendor = re.search(r"Vendor ID:\s+(.*)", lscpu_out)
|
487
|
+
if match_vendor:
|
488
|
+
proc_platform = match_vendor.group(1)
|
489
|
+
except:
|
490
|
+
pass
|
491
|
+
proc_platform = f"{proc_platform} {cores} cores"
|
492
|
+
#endif no model name
|
493
|
+
self.processor_platform = proc_platform
|
477
494
|
return
|
478
495
|
|
479
496
|
def get_processor_platform(self):
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import requests
|
2
|
+
import json
|
3
|
+
import pandas as pd
|
4
|
+
|
5
|
+
if __name__ == "__main__":
|
6
|
+
|
7
|
+
CHECK_STATUS = False
|
8
|
+
CHECK_VALUE = True
|
9
|
+
|
10
|
+
if CHECK_STATUS:
|
11
|
+
N = 4
|
12
|
+
|
13
|
+
# the provided url, note: if this does not return json directly, it might need adjustment
|
14
|
+
url_status = "https://cstore-ratio1.ngrok.app/get_status"
|
15
|
+
server_alias_counts = {}
|
16
|
+
|
17
|
+
for i in range(N):
|
18
|
+
try:
|
19
|
+
response = requests.get(url_status)
|
20
|
+
response.raise_for_status()
|
21
|
+
data = response.json()
|
22
|
+
except Exception as e:
|
23
|
+
print(f"error occurred during request {i+1}: {e}, response: {response.text}")
|
24
|
+
continue
|
25
|
+
|
26
|
+
# extract nodes data from the json response
|
27
|
+
result = data.get("result", {})
|
28
|
+
server_alias = result.get("server_alias")
|
29
|
+
ver = result.get("server_version")
|
30
|
+
if server_alias:
|
31
|
+
server_alias_counts[server_alias] = server_alias_counts.get(server_alias, 0) + 1
|
32
|
+
keys = result.get("keys", {})
|
33
|
+
# create and display the pand
|
34
|
+
print(f"Response #{i+1} from {server_alias} v{ver} with {len(keys)} keys")
|
35
|
+
# update the server_alias counts
|
36
|
+
|
37
|
+
print("\nserver_alias counts: {server_alias_counts}\n\n")
|
38
|
+
|
39
|
+
if CHECK_VALUE:
|
40
|
+
N = 2
|
41
|
+
KEY_TO_CHECK = "K3-nen-aid03-2fb8"
|
42
|
+
|
43
|
+
# the provided url, note: if this does not return json directly, it might need adjustment
|
44
|
+
url_value = "https://cstore-ratio1.ngrok.app/get_value"
|
45
|
+
server_alias_counts = {}
|
46
|
+
|
47
|
+
bearer_token = "admin"
|
48
|
+
headers = {"Authorization": f"Bearer {bearer_token}"}
|
49
|
+
|
50
|
+
params = {"cstore_key": KEY_TO_CHECK}
|
51
|
+
|
52
|
+
for i in range(N):
|
53
|
+
try:
|
54
|
+
response = requests.get(url_value, headers=headers, params=params)
|
55
|
+
response.raise_for_status()
|
56
|
+
data = response.json()
|
57
|
+
except Exception as e:
|
58
|
+
print(f"error occurred during request {i+1}: {e}, response: {response.text}")
|
59
|
+
continue
|
60
|
+
|
61
|
+
# extract nodes data from the json response
|
62
|
+
result = data.get("result", {})
|
63
|
+
server_alias = result.get("server_alias")
|
64
|
+
ver = result.get("server_version")
|
65
|
+
if server_alias:
|
66
|
+
server_alias_counts[server_alias] = server_alias_counts.get(server_alias, 0) + 1
|
67
|
+
# create and display the pand
|
68
|
+
print(f"Response #{i+1} from {server_alias} v{ver}: {result}")
|
69
|
+
# update the server_alias counts
|
70
|
+
|
71
|
+
print("\nserver_alias counts:", server_alias_counts)
|
{naeural_client-2.6.36/xperimental/ora → naeural_client-2.6.38/xperimental/_checks}/ora_check.py
RENAMED
@@ -38,7 +38,8 @@ if __name__ == "__main__":
|
|
38
38
|
|
39
39
|
# create and display the pandas dataframe for this request
|
40
40
|
df = pd.DataFrame(node_list)
|
41
|
-
|
41
|
+
ver = result.get("server_version")
|
42
|
+
print(f"\nResponse #{i+1} from {server_alias} v{ver}:")
|
42
43
|
print(df)
|
43
44
|
|
44
45
|
# update the server_alias counts
|
@@ -0,0 +1,49 @@
|
|
1
|
+
from naeural_client import Session, CustomPluginTemplate, PLUGIN_TYPES
|
2
|
+
|
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
|
+
"""
|
7
|
+
preds = plugin.basic_ts_fit_predict(inputs, nr_steps)
|
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
|
22
|
+
|
23
|
+
|
24
|
+
if __name__ == '__main__':
|
25
|
+
|
26
|
+
session = Session(silent=True)
|
27
|
+
my_node = "0xai_ApM1AbzLq1VtsLIidmvzt1Nv4Cyl5Wed0fHNMoZv9u4X"
|
28
|
+
|
29
|
+
app, _ = session.create_web_app(
|
30
|
+
node=my_node,
|
31
|
+
name="ratio1_simple_predict_webapp",
|
32
|
+
endpoints=[
|
33
|
+
{
|
34
|
+
"function": run_predict,
|
35
|
+
"method": "post",
|
36
|
+
},
|
37
|
+
]
|
38
|
+
)
|
39
|
+
try:
|
40
|
+
url = app.deploy()
|
41
|
+
print("Webapp deployed at: ", url)
|
42
|
+
except Exception as e:
|
43
|
+
print("Error deploying webapp: ", e)
|
44
|
+
|
45
|
+
session.wait(
|
46
|
+
close_pipeline_on_timeout=True,
|
47
|
+
close_session_on_timeout=True,
|
48
|
+
seconds=300
|
49
|
+
)
|
@@ -1,25 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"cells": [
|
3
|
-
{
|
4
|
-
"cell_type": "markdown",
|
5
|
-
"metadata": {},
|
6
|
-
"source": [
|
7
|
-
"# End to end deployment example"
|
8
|
-
]
|
9
|
-
},
|
10
|
-
{
|
11
|
-
"cell_type": "markdown",
|
12
|
-
"metadata": {},
|
13
|
-
"source": [
|
14
|
-
"First thing first lets"
|
15
|
-
]
|
16
|
-
}
|
17
|
-
],
|
18
|
-
"metadata": {
|
19
|
-
"language_info": {
|
20
|
-
"name": "python"
|
21
|
-
}
|
22
|
-
},
|
23
|
-
"nbformat": 4,
|
24
|
-
"nbformat_minor": 2
|
25
|
-
}
|
@@ -1,58 +0,0 @@
|
|
1
|
-
import random
|
2
|
-
import uuid
|
3
|
-
import nltk
|
4
|
-
from nltk.corpus import wordnet as wn
|
5
|
-
import re
|
6
|
-
|
7
|
-
# Ensure WordNet is downloaded
|
8
|
-
try:
|
9
|
-
wn.synsets('example')
|
10
|
-
except LookupError:
|
11
|
-
nltk.download('wordnet')
|
12
|
-
|
13
|
-
# Define a regex pattern to include only alphabetic words
|
14
|
-
word_pattern = re.compile(r'^[a-zA-Z]+$')
|
15
|
-
|
16
|
-
# Pre-fetch and clean adjective list from WordNet
|
17
|
-
adjectives = list(set(
|
18
|
-
lemma.name().lower()
|
19
|
-
for synset in wn.all_synsets(pos=wn.ADJ)
|
20
|
-
for lemma in synset.lemmas()
|
21
|
-
if word_pattern.match(lemma.name())
|
22
|
-
))
|
23
|
-
|
24
|
-
# Pre-fetch and clean noun list from WordNet
|
25
|
-
nouns = list(set(
|
26
|
-
lemma.name().lower()
|
27
|
-
for synset in wn.all_synsets(pos=wn.NOUN)
|
28
|
-
for lemma in synset.lemmas()
|
29
|
-
if word_pattern.match(lemma.name())
|
30
|
-
))
|
31
|
-
|
32
|
-
def generate_random_name():
|
33
|
-
"""
|
34
|
-
Generates a random name in the format:
|
35
|
-
'adjective-noun-xx'
|
36
|
-
|
37
|
-
Where:
|
38
|
-
- 'adjective' is a randomly selected adjective from WordNet.
|
39
|
-
- 'noun' is a randomly selected noun from WordNet.
|
40
|
-
- 'xx' is a two-character hexadecimal suffix.
|
41
|
-
|
42
|
-
Returns:
|
43
|
-
str: The generated name.
|
44
|
-
"""
|
45
|
-
# Select a random adjective and noun
|
46
|
-
adj = random.choice(adjectives)
|
47
|
-
noun = random.choice(nouns)
|
48
|
-
|
49
|
-
# Generate a two-character hexadecimal suffix
|
50
|
-
suffix = uuid.uuid4().hex[:2]
|
51
|
-
|
52
|
-
# Combine into the final name
|
53
|
-
return f"{adj}-{noun}-{suffix}"
|
54
|
-
|
55
|
-
# Example usage
|
56
|
-
if __name__ == "__main__":
|
57
|
-
for _ in range(5):
|
58
|
-
print(generate_random_name())
|
@@ -1,45 +0,0 @@
|
|
1
|
-
import nltk
|
2
|
-
from nltk.corpus import brown
|
3
|
-
from nltk import pos_tag
|
4
|
-
from collections import Counter
|
5
|
-
import string
|
6
|
-
|
7
|
-
nltk.download('brown') # Brown Corpus
|
8
|
-
nltk.download('universal_tagset') # Universal POS Tagset
|
9
|
-
nltk.download('punkt') # Tokenizer models
|
10
|
-
nltk.download('averaged_perceptron_tagger_eng')
|
11
|
-
|
12
|
-
|
13
|
-
# Load sentences from the Brown Corpus
|
14
|
-
sentences = brown.sents()
|
15
|
-
|
16
|
-
|
17
|
-
# Initialize a list to hold all nouns
|
18
|
-
nouns = []
|
19
|
-
|
20
|
-
# Iterate through each sentence in the corpus
|
21
|
-
for sentence in sentences:
|
22
|
-
# Tokenize and tag each sentence
|
23
|
-
tagged_sentence = pos_tag(sentence, tagset='universal')
|
24
|
-
|
25
|
-
# Extract words tagged as 'NOUN'
|
26
|
-
for word, tag in tagged_sentence:
|
27
|
-
if tag == 'NOUN':
|
28
|
-
# Clean the word: remove punctuation and make lowercase
|
29
|
-
word = word.lower().strip(string.punctuation)
|
30
|
-
# Ensure the word is alphabetic and has exactly 4 letters
|
31
|
-
if word.isalpha() and len(word) == 4:
|
32
|
-
nouns.append(word)
|
33
|
-
|
34
|
-
|
35
|
-
# Count the frequency of each noun
|
36
|
-
noun_freq = Counter(nouns)
|
37
|
-
|
38
|
-
# Filter nouns to ensure they have exactly 4 letters (redundant if already filtered)
|
39
|
-
four_letter_nouns = {word: freq for word, freq in noun_freq.items() if len(word) == 4}
|
40
|
-
|
41
|
-
lst_nouns = [(word, freq) for word, freq in four_letter_nouns.items()]
|
42
|
-
lst_sorted = sorted(lst_nouns, key=lambda x: x[1], reverse=True)
|
43
|
-
nouns = [word for word, freq in lst_sorted[:250]]
|
44
|
-
|
45
|
-
|
@@ -1,45 +0,0 @@
|
|
1
|
-
import nltk
|
2
|
-
from nltk.corpus import brown
|
3
|
-
from nltk import pos_tag
|
4
|
-
from collections import Counter
|
5
|
-
import string
|
6
|
-
|
7
|
-
nltk.download('brown') # Brown Corpus
|
8
|
-
nltk.download('universal_tagset') # Universal POS Tagset
|
9
|
-
nltk.download('punkt') # Tokenizer models
|
10
|
-
nltk.download('averaged_perceptron_tagger_eng')
|
11
|
-
|
12
|
-
|
13
|
-
# Load sentences from the Brown Corpus
|
14
|
-
sentences = brown.sents()
|
15
|
-
|
16
|
-
|
17
|
-
# Initialize a list to hold all adjs
|
18
|
-
adjs = []
|
19
|
-
|
20
|
-
# Iterate through each sentence in the corpus
|
21
|
-
for sentence in sentences:
|
22
|
-
# Tokenize and tag each sentence
|
23
|
-
tagged_sentence = pos_tag(sentence, tagset='universal')
|
24
|
-
|
25
|
-
# Extract words tagged as 'adj'
|
26
|
-
for word, tag in tagged_sentence:
|
27
|
-
if tag == 'ADJ':
|
28
|
-
# Clean the word: remove punctuation and make lowercase
|
29
|
-
word = word.lower().strip(string.punctuation)
|
30
|
-
# Ensure the word is alphabetic and has exactly 4 letters
|
31
|
-
if word.isalpha() and len(word) == 4:
|
32
|
-
adjs.append(word)
|
33
|
-
|
34
|
-
|
35
|
-
# Count the frequency of each adj
|
36
|
-
adj_freq = Counter(adjs)
|
37
|
-
|
38
|
-
# Filter adjs to ensure they have exactly 4 letters (redundant if already filtered)
|
39
|
-
four_letter_adjs = {word: freq for word, freq in adj_freq.items() if len(word) == 4}
|
40
|
-
|
41
|
-
lst_adjs = [(word, freq) for word, freq in four_letter_adjs.items()]
|
42
|
-
lst_sorted = sorted(lst_adjs, key=lambda x: x[1], reverse=True)
|
43
|
-
adjs = [word for word, freq in lst_sorted[:250]]
|
44
|
-
|
45
|
-
|
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
|
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
|
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
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/instance/net_mon_01_plugin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/default/session/mqtt_session.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/base/__init__.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/base/base_formatter.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/__init__.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/a_dummy.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/aixp1.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/default/default.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/io_formatter/io_formatter_manager.py
RENAMED
File without changes
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/__init__.py
RENAMED
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
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/timers_mixin.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/upload_mixin.py
RENAMED
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/logger_mixins/utils_mixin.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/naeural_client/logging/tzlocal/windows_tz.py
RENAMED
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
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/8. custom_code_fastapi_assets/index.html
RENAMED
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
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/tutorials/video_presentation/1. hello_world.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.6.36 → naeural_client-2.6.38}/xperimental/decentralized/chain_dist_example.py
RENAMED
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{naeural_client-2.6.36/xperimental/_archive → naeural_client-2.6.38/xperimental/xarchive}/test.py
RENAMED
File without changes
|