synapse-sdk 2025.9.4__tar.gz → 2025.10.1__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.
Potentially problematic release.
This version of synapse-sdk might be problematic. Click here for more details.
- {synapse_sdk-2025.9.4/synapse_sdk.egg-info → synapse_sdk-2025.10.1}/PKG-INFO +15 -2
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/README.md +13 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/pyproject.toml +1 -1
- synapse_sdk-2025.10.1/synapse_sdk/devtools/docs/docs/api/plugins/models.md +114 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/plugins/export-plugins.md +39 -0
- synapse_sdk-2025.10.1/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/plugins/models.md +114 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/export-plugins.md +39 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/sidebars.ts +7 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/base.py +2 -1
- synapse_sdk-2025.10.1/synapse_sdk/plugins/categories/export/templates/config.yaml +21 -0
- synapse_sdk-2025.10.1/synapse_sdk/plugins/categories/export/templates/plugin/export.py +160 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/models.py +64 -2
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/shared/__init__.py +4 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1/synapse_sdk.egg-info}/PKG-INFO +15 -2
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk.egg-info/SOURCES.txt +1 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk.egg-info/requires.txt +1 -1
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/uv.lock +17 -21
- synapse_sdk-2025.9.4/synapse_sdk/devtools/docs/docs/api/plugins/models.md +0 -59
- synapse_sdk-2025.9.4/synapse_sdk/plugins/categories/export/templates/config.yaml +0 -3
- synapse_sdk-2025.9.4/synapse_sdk/plugins/categories/export/templates/plugin/export.py +0 -63
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.claude/commands/compare-branch.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.claude/commands/review-pr.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.claude/commands/update-pr-desc.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.claude/commands/update-pr-title.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.github/workflows/lint.yml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.github/workflows/pypi-publish.yml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.github/workflows/test.yml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.gitignore +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.mcp.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/.pre-commit-config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/AGENT.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/CLAUDE.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/GEMINI.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/LICENSE +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/Makefile +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/P1_rules.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/P2_rules.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/P3_rules.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/P4_rules.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/locale/en/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/locale/en/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/locale/ko/LC_MESSAGES/messages.mo +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/locale/ko/LC_MESSAGES/messages.po +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/pytest-ci.ini +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/pytest.ini +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/requirements.test.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/requirements.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/setup.cfg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/create.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/dataclass.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/default.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/delete.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/list.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/read.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/update.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/alias/utils.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/code_server.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/config.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/devtools.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/plugin/create.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/plugin/publish.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/cli/plugin/run.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/agent/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/agent/core.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/agent/ray.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/agent/service.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/annotation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/core.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/data_collection.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/hitl.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/integration.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/ml.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/backend/models.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/base.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/exceptions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/ray/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/ray/core.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/ray/serve.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/utils.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/validators/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/clients/validators/collections.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/config.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/.gitignore +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/README.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/2019-05-28-first-blog-post.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/2019-05-29-long-blog-post.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/2021-08-01-mdx-blog-post.mdx +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/docusaurus-plushie-banner.jpeg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/2021-08-26-welcome/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/authors.yml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/blog/tags.yml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/agent.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/annotation-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/backend.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/base.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/core-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/data-collection-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/hitl-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/integration-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/ml-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/clients/ray.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/plugins/categories.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/api/plugins/utils.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/categories.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/cli-usage.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/concepts/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/configuration.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/contributing.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/examples/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/faq.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/converters/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/utils/file.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/utils/network.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/utils/storage.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/features/utils/types.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/installation.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/introduction.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/plugins/developing-upload-template.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/plugins/plugins.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/plugins/upload-plugins.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/quickstart.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/troubleshooting.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/_category_.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/congratulations.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-blog-post.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-document.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/create-a-page.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/deploy-your-site.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-basics/markdown-features.mdx +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-extras/_category_.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-extras/img/docsVersionDropdown.png +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-extras/img/localeDropdown.png +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-extras/manage-docs-versions.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docs/tutorial-extras/translate-your-site.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/docusaurus.config.ts +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/code.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/agent.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/annotation-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/backend.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/base.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/core-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/data-collection-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/hitl-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/integration-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ml-mixin.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/clients/ray.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/api/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/categories.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/cli-usage.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/concepts/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/configuration.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/contributing.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/examples/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/faq.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/converters/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/index.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/file.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/network.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/storage.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/features/utils/types.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/installation.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/introduction.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/developing-upload-template.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/plugins.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/plugins/upload-plugins.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/quickstart.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current/troubleshooting.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-plugin-content-docs/current.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/footer.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/i18n/ko/docusaurus-theme-classic/navbar.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/package-lock.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/package.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/index.tsx +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/components/HomepageFeatures/styles.module.css +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/css/custom.css +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/pages/index.module.css +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/pages/index.tsx +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/src/pages/markdown-page.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/.nojekyll +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/docusaurus-social-card.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/docusaurus.png +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/favicon.ico +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/logo.png +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_mountain.svg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_react.svg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/static/img/undraw_docusaurus_tree.svg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/docs/tsconfig.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/server.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/app.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/services/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/services/job_service.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/services/plugin_service.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/services/serve_service.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/config_tab.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/deployment_tab.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/http_tab.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/jobs_tab.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/serve_tab.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/ui/status_bar.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/utils/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/utils/json_viewer.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/utils/log_formatter.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/utils/styles.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app/utils/ui_components.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/devtools/streamlit_app.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/i18n.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/loggers.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/README.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/actions/validation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/data_validation/templates/plugin/validation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/decorators.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/action.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/enums.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/exceptions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/models.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/run.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/actions/export/utils.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/export/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/deployment.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/gradio.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/inference.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/test.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/train.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/actions/tune.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/base/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/base/inference.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/templates/plugin/inference.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/templates/plugin/test.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/neural_net/templates/plugin/train.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/actions/post_annotation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/post_annotation/templates/plugin/post_annotation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/actions/pre_annotation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/actions/to_task.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/pre_annotation.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/pre_annotation/templates/plugin/to_task.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/registry.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/actions/auto_label.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/smart_tool/templates/plugin/auto_label.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/templates.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/action.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/context.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/enums.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/exceptions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/factory.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/models.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/orchestrator.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/registry.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/run.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/base.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/cleanup.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/collection.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/generate.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/initialize.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/metadata.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/organize.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/upload.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/steps/validate.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/base.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/batch.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/data_unit/single.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/flat.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/file_discovery/recursive.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/excel.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/metadata/none.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/async_upload.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/upload/sync.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/strategies/validation/default.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/actions/upload/utils.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/templates/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/templates/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/categories/upload/templates/plugin/upload.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/enums.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/exceptions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/cookiecutter.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/hooks/post_gen_project.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/hooks/pre_prompt.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/plugin-config-schema.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/schema.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.gitignore +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/.pre-commit-config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/README.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/config.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/plugin/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/pyproject.toml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/templates/synapse-{{cookiecutter.plugin_code}}-plugin/requirements.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/upload.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/utils/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/utils/actions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/utils/config.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/utils/legacy.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/plugins/utils/registry.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/shared/enums.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/types.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/coco/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/coco/from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/coco/to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/dm/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/dm/from_v1.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/dm/to_v1.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/pascal/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/pascal/from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/pascal/to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/yolo/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/yolo/from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/converters/yolo/to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/dataset.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/debug.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/encryption.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/archive.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/checksum.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/chunking.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/download.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/encoding.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/io.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/video/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file/video/transcode.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/file.py.backup +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/http.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/module_loading.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/network.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/pydantic/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/pydantic/config.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/pydantic/errors.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/pydantic/validators.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/file_system.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/gcp.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/http.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/s3.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/providers/sftp.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/storage/registry.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk/utils/string.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk.egg-info/dependency_links.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk.egg-info/entry_points.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/synapse_sdk.egg-info/top_level.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/README.md +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/test_backend_models.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/test_base_client.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/test_collection_validators.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/clients/test_ray_client.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/loggers/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/loggers/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/loggers/test_base_logger.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/data_validation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/data_validation/validation/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/data_validation/validation/test_validation_action.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/fixtures/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/integration/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/integration/test_workflow.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/steps/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/strategies/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_action.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_context.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_enums.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_exceptions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_models.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_orchestrator.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_run.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/upload/test_utils.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/utils/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/utils/test_actions.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/utils/test_config.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/plugins/utils/test_registry.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/test_cli.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/test_cli_integration.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/test_data/metadata.xlsx +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/__init__,py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/coco.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/annotations.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data8.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/test/new_dm_data9.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/annotations.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data4.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data5.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/train/new_dm_data6.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/annotations.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/categorized/valid/new_dm_data7.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/annotations.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data1.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data2.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/coco/not_categorized/new_dm_data3.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_1.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_2.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/json/dm_3.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_1.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_2.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/test/original_files/dm_3.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_4.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_5.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_6.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/json/dm_7.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_4.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_5.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_6.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/train/original_files/dm_7.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_8.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/json/dm_9.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_8.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/categorized/valid/original_files/dm_9.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_1.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_2.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/json/dm_3.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_1.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_2.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/not_categorized/original_files/dm_3.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/ver1/json/25669.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/dm/ver2/json/25669.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/classes.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9139.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9140.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Annotations/9141.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9139.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9140.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/test/Images/9141.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9136.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9137.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Annotations/9138.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9136.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9137.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/train/Images/9138.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9125.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9126.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Annotations/9127.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9125.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9126.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/categorized/valid/Images/9127.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9122.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9123.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Annotations/9124.xml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9122.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9123.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/Images/9124.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/pascal/not_categorized/classes.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/dataset.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13744.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13745.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/images/13746.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13744.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13745.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/test/labels/13746.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/images/13782.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/train/labels/13782.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13761.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/images/13764.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13761.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/categorized/valid/labels/13764.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/classes.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/dataset.yaml +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25332.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/images/25334.jpg +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25332.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/image/yolo/not_categorized/labels/25334.txt +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/pcd/dm/ver1/json/23791.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/pcd/dm/ver2/json/23791.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/prompt/dm/ver1/json/18662.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/prompt/dm/ver2/json/18662.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/text/dm/ver1/json/23811.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/text/dm/ver2/json/23811.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/video/dm/ver1/json/23831.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/data_types/video/dm/ver2/json/23831.json +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/dm_schema.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/pascal.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/fixtures/yolo.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_coco_from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_coco_to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_dm_v1_to_v2.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_dm_v2_to_v1.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_pascal_from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_pascal_to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_yolo_from_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/converters/test_yolo_to_dm.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/__init__.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_archive.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_checksum.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_chunking.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_download.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_encoding.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_io.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/file/test_video_transcode.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/storage/conftest.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/storage/test_file_system_storage.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/storage/test_provider_selection.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/test_debug.py +0 -0
- {synapse_sdk-2025.9.4 → synapse_sdk-2025.10.1}/tests/utils/test_network.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: synapse-sdk
|
|
3
|
-
Version: 2025.
|
|
3
|
+
Version: 2025.10.1
|
|
4
4
|
Summary: synapse sdk
|
|
5
5
|
Author-email: datamaker <developer@datamaker.io>
|
|
6
6
|
License: MIT
|
|
@@ -26,7 +26,7 @@ Requires-Dist: websockets
|
|
|
26
26
|
Requires-Dist: ffmpeg-python==0.2.0
|
|
27
27
|
Requires-Dist: sentry-sdk==2.38.0
|
|
28
28
|
Provides-Extra: all
|
|
29
|
-
Requires-Dist: ray[all]==2.
|
|
29
|
+
Requires-Dist: ray[all]==2.50.0; extra == "all"
|
|
30
30
|
Requires-Dist: python-nmap; extra == "all"
|
|
31
31
|
Requires-Dist: hyperopt; extra == "all"
|
|
32
32
|
Requires-Dist: bayesian-optimization==1.4.3; extra == "all"
|
|
@@ -62,6 +62,19 @@ A Python SDK for building and managing ML plugins, data annotation workflows, an
|
|
|
62
62
|
- **🛠️ Development Tools**: Interactive web dashboard for monitoring and debugging
|
|
63
63
|
- **⚡ CLI Interface**: Command-line tool for configuration, plugin management, and development
|
|
64
64
|
|
|
65
|
+
## 📅 Versioning
|
|
66
|
+
|
|
67
|
+
Synapse SDK uses **CalVer (Calendar Versioning)**.
|
|
68
|
+
The version format is `YYYY.MM.PATCH`, based on the release year and month.
|
|
69
|
+
|
|
70
|
+
Examples:
|
|
71
|
+
|
|
72
|
+
- `2025.9.5` → 5th release in September 2025
|
|
73
|
+
- `2025.10.1` → 1st release in October 2025
|
|
74
|
+
|
|
75
|
+
We recommend using the latest monthly release.
|
|
76
|
+
If needed, you can pin to a specific month, e.g. `2025.9.*`.
|
|
77
|
+
|
|
65
78
|
## 🚀 Quick Start
|
|
66
79
|
|
|
67
80
|
```bash
|
|
@@ -13,6 +13,19 @@ A Python SDK for building and managing ML plugins, data annotation workflows, an
|
|
|
13
13
|
- **🛠️ Development Tools**: Interactive web dashboard for monitoring and debugging
|
|
14
14
|
- **⚡ CLI Interface**: Command-line tool for configuration, plugin management, and development
|
|
15
15
|
|
|
16
|
+
## 📅 Versioning
|
|
17
|
+
|
|
18
|
+
Synapse SDK uses **CalVer (Calendar Versioning)**.
|
|
19
|
+
The version format is `YYYY.MM.PATCH`, based on the release year and month.
|
|
20
|
+
|
|
21
|
+
Examples:
|
|
22
|
+
|
|
23
|
+
- `2025.9.5` → 5th release in September 2025
|
|
24
|
+
- `2025.10.1` → 1st release in October 2025
|
|
25
|
+
|
|
26
|
+
We recommend using the latest monthly release.
|
|
27
|
+
If needed, you can pin to a specific month, e.g. `2025.9.*`.
|
|
28
|
+
|
|
16
29
|
## 🚀 Quick Start
|
|
17
30
|
|
|
18
31
|
```bash
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: models
|
|
3
|
+
title: Plugin Models
|
|
4
|
+
sidebar_position: 1
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Plugin Models
|
|
8
|
+
|
|
9
|
+
Core data models and structures for the plugin system.
|
|
10
|
+
|
|
11
|
+
## PluginRelease
|
|
12
|
+
|
|
13
|
+
Represents a specific version of a plugin.
|
|
14
|
+
|
|
15
|
+
```python
|
|
16
|
+
from synapse_sdk.plugins.models import PluginRelease
|
|
17
|
+
|
|
18
|
+
release = PluginRelease(plugin_path="./my-plugin")
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Properties
|
|
22
|
+
|
|
23
|
+
- `plugin`: Plugin code identifier
|
|
24
|
+
- `version`: Plugin version
|
|
25
|
+
- `code`: Combined plugin and version string
|
|
26
|
+
- `category`: Plugin category
|
|
27
|
+
- `name`: Human-readable plugin name
|
|
28
|
+
- `actions`: Available plugin actions
|
|
29
|
+
|
|
30
|
+
## PluginAction
|
|
31
|
+
|
|
32
|
+
Represents a plugin action execution request.
|
|
33
|
+
|
|
34
|
+
```python
|
|
35
|
+
from synapse_sdk.plugins.models import PluginAction
|
|
36
|
+
|
|
37
|
+
action = PluginAction(
|
|
38
|
+
plugin="my-plugin",
|
|
39
|
+
version="1.0.0",
|
|
40
|
+
action="process",
|
|
41
|
+
params={"input": "data"}
|
|
42
|
+
)
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Run
|
|
46
|
+
|
|
47
|
+
Execution context for plugin actions.
|
|
48
|
+
|
|
49
|
+
```python
|
|
50
|
+
def start(self):
|
|
51
|
+
# Log messages
|
|
52
|
+
self.run.log("Processing started")
|
|
53
|
+
|
|
54
|
+
# Update progress
|
|
55
|
+
self.run.set_progress(0.5)
|
|
56
|
+
|
|
57
|
+
# Set metrics
|
|
58
|
+
self.run.set_metrics({"processed": 100})
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Development Logging
|
|
62
|
+
|
|
63
|
+
The `Run` class includes a specialized logging system for plugin developers with the `log_dev_event()` method and `DevLog` model.
|
|
64
|
+
|
|
65
|
+
#### DevLog Model
|
|
66
|
+
|
|
67
|
+
Structured model for development event logging:
|
|
68
|
+
|
|
69
|
+
```python
|
|
70
|
+
from synapse_sdk.shared.enums import Context
|
|
71
|
+
|
|
72
|
+
class DevLog(BaseModel):
|
|
73
|
+
event_type: str # Event category (automatically generated as '{action_name}_dev_log')
|
|
74
|
+
message: str # Descriptive message
|
|
75
|
+
data: dict | None # Optional additional data
|
|
76
|
+
level: Context # Event severity level
|
|
77
|
+
created: str # ISO timestamp
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### log_dev_event Method
|
|
81
|
+
|
|
82
|
+
Log custom development events for debugging and monitoring:
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
def start(self):
|
|
86
|
+
# Basic event logging (event_type automatically set to '{action_name}_dev_log')
|
|
87
|
+
self.run.log_dev_event('Data validation completed', {'records_count': 100})
|
|
88
|
+
|
|
89
|
+
# Performance tracking
|
|
90
|
+
self.run.log_dev_event('Processing time recorded', {'duration_ms': 1500})
|
|
91
|
+
|
|
92
|
+
# Debug with warning level
|
|
93
|
+
self.run.log_dev_event('Variable state checkpoint',
|
|
94
|
+
{'variable_x': 42}, level=Context.WARNING)
|
|
95
|
+
|
|
96
|
+
# Simple event without data
|
|
97
|
+
self.run.log_dev_event('Plugin initialization complete')
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**Parameters:**
|
|
101
|
+
|
|
102
|
+
- `message` (str): Human-readable description
|
|
103
|
+
- `data` (dict, optional): Additional context data
|
|
104
|
+
- `level` (Context, optional): Event severity (default: Context.INFO)
|
|
105
|
+
|
|
106
|
+
**Note:** The `event_type` is automatically generated as `{action_name}_dev_log` and cannot be modified by plugin developers.
|
|
107
|
+
|
|
108
|
+
**Use Cases:**
|
|
109
|
+
|
|
110
|
+
- **Debugging**: Track variable states and execution flow
|
|
111
|
+
- **Performance**: Record processing times and resource usage
|
|
112
|
+
- **Validation**: Log data validation results
|
|
113
|
+
- **Error Tracking**: Capture detailed error information
|
|
114
|
+
- **Progress Monitoring**: Record intermediate states in long-running tasks
|
|
@@ -169,6 +169,45 @@ flowchart TD
|
|
|
169
169
|
|
|
170
170
|
The design follows the **Template Method Pattern** where `BaseExporter.export()` defines the algorithm skeleton, and subclasses customize specific steps through the hook methods.
|
|
171
171
|
|
|
172
|
+
## Plugin Configuration
|
|
173
|
+
|
|
174
|
+
Export plugin templates include configuration fields for filtering and plugin discovery:
|
|
175
|
+
|
|
176
|
+
```yaml
|
|
177
|
+
actions:
|
|
178
|
+
export:
|
|
179
|
+
entrypoint: plugin.export.Exporter
|
|
180
|
+
annotation_types:
|
|
181
|
+
- image
|
|
182
|
+
- video
|
|
183
|
+
- audio
|
|
184
|
+
- text
|
|
185
|
+
- pcd
|
|
186
|
+
- prompt
|
|
187
|
+
|
|
188
|
+
data_types:
|
|
189
|
+
- image
|
|
190
|
+
- video
|
|
191
|
+
- audio
|
|
192
|
+
- text
|
|
193
|
+
- pcd
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### Configuration Fields
|
|
197
|
+
|
|
198
|
+
- **data_types**: List of supported data types for filtering export plugins (plugin-level filter)
|
|
199
|
+
|
|
200
|
+
- Supported values: `image`, `video`, `audio`, `text`, `pcd`
|
|
201
|
+
- Used by the platform to filter and display relevant export plugins to users based on their data type
|
|
202
|
+
|
|
203
|
+
- **annotation_types**: List of supported annotation types for filtering export plugins (action-level filter)
|
|
204
|
+
- Supported values: `image`, `video`, `audio`, `text`, `pcd`, `prompt`
|
|
205
|
+
- Defined within each action's configuration (e.g., `actions.export.annotation_types`)
|
|
206
|
+
- Used by the platform to filter and display relevant export plugins to users based on their annotation type
|
|
207
|
+
- Each action can have different annotation type requirements
|
|
208
|
+
|
|
209
|
+
**Best Practice**: Customize these fields to accurately reflect your plugin's capabilities. The template includes all common types as examples, but you should modify the list to match what your plugin actually supports.
|
|
210
|
+
|
|
172
211
|
## BaseExporter Class Structure
|
|
173
212
|
|
|
174
213
|
The new BaseExporter class provides an object-oriented approach for export plugins:
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: models
|
|
3
|
+
title: 플러그인 모델
|
|
4
|
+
sidebar_position: 1
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 플러그인 모델
|
|
8
|
+
|
|
9
|
+
플러그인 시스템의 핵심 데이터 모델 및 구조입니다.
|
|
10
|
+
|
|
11
|
+
## PluginRelease
|
|
12
|
+
|
|
13
|
+
플러그인의 특정 버전을 나타냅니다.
|
|
14
|
+
|
|
15
|
+
```python
|
|
16
|
+
from synapse_sdk.plugins.models import PluginRelease
|
|
17
|
+
|
|
18
|
+
release = PluginRelease(plugin_path="./my-plugin")
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### 속성
|
|
22
|
+
|
|
23
|
+
- `plugin`: 플러그인 코드 식별자
|
|
24
|
+
- `version`: 플러그인 버전
|
|
25
|
+
- `code`: 플러그인과 버전이 결합된 문자열
|
|
26
|
+
- `category`: 플러그인 카테고리
|
|
27
|
+
- `name`: 사람이 읽을 수 있는 플러그인 이름
|
|
28
|
+
- `actions`: 사용 가능한 플러그인 액션
|
|
29
|
+
|
|
30
|
+
## PluginAction
|
|
31
|
+
|
|
32
|
+
플러그인 액션 실행 요청을 나타냅니다.
|
|
33
|
+
|
|
34
|
+
```python
|
|
35
|
+
from synapse_sdk.plugins.models import PluginAction
|
|
36
|
+
|
|
37
|
+
action = PluginAction(
|
|
38
|
+
plugin="my-plugin",
|
|
39
|
+
version="1.0.0",
|
|
40
|
+
action="process",
|
|
41
|
+
params={"input": "data"}
|
|
42
|
+
)
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Run
|
|
46
|
+
|
|
47
|
+
플러그인 액션의 실행 컨텍스트입니다.
|
|
48
|
+
|
|
49
|
+
```python
|
|
50
|
+
def start(self):
|
|
51
|
+
# 메시지 로깅
|
|
52
|
+
self.run.log("Processing started")
|
|
53
|
+
|
|
54
|
+
# 진행률 업데이트
|
|
55
|
+
self.run.set_progress(0.5)
|
|
56
|
+
|
|
57
|
+
# 메트릭 설정
|
|
58
|
+
self.run.set_metrics({"processed": 100})
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 개발 로깅
|
|
62
|
+
|
|
63
|
+
`Run` 클래스는 `log_dev_event()` 메서드와 `DevLog` 모델을 통해 플러그인 개발자를 위한 특수 로깅 시스템을 포함합니다.
|
|
64
|
+
|
|
65
|
+
#### DevLog 모델
|
|
66
|
+
|
|
67
|
+
개발 이벤트 로깅을 위한 구조화된 모델:
|
|
68
|
+
|
|
69
|
+
```python
|
|
70
|
+
from synapse_sdk.shared.enums import Context
|
|
71
|
+
|
|
72
|
+
class DevLog(BaseModel):
|
|
73
|
+
event_type: str # 이벤트 카테고리 ('{action_name}_dev_log' 형태로 자동 생성)
|
|
74
|
+
message: str # 설명 메시지
|
|
75
|
+
data: dict | None # 선택적 추가 데이터
|
|
76
|
+
level: Context # 이벤트 심각도 수준
|
|
77
|
+
created: str # ISO 타임스탬프
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
#### log_dev_event 메서드
|
|
81
|
+
|
|
82
|
+
디버깅 및 모니터링을 위한 커스텀 개발 이벤트 로깅:
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
def start(self):
|
|
86
|
+
# 기본 이벤트 로깅 (event_type은 '{action_name}_dev_log' 형태로 자동 설정)
|
|
87
|
+
self.run.log_dev_event('데이터 검증 완료', {'records_count': 100})
|
|
88
|
+
|
|
89
|
+
# 성능 추적
|
|
90
|
+
self.run.log_dev_event('처리 시간 기록', {'duration_ms': 1500})
|
|
91
|
+
|
|
92
|
+
# 경고 레벨의 디버그
|
|
93
|
+
self.run.log_dev_event('변수 상태 체크포인트',
|
|
94
|
+
{'variable_x': 42}, level=Context.WARNING)
|
|
95
|
+
|
|
96
|
+
# 데이터 없는 간단한 이벤트
|
|
97
|
+
self.run.log_dev_event('플러그인 초기화 완료')
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
**매개변수:**
|
|
101
|
+
|
|
102
|
+
- `message` (str): 사람이 읽을 수 있는 설명
|
|
103
|
+
- `data` (dict, 선택사항): 추가 컨텍스트 데이터
|
|
104
|
+
- `level` (Context, 선택사항): 이벤트 심각도 (기본값: Context.INFO)
|
|
105
|
+
|
|
106
|
+
**참고:** `event_type`은 `{action_name}_dev_log` 형태로 자동 생성되며 플러그인 개발자가 수정할 수 없습니다.
|
|
107
|
+
|
|
108
|
+
**사용 사례:**
|
|
109
|
+
|
|
110
|
+
- **디버깅**: 변수 상태 및 실행 흐름 추적
|
|
111
|
+
- **성능**: 처리 시간 및 리소스 사용량 기록
|
|
112
|
+
- **검증**: 데이터 검증 결과 로깅
|
|
113
|
+
- **오류 추적**: 상세한 오류 정보 캡처
|
|
114
|
+
- **진행 상황 모니터링**: 장기 실행 작업의 중간 상태 기록
|
|
@@ -169,6 +169,45 @@ flowchart TD
|
|
|
169
169
|
|
|
170
170
|
이 설계는 **템플릿 메서드 패턴**을 따르며, `BaseExporter.export()`가 알고리즘 골격을 정의하고 서브클래스가 훅 메서드를 통해 특정 단계를 커스터마이징합니다.
|
|
171
171
|
|
|
172
|
+
## 플러그인 설정
|
|
173
|
+
|
|
174
|
+
Export 플러그인 템플릿은 필터링 및 플러그인 검색을 위한 설정 필드를 포함합니다:
|
|
175
|
+
|
|
176
|
+
```yaml
|
|
177
|
+
actions:
|
|
178
|
+
export:
|
|
179
|
+
entrypoint: plugin.export.Exporter
|
|
180
|
+
annotation_types:
|
|
181
|
+
- image
|
|
182
|
+
- video
|
|
183
|
+
- audio
|
|
184
|
+
- text
|
|
185
|
+
- pcd
|
|
186
|
+
- prompt
|
|
187
|
+
|
|
188
|
+
data_types:
|
|
189
|
+
- image
|
|
190
|
+
- video
|
|
191
|
+
- audio
|
|
192
|
+
- text
|
|
193
|
+
- pcd
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
### 설정 필드
|
|
197
|
+
|
|
198
|
+
- **data_types**: Export 플러그인 필터링을 위한 지원 데이터 타입 목록 (플러그인 레벨 필터)
|
|
199
|
+
|
|
200
|
+
- 지원 값: `image`, `video`, `audio`, `text`, `pcd`
|
|
201
|
+
- 플랫폼에서 사용자의 데이터 타입에 따라 관련 export 플러그인을 필터링하고 표시하는 데 사용됩니다
|
|
202
|
+
|
|
203
|
+
- **annotation_types**: Export 플러그인 필터링을 위한 어노테이션 타입 목록 (액션 레벨 필터)
|
|
204
|
+
- 지원 값: `image`, `video`, `audio`, `text`, `pcd`, `prompt`
|
|
205
|
+
- 각 액션의 설정 내에서 정의됩니다 (예: `actions.export.annotation_types`)
|
|
206
|
+
- 플랫폼에서 사용자의 주석 타입에 따라 관련 export 플러그인을 필터링하고 표시하는 데 사용됩니다
|
|
207
|
+
- 각 액션마다 다른 어노테이션 타입 요구사항을 가질 수 있습니다
|
|
208
|
+
|
|
209
|
+
**모범 사례**: 플러그인의 실제 기능을 정확히 반영하도록 이 필드들을 커스터마이징하세요. 템플릿에는 모든 일반적인 타입이 예시로 포함되어 있지만, 플러그인이 실제로 지원하는 항목에 맞게 목록을 수정해야 합니다.
|
|
210
|
+
|
|
172
211
|
## BaseExporter 클래스 구조
|
|
173
212
|
|
|
174
213
|
새로운 BaseExporter 클래스는 export 플러그인을 위한 객체지향적 접근 방식을 제공합니다:
|
|
@@ -164,6 +164,7 @@ class Action:
|
|
|
164
164
|
'params': self.params,
|
|
165
165
|
'envs': self.envs,
|
|
166
166
|
'debug': self.debug,
|
|
167
|
+
'action_name': self.name,
|
|
167
168
|
}
|
|
168
169
|
return self.run_class(self.job_id, context)
|
|
169
170
|
|
|
@@ -184,7 +185,7 @@ class Action:
|
|
|
184
185
|
|
|
185
186
|
# Sentry init if SENTRY_DSN is set
|
|
186
187
|
if needs_sentry_init():
|
|
187
|
-
runtime_env['worker_process_setup_hook'] =
|
|
188
|
+
runtime_env['worker_process_setup_hook'] = 'synapse_sdk.shared'
|
|
188
189
|
|
|
189
190
|
# 맨 마지막에 진행되어야 함
|
|
190
191
|
runtime_env['env_vars'] = self.envs
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
actions:
|
|
2
|
+
export:
|
|
3
|
+
entrypoint: plugin.export.Exporter
|
|
4
|
+
# Filter to only export action specific annotation types (e.g., only export image annotations project)
|
|
5
|
+
# Supported types: image, video, audio, text, pcd, prompt
|
|
6
|
+
annotation_types:
|
|
7
|
+
- image
|
|
8
|
+
- video
|
|
9
|
+
- audio
|
|
10
|
+
- text
|
|
11
|
+
- pcd
|
|
12
|
+
- prompt
|
|
13
|
+
|
|
14
|
+
# Filter to only export specific data types (e.g., only export image data)
|
|
15
|
+
# Supported types: image, video, audio, text, pcd
|
|
16
|
+
data_types:
|
|
17
|
+
- image
|
|
18
|
+
- video
|
|
19
|
+
- audio
|
|
20
|
+
- text
|
|
21
|
+
- pcd
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
from pathlib import Path
|
|
2
|
+
from typing import Generator
|
|
3
|
+
|
|
4
|
+
from . import BaseExporter
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Exporter(BaseExporter):
|
|
8
|
+
"""Plugin export action interface for organizing files.
|
|
9
|
+
|
|
10
|
+
This class provides a minimal interface for plugin developers to implement
|
|
11
|
+
their own export logic.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
def __init__(self, run, export_items: Generator, path_root: Path, **params):
|
|
15
|
+
"""Initialize the plugin export action class.
|
|
16
|
+
Args:
|
|
17
|
+
run: Plugin run object with logging capabilities.
|
|
18
|
+
export_items (generator):
|
|
19
|
+
- data (dict): dm_schema_data information.
|
|
20
|
+
- files (dict): File information. Includes file URL, original file path, metadata, etc.
|
|
21
|
+
- id (int): target ID (ex. assignment id, task id, ground_truth_event id)
|
|
22
|
+
path_root: pathlib object, the path to export
|
|
23
|
+
**params: Additional parameters
|
|
24
|
+
- name (str): The name of the action.
|
|
25
|
+
- description (str | None): The description of the action.
|
|
26
|
+
- storage (int): The storage ID to save the exported data.
|
|
27
|
+
- save_original_file (bool): Whether to save the original file.
|
|
28
|
+
- path (str): The path to save the exported data.
|
|
29
|
+
- target (str): The target source to export data from. (ex. ground_truth, assignment, task)
|
|
30
|
+
- filter (dict): The filter criteria to apply.
|
|
31
|
+
- extra_params (dict | None): Additional parameters for export customization.
|
|
32
|
+
Example: {"include_metadata": True, "compression": "gzip"}
|
|
33
|
+
- count (int): Total number of results.
|
|
34
|
+
- results (list): List of results fetched through the list API.
|
|
35
|
+
- project_id (int): Project ID.
|
|
36
|
+
- configuration (dict): Project configuration.
|
|
37
|
+
"""
|
|
38
|
+
super().__init__(run, export_items, path_root, **params)
|
|
39
|
+
|
|
40
|
+
def export(self, export_items=None, results=None, **kwargs) -> dict:
|
|
41
|
+
"""Executes the export task using the base class implementation.
|
|
42
|
+
|
|
43
|
+
Args:
|
|
44
|
+
export_items: Optional export items to process. If not provided, uses self.export_items.
|
|
45
|
+
results: Optional results data to process alongside export_items.
|
|
46
|
+
**kwargs: Additional parameters for export customization.
|
|
47
|
+
|
|
48
|
+
Returns:
|
|
49
|
+
dict: Result
|
|
50
|
+
"""
|
|
51
|
+
return super().export(export_items, results, **kwargs)
|
|
52
|
+
|
|
53
|
+
def convert_data(self, data):
|
|
54
|
+
"""Converts the data."""
|
|
55
|
+
return data
|
|
56
|
+
|
|
57
|
+
def before_convert(self, data):
|
|
58
|
+
"""Preprocesses the data before conversion."""
|
|
59
|
+
return data
|
|
60
|
+
|
|
61
|
+
def after_convert(self, data):
|
|
62
|
+
"""Post-processes the data after conversion."""
|
|
63
|
+
return data
|
|
64
|
+
|
|
65
|
+
def sample_dev_log(self):
|
|
66
|
+
"""Sample development logging examples for plugin developers.
|
|
67
|
+
|
|
68
|
+
This method demonstrates various ways to use log_dev_event() for debugging,
|
|
69
|
+
monitoring, and tracking plugin execution. The event_type is automatically
|
|
70
|
+
generated as 'export_dev_log' for export actions and cannot be modified.
|
|
71
|
+
|
|
72
|
+
Use Cases:
|
|
73
|
+
1. Process Tracking: Log when important processes start/complete
|
|
74
|
+
2. Error Handling: Capture detailed error information with appropriate severity
|
|
75
|
+
3. Performance Monitoring: Record timing and resource usage
|
|
76
|
+
4. Data Validation: Log validation results and data quality metrics
|
|
77
|
+
5. Debug Information: Track variable states and execution flow
|
|
78
|
+
|
|
79
|
+
Examples show different scenarios where development logging is beneficial:
|
|
80
|
+
- Basic process logging with structured data
|
|
81
|
+
- Error logging with exception details and danger level
|
|
82
|
+
- Performance tracking with timing information
|
|
83
|
+
- Validation logging with success/failure status
|
|
84
|
+
"""
|
|
85
|
+
# Example 1: Basic Process Tracking
|
|
86
|
+
# Use when: Starting important processes that you want to monitor
|
|
87
|
+
# Benefits: Helps track execution flow and identify bottlenecks
|
|
88
|
+
self.run.log_dev_event(
|
|
89
|
+
'Starting data conversion process',
|
|
90
|
+
{'data_type': 'img', 'data_size': 'unknown', 'conversion_method': 'custom_format'},
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
# Example 2: Error Handling with Detailed Information
|
|
94
|
+
# Use when: Catching exceptions that you want to analyze later
|
|
95
|
+
# Benefits: Provides structured error data for debugging and monitoring
|
|
96
|
+
from synapse_sdk.shared.enums import Context
|
|
97
|
+
|
|
98
|
+
try:
|
|
99
|
+
# Simulated operation that might fail
|
|
100
|
+
pass
|
|
101
|
+
except Exception as e:
|
|
102
|
+
self.run.log_dev_event(
|
|
103
|
+
f'Data conversion failed: {str(e)}',
|
|
104
|
+
{
|
|
105
|
+
'error_type': type(e).__name__,
|
|
106
|
+
'error_details': str(e),
|
|
107
|
+
'operation': 'data_conversion',
|
|
108
|
+
'recovery_attempted': False,
|
|
109
|
+
},
|
|
110
|
+
level=Context.DANGER,
|
|
111
|
+
)
|
|
112
|
+
|
|
113
|
+
# Example 3: Performance Monitoring
|
|
114
|
+
# Use when: Tracking processing time for optimization
|
|
115
|
+
# Benefits: Identifies performance bottlenecks and optimization opportunities
|
|
116
|
+
import time
|
|
117
|
+
|
|
118
|
+
start_time = time.time()
|
|
119
|
+
# Simulated processing work
|
|
120
|
+
time.sleep(0.001)
|
|
121
|
+
processing_time = time.time() - start_time
|
|
122
|
+
|
|
123
|
+
self.run.log_dev_event(
|
|
124
|
+
'File processing completed',
|
|
125
|
+
{
|
|
126
|
+
'processing_time_ms': round(processing_time * 1000, 2),
|
|
127
|
+
'files_processed': 1,
|
|
128
|
+
'performance_rating': 'excellent' if processing_time < 0.1 else 'normal',
|
|
129
|
+
},
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
# Example 4: Data Validation Logging
|
|
133
|
+
# Use when: Validating data quality or structure
|
|
134
|
+
# Benefits: Helps identify data issues and track validation metrics
|
|
135
|
+
validation_passed = True # Simulated validation result
|
|
136
|
+
self.run.log_dev_event(
|
|
137
|
+
'Data validation completed',
|
|
138
|
+
{
|
|
139
|
+
'validation_passed': validation_passed,
|
|
140
|
+
'validation_rules': ['format_check', 'required_fields', 'data_types'],
|
|
141
|
+
'data_quality_score': 95.5,
|
|
142
|
+
},
|
|
143
|
+
level=Context.SUCCESS if validation_passed else Context.WARNING,
|
|
144
|
+
)
|
|
145
|
+
|
|
146
|
+
# Example 5: Debug Information with Variable States
|
|
147
|
+
# Use when: Debugging complex logic or tracking variable changes
|
|
148
|
+
# Benefits: Provides insight into execution state at specific points
|
|
149
|
+
current_batch_size = 100
|
|
150
|
+
memory_usage = 45.2 # Simulated memory usage in MB
|
|
151
|
+
|
|
152
|
+
self.run.log_dev_event(
|
|
153
|
+
'Processing checkpoint reached',
|
|
154
|
+
{
|
|
155
|
+
'current_batch_size': current_batch_size,
|
|
156
|
+
'memory_usage_mb': memory_usage,
|
|
157
|
+
'checkpoint_location': 'after_data_preprocessing',
|
|
158
|
+
'next_operation': 'file_saving',
|
|
159
|
+
},
|
|
160
|
+
)
|