synapse-sdk 1.0.0a35__py3-none-any.whl → 2025.11.7__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.
Potentially problematic release.
This version of synapse-sdk might be problematic. Click here for more details.
- synapse_sdk/__init__.py +24 -0
- synapse_sdk/cli/__init__.py +308 -5
- synapse_sdk/cli/alias/utils.py +1 -1
- synapse_sdk/cli/code_server.py +687 -0
- synapse_sdk/cli/config.py +440 -0
- synapse_sdk/cli/devtools.py +90 -0
- synapse_sdk/cli/plugin/publish.py +23 -15
- synapse_sdk/clients/agent/__init__.py +9 -3
- synapse_sdk/clients/agent/container.py +133 -0
- synapse_sdk/clients/agent/core.py +19 -0
- synapse_sdk/clients/agent/ray.py +298 -9
- synapse_sdk/clients/backend/__init__.py +28 -12
- synapse_sdk/clients/backend/annotation.py +9 -1
- synapse_sdk/clients/backend/core.py +31 -4
- synapse_sdk/clients/backend/data_collection.py +186 -0
- synapse_sdk/clients/backend/hitl.py +1 -1
- synapse_sdk/clients/backend/integration.py +4 -3
- synapse_sdk/clients/backend/ml.py +1 -1
- synapse_sdk/clients/backend/models.py +35 -1
- synapse_sdk/clients/base.py +309 -36
- synapse_sdk/clients/ray/serve.py +2 -0
- synapse_sdk/devtools/__init__.py +0 -0
- synapse_sdk/devtools/config.py +94 -0
- synapse_sdk/devtools/docs/.gitignore +20 -0
- synapse_sdk/devtools/docs/README.md +41 -0
- synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +12 -0
- synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +44 -0
- synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +24 -0
- synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
- synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +29 -0
- synapse_sdk/devtools/docs/blog/authors.yml +25 -0
- synapse_sdk/devtools/docs/blog/tags.yml +19 -0
- synapse_sdk/devtools/docs/docs/api/clients/agent.md +43 -0
- synapse_sdk/devtools/docs/docs/api/clients/annotation-mixin.md +378 -0
- synapse_sdk/devtools/docs/docs/api/clients/backend.md +420 -0
- synapse_sdk/devtools/docs/docs/api/clients/base.md +257 -0
- synapse_sdk/devtools/docs/docs/api/clients/core-mixin.md +477 -0
- synapse_sdk/devtools/docs/docs/api/clients/data-collection-mixin.md +422 -0
- synapse_sdk/devtools/docs/docs/api/clients/hitl-mixin.md +554 -0
- synapse_sdk/devtools/docs/docs/api/clients/index.md +391 -0
- synapse_sdk/devtools/docs/docs/api/clients/integration-mixin.md +571 -0
- synapse_sdk/devtools/docs/docs/api/clients/ml-mixin.md +578 -0
- synapse_sdk/devtools/docs/docs/api/clients/ray.md +342 -0
- synapse_sdk/devtools/docs/docs/api/index.md +52 -0
- synapse_sdk/devtools/docs/docs/api/plugins/categories.md +43 -0
- synapse_sdk/devtools/docs/docs/api/plugins/models.md +114 -0
- synapse_sdk/devtools/docs/docs/api/plugins/utils.md +328 -0
- synapse_sdk/devtools/docs/docs/categories.md +0 -0
- synapse_sdk/devtools/docs/docs/cli-usage.md +280 -0
- synapse_sdk/devtools/docs/docs/concepts/index.md +38 -0
- synapse_sdk/devtools/docs/docs/configuration.md +83 -0
- synapse_sdk/devtools/docs/docs/contributing.md +306 -0
- synapse_sdk/devtools/docs/docs/examples/index.md +29 -0
- synapse_sdk/devtools/docs/docs/faq.md +179 -0
- synapse_sdk/devtools/docs/docs/features/converters/index.md +455 -0
- synapse_sdk/devtools/docs/docs/features/index.md +24 -0
- synapse_sdk/devtools/docs/docs/features/utils/file.md +415 -0
- synapse_sdk/devtools/docs/docs/features/utils/network.md +378 -0
- synapse_sdk/devtools/docs/docs/features/utils/storage.md +57 -0
- synapse_sdk/devtools/docs/docs/features/utils/types.md +51 -0
- synapse_sdk/devtools/docs/docs/installation.md +94 -0
- synapse_sdk/devtools/docs/docs/introduction.md +47 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/neural-net-plugins/train-action-overview.md +814 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/pre-annotation-plugin-overview.md +198 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-action-development.md +1645 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-overview.md +717 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/pre-annotation-plugins/to-task-template-development.md +1380 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-action.md +948 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-overview.md +544 -0
- synapse_sdk/devtools/docs/docs/plugins/categories/upload-plugins/upload-plugin-template.md +766 -0
- synapse_sdk/devtools/docs/docs/plugins/export-plugins.md +1092 -0
- synapse_sdk/devtools/docs/docs/plugins/plugins.md +852 -0
- synapse_sdk/devtools/docs/docs/quickstart.md +78 -0
- synapse_sdk/devtools/docs/docs/troubleshooting.md +519 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/_category_.json +8 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/congratulations.md +23 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-blog-post.md +34 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-document.md +57 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-page.md +43 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/deploy-your-site.md +31 -0
- synapse_sdk/devtools/docs/docs/tutorial-basics/markdown-features.mdx +152 -0
- synapse_sdk/devtools/docs/docs/tutorial-extras/_category_.json +7 -0
- synapse_sdk/devtools/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
- synapse_sdk/devtools/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
- synapse_sdk/devtools/docs/docs/tutorial-extras/manage-docs-versions.md +55 -0
- synapse_sdk/devtools/docs/docs/tutorial-extras/translate-your-site.md +88 -0
- synapse_sdk/devtools/docs/docusaurus.config.ts +148 -0
- synapse_sdk/devtools/docs/i18n/ko/code.json +325 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/agent.md +43 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/annotation-mixin.md +289 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/backend.md +420 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/base.md +257 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/core-mixin.md +417 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/data-collection-mixin.md +356 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/hitl-mixin.md +192 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/index.md +391 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/integration-mixin.md +479 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ml-mixin.md +284 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ray.md +342 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/index.md +52 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/plugins/models.md +114 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/categories.md +0 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/cli-usage.md +280 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/concepts/index.md +38 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/configuration.md +83 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/contributing.md +306 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/examples/index.md +29 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/faq.md +179 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/converters/index.md +30 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/index.md +24 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/file.md +415 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/network.md +378 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/storage.md +60 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/types.md +51 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/installation.md +94 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +47 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/neural-net-plugins/train-action-overview.md +815 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/pre-annotation-plugin-overview.md +198 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-action-development.md +1645 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-overview.md +717 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/pre-annotation-plugins/to-task-template-development.md +1380 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-action.md +948 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-overview.md +544 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/categories/upload-plugins/upload-plugin-template.md +766 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/export-plugins.md +1092 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/plugins.md +117 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/quickstart.md +78 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/troubleshooting.md +519 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +34 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/footer.json +42 -0
- synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/navbar.json +18 -0
- synapse_sdk/devtools/docs/package-lock.json +18784 -0
- synapse_sdk/devtools/docs/package.json +48 -0
- synapse_sdk/devtools/docs/sidebars.ts +122 -0
- synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +71 -0
- synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +11 -0
- synapse_sdk/devtools/docs/src/css/custom.css +30 -0
- synapse_sdk/devtools/docs/src/pages/index.module.css +23 -0
- synapse_sdk/devtools/docs/src/pages/index.tsx +21 -0
- synapse_sdk/devtools/docs/src/pages/markdown-page.md +7 -0
- synapse_sdk/devtools/docs/static/.nojekyll +0 -0
- synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
- synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
- synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
- synapse_sdk/devtools/docs/static/img/logo.png +0 -0
- synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +171 -0
- synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +170 -0
- synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +40 -0
- synapse_sdk/devtools/docs/tsconfig.json +8 -0
- synapse_sdk/devtools/server.py +41 -0
- synapse_sdk/devtools/streamlit_app/__init__.py +5 -0
- synapse_sdk/devtools/streamlit_app/app.py +128 -0
- synapse_sdk/devtools/streamlit_app/services/__init__.py +11 -0
- synapse_sdk/devtools/streamlit_app/services/job_service.py +233 -0
- synapse_sdk/devtools/streamlit_app/services/plugin_service.py +236 -0
- synapse_sdk/devtools/streamlit_app/services/serve_service.py +95 -0
- synapse_sdk/devtools/streamlit_app/ui/__init__.py +15 -0
- synapse_sdk/devtools/streamlit_app/ui/config_tab.py +76 -0
- synapse_sdk/devtools/streamlit_app/ui/deployment_tab.py +66 -0
- synapse_sdk/devtools/streamlit_app/ui/http_tab.py +125 -0
- synapse_sdk/devtools/streamlit_app/ui/jobs_tab.py +573 -0
- synapse_sdk/devtools/streamlit_app/ui/serve_tab.py +346 -0
- synapse_sdk/devtools/streamlit_app/ui/status_bar.py +118 -0
- synapse_sdk/devtools/streamlit_app/utils/__init__.py +40 -0
- synapse_sdk/devtools/streamlit_app/utils/json_viewer.py +197 -0
- synapse_sdk/devtools/streamlit_app/utils/log_formatter.py +38 -0
- synapse_sdk/devtools/streamlit_app/utils/styles.py +241 -0
- synapse_sdk/devtools/streamlit_app/utils/ui_components.py +289 -0
- synapse_sdk/devtools/streamlit_app.py +10 -0
- synapse_sdk/loggers.py +65 -7
- synapse_sdk/plugins/README.md +1340 -0
- synapse_sdk/plugins/categories/base.py +73 -11
- synapse_sdk/plugins/categories/data_validation/actions/validation.py +72 -0
- synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +33 -5
- synapse_sdk/plugins/categories/export/actions/__init__.py +3 -0
- synapse_sdk/plugins/categories/export/actions/export/__init__.py +28 -0
- synapse_sdk/plugins/categories/export/actions/export/action.py +165 -0
- synapse_sdk/plugins/categories/export/actions/export/enums.py +113 -0
- synapse_sdk/plugins/categories/export/actions/export/exceptions.py +53 -0
- synapse_sdk/plugins/categories/export/actions/export/models.py +74 -0
- synapse_sdk/plugins/categories/export/actions/export/run.py +195 -0
- synapse_sdk/plugins/categories/export/actions/{export.py → export/utils.py} +47 -82
- synapse_sdk/plugins/categories/export/templates/config.yaml +19 -1
- synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +390 -0
- synapse_sdk/plugins/categories/export/templates/plugin/export.py +153 -129
- synapse_sdk/plugins/categories/neural_net/actions/deployment.py +9 -62
- synapse_sdk/plugins/categories/neural_net/actions/train.py +1062 -32
- synapse_sdk/plugins/categories/neural_net/actions/tune.py +534 -0
- synapse_sdk/plugins/categories/neural_net/templates/config.yaml +27 -5
- synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +26 -10
- synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +4 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation/__init__.py +3 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation/action.py +10 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/__init__.py +28 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/action.py +145 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/enums.py +269 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/exceptions.py +14 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/factory.py +76 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/models.py +97 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/orchestrator.py +250 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/run.py +64 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/__init__.py +17 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/annotation.py +287 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/base.py +170 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/extraction.py +83 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/metrics.py +87 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/preprocessor.py +127 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task/strategies/validation.py +143 -0
- synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +966 -0
- synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +19 -0
- synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +40 -0
- synapse_sdk/plugins/categories/upload/actions/upload/__init__.py +19 -0
- synapse_sdk/plugins/categories/upload/actions/upload/action.py +232 -0
- synapse_sdk/plugins/categories/upload/actions/upload/context.py +185 -0
- synapse_sdk/plugins/categories/upload/actions/upload/enums.py +471 -0
- synapse_sdk/plugins/categories/upload/actions/upload/exceptions.py +36 -0
- synapse_sdk/plugins/categories/upload/actions/upload/factory.py +138 -0
- synapse_sdk/plugins/categories/upload/actions/upload/models.py +203 -0
- synapse_sdk/plugins/categories/upload/actions/upload/orchestrator.py +183 -0
- synapse_sdk/plugins/categories/upload/actions/upload/registry.py +113 -0
- synapse_sdk/plugins/categories/upload/actions/upload/run.py +179 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/base.py +107 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/cleanup.py +62 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/collection.py +63 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/generate.py +84 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/initialize.py +82 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/metadata.py +235 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/organize.py +203 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/upload.py +97 -0
- synapse_sdk/plugins/categories/upload/actions/upload/steps/validate.py +71 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/base.py +82 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/batch.py +39 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/single.py +29 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/flat.py +258 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/recursive.py +281 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/excel.py +174 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/none.py +16 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/sync.py +84 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/__init__.py +1 -0
- synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/default.py +60 -0
- synapse_sdk/plugins/categories/upload/actions/upload/utils.py +250 -0
- synapse_sdk/plugins/categories/upload/templates/README.md +470 -0
- synapse_sdk/plugins/categories/upload/templates/config.yaml +29 -2
- synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +294 -0
- synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +88 -30
- synapse_sdk/plugins/models.py +122 -16
- synapse_sdk/plugins/templates/plugin-config-schema.json +406 -0
- synapse_sdk/plugins/templates/schema.json +491 -0
- synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +1 -1
- synapse_sdk/plugins/utils/__init__.py +46 -0
- synapse_sdk/plugins/utils/actions.py +119 -0
- synapse_sdk/plugins/utils/config.py +203 -0
- synapse_sdk/plugins/{utils.py → utils/legacy.py} +26 -46
- synapse_sdk/plugins/utils/ray_gcs.py +66 -0
- synapse_sdk/plugins/utils/registry.py +58 -0
- synapse_sdk/shared/__init__.py +25 -0
- synapse_sdk/shared/enums.py +93 -0
- synapse_sdk/utils/converters/__init__.py +240 -0
- synapse_sdk/utils/converters/coco/__init__.py +0 -0
- synapse_sdk/utils/converters/coco/from_dm.py +322 -0
- synapse_sdk/utils/converters/coco/to_dm.py +215 -0
- synapse_sdk/utils/converters/dm/__init__.py +56 -0
- synapse_sdk/utils/converters/dm/from_v1.py +627 -0
- synapse_sdk/utils/converters/dm/to_v1.py +367 -0
- synapse_sdk/utils/converters/pascal/__init__.py +0 -0
- synapse_sdk/utils/converters/pascal/from_dm.py +244 -0
- synapse_sdk/utils/converters/pascal/to_dm.py +214 -0
- synapse_sdk/utils/converters/yolo/__init__.py +0 -0
- synapse_sdk/utils/converters/yolo/from_dm.py +384 -0
- synapse_sdk/utils/converters/yolo/to_dm.py +267 -0
- synapse_sdk/utils/dataset.py +46 -0
- synapse_sdk/utils/encryption.py +158 -0
- synapse_sdk/utils/file/__init__.py +39 -0
- synapse_sdk/utils/file/archive.py +32 -0
- synapse_sdk/utils/file/checksum.py +56 -0
- synapse_sdk/utils/file/chunking.py +31 -0
- synapse_sdk/utils/file/download.py +385 -0
- synapse_sdk/utils/file/encoding.py +40 -0
- synapse_sdk/utils/file/io.py +22 -0
- synapse_sdk/utils/file/video/__init__.py +29 -0
- synapse_sdk/utils/file/video/transcode.py +307 -0
- synapse_sdk/utils/{file.py → file.py.backup} +84 -2
- synapse_sdk/utils/http.py +138 -0
- synapse_sdk/utils/network.py +293 -0
- synapse_sdk/utils/storage/__init__.py +36 -2
- synapse_sdk/utils/storage/providers/__init__.py +141 -0
- synapse_sdk/utils/storage/providers/file_system.py +134 -0
- synapse_sdk/utils/storage/providers/http.py +190 -0
- synapse_sdk/utils/storage/providers/s3.py +54 -6
- synapse_sdk/utils/storage/providers/sftp.py +31 -0
- synapse_sdk/utils/storage/registry.py +6 -0
- synapse_sdk-2025.11.7.dist-info/METADATA +122 -0
- synapse_sdk-2025.11.7.dist-info/RECORD +386 -0
- {synapse_sdk-1.0.0a35.dist-info → synapse_sdk-2025.11.7.dist-info}/WHEEL +1 -1
- synapse_sdk/clients/backend/dataset.py +0 -102
- synapse_sdk/plugins/categories/upload/actions/upload.py +0 -293
- synapse_sdk-1.0.0a35.dist-info/METADATA +0 -47
- synapse_sdk-1.0.0a35.dist-info/RECORD +0 -137
- {synapse_sdk-1.0.0a35.dist-info → synapse_sdk-2025.11.7.dist-info}/entry_points.txt +0 -0
- {synapse_sdk-1.0.0a35.dist-info → synapse_sdk-2025.11.7.dist-info}/licenses/LICENSE +0 -0
- {synapse_sdk-1.0.0a35.dist-info → synapse_sdk-2025.11.7.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: quickstart
|
|
3
|
+
title: Quickstart Guide
|
|
4
|
+
sidebar_position: 3
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Quickstart Guide
|
|
8
|
+
|
|
9
|
+
Get up and running with Synapse SDK in minutes.
|
|
10
|
+
|
|
11
|
+
## Interactive CLI
|
|
12
|
+
|
|
13
|
+
Launch the Synapse CLI to access all features through an interactive menu:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
synapse
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
This opens the main menu with options for:
|
|
20
|
+
|
|
21
|
+
- 🌐 **Dev Tools**: Web-based dashboard for agent and job management
|
|
22
|
+
- 💻 **Code-Server IDE**: Web-based VS Code for plugin development
|
|
23
|
+
- ⚙️ **Configuration**: Setup backend connections and agents
|
|
24
|
+
- 🔌 **Plugin Management**: Create, test, and publish plugins
|
|
25
|
+
|
|
26
|
+
## Quick Commands
|
|
27
|
+
|
|
28
|
+
For faster access to specific features:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
# Start development tools immediately
|
|
32
|
+
synapse --dev-tools
|
|
33
|
+
|
|
34
|
+
# Configure backend and agents
|
|
35
|
+
synapse config
|
|
36
|
+
|
|
37
|
+
# Open code editing environment
|
|
38
|
+
synapse code-server
|
|
39
|
+
|
|
40
|
+
# Create a new plugin
|
|
41
|
+
synapse plugin create
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Your First Plugin
|
|
45
|
+
|
|
46
|
+
1. **Create a plugin**:
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
synapse
|
|
50
|
+
# Select "🔌 Plugin Management" → "Create new plugin"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
2. **Edit in Code-Server**:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
synapse
|
|
57
|
+
# Select "💻 Open Code-Server IDE"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
3. **Test locally**:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
synapse plugin run my_action '{"param": "value"}' --run-by script
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
4. **Publish to backend**:
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
synapse
|
|
70
|
+
# Select "🔌 Plugin Management" → "Publish plugin"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Next Steps
|
|
74
|
+
|
|
75
|
+
- Read the complete [CLI Usage Guide](./cli-usage.md)
|
|
76
|
+
- Learn about [Core Concepts](./concepts/index.md)
|
|
77
|
+
- Explore the [API Reference](./api/index.md)
|
|
78
|
+
- Check [Frequently Asked Questions](./faq.md)
|
|
@@ -0,0 +1,519 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: troubleshooting
|
|
3
|
+
title: Troubleshooting
|
|
4
|
+
sidebar_position: 10
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Troubleshooting
|
|
8
|
+
|
|
9
|
+
Common issues and their solutions when using Synapse SDK.
|
|
10
|
+
|
|
11
|
+
## Installation Issues
|
|
12
|
+
|
|
13
|
+
## Authentication Issues
|
|
14
|
+
|
|
15
|
+
### ClientError: 401 Unauthorized
|
|
16
|
+
|
|
17
|
+
**Symptoms**: API calls failing with 401 errors.
|
|
18
|
+
|
|
19
|
+
**Diagnosis Steps**:
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
3. **Verify token via CLI**:
|
|
23
|
+
```bash
|
|
24
|
+
# Use the interactive config to check your token
|
|
25
|
+
synapse config
|
|
26
|
+
# Select "Show current configuration"
|
|
27
|
+
# Tokens are now displayed in plain text for easy verification
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
4. **Verify token in code**:
|
|
31
|
+
```python
|
|
32
|
+
from synapse_sdk.clients.backend import BackendClient
|
|
33
|
+
|
|
34
|
+
client = BackendClient(
|
|
35
|
+
base_url="https://api.synapse.sh",
|
|
36
|
+
api_token="your-token" # No "Token " prefix
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
try:
|
|
40
|
+
user = client.get_current_user()
|
|
41
|
+
print(f"Authenticated as: {user.email}")
|
|
42
|
+
except Exception as e:
|
|
43
|
+
print(f"Auth failed: {e}")
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
**Common Fixes**:
|
|
47
|
+
- Regenerate token from web interface
|
|
48
|
+
- Check token hasn't expired
|
|
49
|
+
- Verify correct backend URL
|
|
50
|
+
|
|
51
|
+
### Agent Authentication Errors
|
|
52
|
+
|
|
53
|
+
**Symptoms**: Agent-related operations failing.
|
|
54
|
+
|
|
55
|
+
**Solutions**:
|
|
56
|
+
|
|
57
|
+
1. **Check agent configuration**:
|
|
58
|
+
```bash
|
|
59
|
+
synapse config
|
|
60
|
+
# Select "Show current configuration"
|
|
61
|
+
# Both backend and agent tokens are displayed in plain text
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
2. **Verify agent token**:
|
|
65
|
+
```python
|
|
66
|
+
from synapse_sdk.clients.agent import AgentClient
|
|
67
|
+
|
|
68
|
+
client = AgentClient(
|
|
69
|
+
base_url="https://api.synapse.sh",
|
|
70
|
+
agent_token="your-agent-token"
|
|
71
|
+
)
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Connection Issues
|
|
75
|
+
|
|
76
|
+
### Connection Timeouts
|
|
77
|
+
|
|
78
|
+
**Symptoms**: Requests timing out or hanging.
|
|
79
|
+
|
|
80
|
+
**Solutions**:
|
|
81
|
+
|
|
82
|
+
1. **Increase timeout values**:
|
|
83
|
+
```python
|
|
84
|
+
client = BackendClient(
|
|
85
|
+
base_url="https://api.synapse.sh",
|
|
86
|
+
api_token="your-token",
|
|
87
|
+
timeout={'connect': 30, 'read': 120}
|
|
88
|
+
)
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
2. **Check network connectivity**:
|
|
92
|
+
```bash
|
|
93
|
+
# Test basic connectivity
|
|
94
|
+
ping api.synapse.sh
|
|
95
|
+
|
|
96
|
+
# Test HTTPS access
|
|
97
|
+
curl -I https://api.synapse.sh/health
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
3. **Configure proxy if needed**:
|
|
101
|
+
```bash
|
|
102
|
+
export HTTP_PROXY="http://proxy.company.com:8080"
|
|
103
|
+
export HTTPS_PROXY="https://proxy.company.com:8080"
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### DNS Resolution Issues
|
|
107
|
+
|
|
108
|
+
**Symptoms**: "Name or service not known" errors.
|
|
109
|
+
|
|
110
|
+
**Solutions**:
|
|
111
|
+
|
|
112
|
+
1. **Check DNS settings**:
|
|
113
|
+
```bash
|
|
114
|
+
nslookup api.synapse.sh
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
2. **Try alternative DNS**:
|
|
118
|
+
```bash
|
|
119
|
+
# Temporarily use Google DNS
|
|
120
|
+
export SYNAPSE_BACKEND_HOST="$(dig @8.8.8.8 api.synapse.sh +short)"
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
3. **Use IP address directly** (temporary):
|
|
124
|
+
```python
|
|
125
|
+
client = BackendClient(base_url="https://192.168.1.100:8000")
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Plugin Development Issues
|
|
129
|
+
|
|
130
|
+
### Plugin Import Errors
|
|
131
|
+
|
|
132
|
+
**Symptoms**: Plugins failing to load or import.
|
|
133
|
+
|
|
134
|
+
**Diagnosis**:
|
|
135
|
+
```bash
|
|
136
|
+
# Test plugin syntax
|
|
137
|
+
python -m py_compile plugin/__init__.py
|
|
138
|
+
|
|
139
|
+
# Check for circular imports
|
|
140
|
+
python -c "import plugin; print('OK')"
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
**Solutions**:
|
|
144
|
+
|
|
145
|
+
1. **Fix syntax errors**:
|
|
146
|
+
```bash
|
|
147
|
+
# Use linting
|
|
148
|
+
pip install ruff
|
|
149
|
+
ruff check plugin/
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
2. **Check import paths**:
|
|
153
|
+
```python
|
|
154
|
+
# In plugin/__init__.py
|
|
155
|
+
from synapse_sdk.plugins.categories.base import Action, register_action
|
|
156
|
+
# Not: from synapse_sdk.plugins.base import Action
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
3. **Verify plugin structure**:
|
|
160
|
+
```
|
|
161
|
+
my-plugin/
|
|
162
|
+
├── config.yaml
|
|
163
|
+
├── plugin/
|
|
164
|
+
│ └── __init__.py
|
|
165
|
+
├── requirements.txt
|
|
166
|
+
└── README.md
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### Plugin Execution Failures
|
|
170
|
+
|
|
171
|
+
**Symptoms**: Plugins starting but failing during execution.
|
|
172
|
+
|
|
173
|
+
**Debugging Steps**:
|
|
174
|
+
|
|
175
|
+
1. **Enable debug mode via CLI**:
|
|
176
|
+
```bash
|
|
177
|
+
synapse
|
|
178
|
+
# Select "Plugin Management"
|
|
179
|
+
# Select "Run plugin locally"
|
|
180
|
+
# Enter your action and parameters
|
|
181
|
+
# Debug mode is enabled by default for local runs
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
2. **Enable debug mode manually**:
|
|
185
|
+
```bash
|
|
186
|
+
export SYNAPSE_DEBUG=true
|
|
187
|
+
synapse plugin run --path ./my-plugin --action test
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
2. **Check logs**:
|
|
191
|
+
```python
|
|
192
|
+
def start(self):
|
|
193
|
+
try:
|
|
194
|
+
self.run.log("Starting plugin execution")
|
|
195
|
+
# Your code here
|
|
196
|
+
self.run.log("Plugin completed successfully")
|
|
197
|
+
except Exception as e:
|
|
198
|
+
self.run.log(f"Error: {str(e)}", level="ERROR")
|
|
199
|
+
raise
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
3. **Validate parameters**:
|
|
203
|
+
```python
|
|
204
|
+
from pydantic import ValidationError
|
|
205
|
+
|
|
206
|
+
def start(self):
|
|
207
|
+
try:
|
|
208
|
+
# This will validate parameters
|
|
209
|
+
params = self.params_model(**self.params)
|
|
210
|
+
except ValidationError as e:
|
|
211
|
+
self.run.log(f"Parameter validation failed: {e}")
|
|
212
|
+
raise
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
### File Handling Issues
|
|
216
|
+
|
|
217
|
+
**Symptoms**: File operations failing in plugins.
|
|
218
|
+
|
|
219
|
+
**Common Issues & Solutions**:
|
|
220
|
+
|
|
221
|
+
1. **FileField not downloading**:
|
|
222
|
+
```python
|
|
223
|
+
# Check file URL format
|
|
224
|
+
class MyParams(BaseModel):
|
|
225
|
+
input_file: FileField # Expects URL
|
|
226
|
+
|
|
227
|
+
def start(self):
|
|
228
|
+
file_path = self.params.input_file
|
|
229
|
+
if not os.path.exists(file_path):
|
|
230
|
+
raise FileNotFoundError(f"File not found: {file_path}")
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
2. **Permission errors**:
|
|
234
|
+
```python
|
|
235
|
+
import tempfile
|
|
236
|
+
import shutil
|
|
237
|
+
|
|
238
|
+
def start(self):
|
|
239
|
+
# Use temporary directory
|
|
240
|
+
with tempfile.TemporaryDirectory() as temp_dir:
|
|
241
|
+
output_path = os.path.join(temp_dir, "result.csv")
|
|
242
|
+
# Process and save to output_path
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
3. **Large file handling**:
|
|
246
|
+
```python
|
|
247
|
+
def start(self):
|
|
248
|
+
# Process in chunks for large files
|
|
249
|
+
chunk_size = 1024 * 1024 # 1MB chunks
|
|
250
|
+
with open(self.params.input_file, 'rb') as f:
|
|
251
|
+
while True:
|
|
252
|
+
chunk = f.read(chunk_size)
|
|
253
|
+
if not chunk:
|
|
254
|
+
break
|
|
255
|
+
process_chunk(chunk)
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
## Distributed Computing Issues
|
|
259
|
+
|
|
260
|
+
### Cluster Connection
|
|
261
|
+
|
|
262
|
+
**Symptoms**: Cannot connect to compute cluster.
|
|
263
|
+
|
|
264
|
+
**Solutions**:
|
|
265
|
+
|
|
266
|
+
1. **Check cluster status**:
|
|
267
|
+
```bash
|
|
268
|
+
synapse cluster status
|
|
269
|
+
# Should show cluster information
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
2. **Start local cluster**:
|
|
273
|
+
```bash
|
|
274
|
+
synapse cluster start --dashboard-host=0.0.0.0
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
3. **Connect to remote cluster**:
|
|
278
|
+
```bash
|
|
279
|
+
export SYNAPSE_CLUSTER_ADDRESS="cluster://remote-cluster:10001"
|
|
280
|
+
synapse cluster status # Should connect to remote cluster
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### Memory Issues
|
|
284
|
+
|
|
285
|
+
**Symptoms**: Out of memory errors during execution.
|
|
286
|
+
|
|
287
|
+
**Solutions**:
|
|
288
|
+
|
|
289
|
+
1. **Increase memory allocation**:
|
|
290
|
+
```bash
|
|
291
|
+
synapse cluster start --memory=2000000000 # 2GB
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
2. **Configure in code**:
|
|
295
|
+
```python
|
|
296
|
+
from synapse_sdk.compute import init
|
|
297
|
+
init(memory=2000000000)
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
3. **Process data in smaller chunks**:
|
|
301
|
+
```python
|
|
302
|
+
def process_chunk(data_chunk):
|
|
303
|
+
return process(data_chunk)
|
|
304
|
+
|
|
305
|
+
# Split large data into chunks
|
|
306
|
+
chunks = split_data(large_data)
|
|
307
|
+
results = [process_chunk(chunk) for chunk in chunks]
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
### Job Failures
|
|
311
|
+
|
|
312
|
+
**Symptoms**: Jobs failing to start or complete.
|
|
313
|
+
|
|
314
|
+
**Solutions**:
|
|
315
|
+
|
|
316
|
+
1. **Check resource requirements**:
|
|
317
|
+
```python
|
|
318
|
+
def my_task(resources={'cpus': 2, 'memory': '1GB'}):
|
|
319
|
+
pass
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
2. **Verify runtime environment**:
|
|
323
|
+
```yaml
|
|
324
|
+
# In plugin config.yaml
|
|
325
|
+
runtime_env:
|
|
326
|
+
pip:
|
|
327
|
+
packages: ["pandas", "numpy"]
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
## Development Tools Issues
|
|
331
|
+
|
|
332
|
+
### Devtools Won't Start
|
|
333
|
+
|
|
334
|
+
**Symptoms**: `synapse --dev-tools` fails to start.
|
|
335
|
+
|
|
336
|
+
**Solutions**:
|
|
337
|
+
|
|
338
|
+
1. **Install dashboard dependencies**:
|
|
339
|
+
```bash
|
|
340
|
+
pip install synapse-sdk[dashboard]
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
2. **Check port availability**:
|
|
344
|
+
```bash
|
|
345
|
+
# Check if port 8080 is in use
|
|
346
|
+
lsof -i :8080
|
|
347
|
+
|
|
348
|
+
# Use different port
|
|
349
|
+
synapse devtools --port 8081
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
3. **Build frontend manually**:
|
|
353
|
+
```bash
|
|
354
|
+
cd synapse_sdk/devtools/web
|
|
355
|
+
npm install
|
|
356
|
+
npm run build
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
### Frontend Build Errors
|
|
360
|
+
|
|
361
|
+
**Symptoms**: Frontend assets failing to build.
|
|
362
|
+
|
|
363
|
+
**Solutions**:
|
|
364
|
+
|
|
365
|
+
1. **Install Node.js dependencies**:
|
|
366
|
+
```bash
|
|
367
|
+
# Install Node.js (if not installed)
|
|
368
|
+
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
|
|
369
|
+
sudo apt-get install -y nodejs
|
|
370
|
+
|
|
371
|
+
# Or use nvm
|
|
372
|
+
nvm install 18
|
|
373
|
+
nvm use 18
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
2. **Clear npm cache**:
|
|
377
|
+
```bash
|
|
378
|
+
cd synapse_sdk/devtools/web
|
|
379
|
+
rm -rf node_modules package-lock.json
|
|
380
|
+
npm cache clean --force
|
|
381
|
+
npm install
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
## Performance Issues
|
|
385
|
+
|
|
386
|
+
### Slow Plugin Execution
|
|
387
|
+
|
|
388
|
+
**Symptoms**: Plugins taking too long to execute.
|
|
389
|
+
|
|
390
|
+
**Optimization Strategies**:
|
|
391
|
+
|
|
392
|
+
1. **Profile your code**:
|
|
393
|
+
```python
|
|
394
|
+
import time
|
|
395
|
+
|
|
396
|
+
def start(self):
|
|
397
|
+
start_time = time.time()
|
|
398
|
+
# Your code here
|
|
399
|
+
self.run.log(f"Execution took {time.time() - start_time:.2f}s")
|
|
400
|
+
```
|
|
401
|
+
|
|
402
|
+
2. **Use parallel processing**:
|
|
403
|
+
```python
|
|
404
|
+
from concurrent.futures import ThreadPoolExecutor
|
|
405
|
+
|
|
406
|
+
def parallel_task(item):
|
|
407
|
+
return process_item(item)
|
|
408
|
+
|
|
409
|
+
def start(self):
|
|
410
|
+
# Process items in parallel
|
|
411
|
+
with ThreadPoolExecutor() as executor:
|
|
412
|
+
results = list(executor.map(parallel_task, items))
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
3. **Optimize data loading**:
|
|
416
|
+
```python
|
|
417
|
+
# Instead of loading everything at once
|
|
418
|
+
data = pd.read_csv(large_file)
|
|
419
|
+
|
|
420
|
+
# Use chunked loading
|
|
421
|
+
for chunk in pd.read_csv(large_file, chunksize=1000):
|
|
422
|
+
process_chunk(chunk)
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
### Memory Usage Issues
|
|
426
|
+
|
|
427
|
+
**Symptoms**: High memory usage or out-of-memory errors.
|
|
428
|
+
|
|
429
|
+
**Solutions**:
|
|
430
|
+
|
|
431
|
+
1. **Monitor memory usage**:
|
|
432
|
+
```python
|
|
433
|
+
import psutil
|
|
434
|
+
|
|
435
|
+
def start(self):
|
|
436
|
+
process = psutil.Process()
|
|
437
|
+
self.run.log(f"Memory usage: {process.memory_info().rss / 1024 / 1024:.1f} MB")
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
2. **Use generators instead of lists**:
|
|
441
|
+
```python
|
|
442
|
+
# Instead of
|
|
443
|
+
all_data = [process(item) for item in large_list]
|
|
444
|
+
|
|
445
|
+
# Use generator
|
|
446
|
+
def process_items():
|
|
447
|
+
for item in large_list:
|
|
448
|
+
yield process(item)
|
|
449
|
+
```
|
|
450
|
+
|
|
451
|
+
3. **Clear variables explicitly**:
|
|
452
|
+
```python
|
|
453
|
+
def start(self):
|
|
454
|
+
large_data = load_data()
|
|
455
|
+
result = process(large_data)
|
|
456
|
+
del large_data # Free memory explicitly
|
|
457
|
+
return result
|
|
458
|
+
```
|
|
459
|
+
|
|
460
|
+
## Logging and Debugging
|
|
461
|
+
|
|
462
|
+
### Enable Debug Logging
|
|
463
|
+
|
|
464
|
+
```bash
|
|
465
|
+
export SYNAPSE_DEBUG=true
|
|
466
|
+
export SYNAPSE_LOG_LEVEL=DEBUG
|
|
467
|
+
```
|
|
468
|
+
|
|
469
|
+
### Custom Logging
|
|
470
|
+
|
|
471
|
+
```python
|
|
472
|
+
import logging
|
|
473
|
+
|
|
474
|
+
# Configure logging
|
|
475
|
+
logging.basicConfig(
|
|
476
|
+
level=logging.DEBUG,
|
|
477
|
+
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
|
478
|
+
)
|
|
479
|
+
|
|
480
|
+
logger = logging.getLogger(__name__)
|
|
481
|
+
|
|
482
|
+
def start(self):
|
|
483
|
+
logger.debug("Starting plugin execution")
|
|
484
|
+
# Your code here
|
|
485
|
+
```
|
|
486
|
+
|
|
487
|
+
### Debugging Tips
|
|
488
|
+
|
|
489
|
+
1. **Use print statements** (they appear in logs):
|
|
490
|
+
```python
|
|
491
|
+
def start(self):
|
|
492
|
+
print(f"Parameters: {self.params}")
|
|
493
|
+
print(f"Working directory: {os.getcwd()}")
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
2. **Check file existence**:
|
|
497
|
+
```python
|
|
498
|
+
def start(self):
|
|
499
|
+
file_path = self.params.input_file
|
|
500
|
+
print(f"File exists: {os.path.exists(file_path)}")
|
|
501
|
+
print(f"File size: {os.path.getsize(file_path)} bytes")
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
3. **Validate data types**:
|
|
505
|
+
```python
|
|
506
|
+
def start(self):
|
|
507
|
+
print(f"Parameter types: {type(self.params.input_data)}")
|
|
508
|
+
print(f"Parameter value: {repr(self.params.input_data)}")
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
## Getting Help
|
|
512
|
+
|
|
513
|
+
If you can't resolve an issue:
|
|
514
|
+
|
|
515
|
+
1. **Check the logs** thoroughly
|
|
516
|
+
2. **Search GitHub issues**: https://github.com/datamaker/synapse-sdk/issues
|
|
517
|
+
3. **Create a minimal reproduction** case
|
|
518
|
+
4. **Join Discord community**: https://discord.gg/synapse-sdk
|
|
519
|
+
5. **Contact support** with detailed error information
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 6
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Congratulations!
|
|
6
|
+
|
|
7
|
+
You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
|
|
8
|
+
|
|
9
|
+
Docusaurus has **much more to offer**!
|
|
10
|
+
|
|
11
|
+
Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
|
|
12
|
+
|
|
13
|
+
Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
|
|
14
|
+
|
|
15
|
+
## What's next?
|
|
16
|
+
|
|
17
|
+
- Read the [official documentation](https://docusaurus.io/)
|
|
18
|
+
- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
|
|
19
|
+
- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
|
|
20
|
+
- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
|
|
21
|
+
- Add a [search bar](https://docusaurus.io/docs/search)
|
|
22
|
+
- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
|
|
23
|
+
- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 3
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Create a Blog Post
|
|
6
|
+
|
|
7
|
+
Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
|
|
8
|
+
|
|
9
|
+
## Create your first Post
|
|
10
|
+
|
|
11
|
+
Create a file at `blog/2021-02-28-greetings.md`:
|
|
12
|
+
|
|
13
|
+
```md title="blog/2021-02-28-greetings.md"
|
|
14
|
+
---
|
|
15
|
+
slug: greetings
|
|
16
|
+
title: Greetings!
|
|
17
|
+
authors:
|
|
18
|
+
- name: Joel Marcey
|
|
19
|
+
title: Co-creator of Docusaurus 1
|
|
20
|
+
url: https://github.com/JoelMarcey
|
|
21
|
+
image_url: https://github.com/JoelMarcey.png
|
|
22
|
+
- name: Sébastien Lorber
|
|
23
|
+
title: Docusaurus maintainer
|
|
24
|
+
url: https://sebastienlorber.com
|
|
25
|
+
image_url: https://github.com/slorber.png
|
|
26
|
+
tags: [greetings]
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
Congratulations, you have made your first post!
|
|
30
|
+
|
|
31
|
+
Feel free to play around and edit this post as much as you like.
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings).
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 2
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Create a Document
|
|
6
|
+
|
|
7
|
+
Documents are **groups of pages** connected through:
|
|
8
|
+
|
|
9
|
+
- a **sidebar**
|
|
10
|
+
- **previous/next navigation**
|
|
11
|
+
- **versioning**
|
|
12
|
+
|
|
13
|
+
## Create your first Doc
|
|
14
|
+
|
|
15
|
+
Create a Markdown file at `docs/hello.md`:
|
|
16
|
+
|
|
17
|
+
```md title="docs/hello.md"
|
|
18
|
+
# Hello
|
|
19
|
+
|
|
20
|
+
This is my **first Docusaurus document**!
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello).
|
|
24
|
+
|
|
25
|
+
## Configure the Sidebar
|
|
26
|
+
|
|
27
|
+
Docusaurus automatically **creates a sidebar** from the `docs` folder.
|
|
28
|
+
|
|
29
|
+
Add metadata to customize the sidebar label and position:
|
|
30
|
+
|
|
31
|
+
```md title="docs/hello.md" {1-4}
|
|
32
|
+
---
|
|
33
|
+
sidebar_label: 'Hi!'
|
|
34
|
+
sidebar_position: 3
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
# Hello
|
|
38
|
+
|
|
39
|
+
This is my **first Docusaurus document**!
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
It is also possible to create your sidebar explicitly in `sidebars.js`:
|
|
43
|
+
|
|
44
|
+
```js title="sidebars.js"
|
|
45
|
+
export default {
|
|
46
|
+
tutorialSidebar: [
|
|
47
|
+
'intro',
|
|
48
|
+
// highlight-next-line
|
|
49
|
+
'hello',
|
|
50
|
+
{
|
|
51
|
+
type: 'category',
|
|
52
|
+
label: 'Tutorial',
|
|
53
|
+
items: ['tutorial-basics/create-a-document'],
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
};
|
|
57
|
+
```
|