flowyml 1.7.1__py3-none-any.whl → 1.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. flowyml/assets/base.py +15 -0
  2. flowyml/assets/dataset.py +570 -17
  3. flowyml/assets/metrics.py +5 -0
  4. flowyml/assets/model.py +1052 -15
  5. flowyml/cli/main.py +709 -0
  6. flowyml/cli/stack_cli.py +138 -25
  7. flowyml/core/__init__.py +17 -0
  8. flowyml/core/executor.py +231 -37
  9. flowyml/core/image_builder.py +129 -0
  10. flowyml/core/log_streamer.py +227 -0
  11. flowyml/core/orchestrator.py +59 -4
  12. flowyml/core/pipeline.py +65 -13
  13. flowyml/core/routing.py +558 -0
  14. flowyml/core/scheduler.py +88 -5
  15. flowyml/core/step.py +9 -1
  16. flowyml/core/step_grouping.py +49 -35
  17. flowyml/core/types.py +407 -0
  18. flowyml/integrations/keras.py +247 -82
  19. flowyml/monitoring/alerts.py +10 -0
  20. flowyml/monitoring/notifications.py +104 -25
  21. flowyml/monitoring/slack_blocks.py +323 -0
  22. flowyml/plugins/__init__.py +251 -0
  23. flowyml/plugins/alerters/__init__.py +1 -0
  24. flowyml/plugins/alerters/slack.py +168 -0
  25. flowyml/plugins/base.py +752 -0
  26. flowyml/plugins/config.py +478 -0
  27. flowyml/plugins/deployers/__init__.py +22 -0
  28. flowyml/plugins/deployers/gcp_cloud_run.py +200 -0
  29. flowyml/plugins/deployers/sagemaker.py +306 -0
  30. flowyml/plugins/deployers/vertex.py +290 -0
  31. flowyml/plugins/integration.py +369 -0
  32. flowyml/plugins/manager.py +510 -0
  33. flowyml/plugins/model_registries/__init__.py +22 -0
  34. flowyml/plugins/model_registries/mlflow.py +159 -0
  35. flowyml/plugins/model_registries/sagemaker.py +489 -0
  36. flowyml/plugins/model_registries/vertex.py +386 -0
  37. flowyml/plugins/orchestrators/__init__.py +13 -0
  38. flowyml/plugins/orchestrators/sagemaker.py +443 -0
  39. flowyml/plugins/orchestrators/vertex_ai.py +461 -0
  40. flowyml/plugins/registries/__init__.py +13 -0
  41. flowyml/plugins/registries/ecr.py +321 -0
  42. flowyml/plugins/registries/gcr.py +313 -0
  43. flowyml/plugins/registry.py +454 -0
  44. flowyml/plugins/stack.py +494 -0
  45. flowyml/plugins/stack_config.py +537 -0
  46. flowyml/plugins/stores/__init__.py +13 -0
  47. flowyml/plugins/stores/gcs.py +460 -0
  48. flowyml/plugins/stores/s3.py +453 -0
  49. flowyml/plugins/trackers/__init__.py +11 -0
  50. flowyml/plugins/trackers/mlflow.py +316 -0
  51. flowyml/plugins/validators/__init__.py +3 -0
  52. flowyml/plugins/validators/deepchecks.py +119 -0
  53. flowyml/registry/__init__.py +2 -1
  54. flowyml/registry/model_environment.py +109 -0
  55. flowyml/registry/model_registry.py +241 -96
  56. flowyml/serving/__init__.py +17 -0
  57. flowyml/serving/model_server.py +628 -0
  58. flowyml/stacks/__init__.py +60 -0
  59. flowyml/stacks/aws.py +93 -0
  60. flowyml/stacks/base.py +62 -0
  61. flowyml/stacks/components.py +12 -0
  62. flowyml/stacks/gcp.py +44 -9
  63. flowyml/stacks/plugins.py +115 -0
  64. flowyml/stacks/registry.py +2 -1
  65. flowyml/storage/sql.py +401 -12
  66. flowyml/tracking/experiment.py +8 -5
  67. flowyml/ui/backend/Dockerfile +87 -16
  68. flowyml/ui/backend/auth.py +12 -2
  69. flowyml/ui/backend/main.py +149 -5
  70. flowyml/ui/backend/routers/ai_context.py +226 -0
  71. flowyml/ui/backend/routers/assets.py +23 -4
  72. flowyml/ui/backend/routers/auth.py +96 -0
  73. flowyml/ui/backend/routers/deployments.py +660 -0
  74. flowyml/ui/backend/routers/model_explorer.py +597 -0
  75. flowyml/ui/backend/routers/plugins.py +103 -51
  76. flowyml/ui/backend/routers/projects.py +91 -8
  77. flowyml/ui/backend/routers/runs.py +132 -1
  78. flowyml/ui/backend/routers/schedules.py +54 -29
  79. flowyml/ui/backend/routers/templates.py +319 -0
  80. flowyml/ui/backend/routers/websocket.py +2 -2
  81. flowyml/ui/frontend/Dockerfile +55 -6
  82. flowyml/ui/frontend/dist/assets/index-B5AsPTSz.css +1 -0
  83. flowyml/ui/frontend/dist/assets/index-dFbZ8wD8.js +753 -0
  84. flowyml/ui/frontend/dist/index.html +2 -2
  85. flowyml/ui/frontend/dist/logo.png +0 -0
  86. flowyml/ui/frontend/nginx.conf +65 -4
  87. flowyml/ui/frontend/package-lock.json +1415 -74
  88. flowyml/ui/frontend/package.json +4 -0
  89. flowyml/ui/frontend/public/logo.png +0 -0
  90. flowyml/ui/frontend/src/App.jsx +10 -7
  91. flowyml/ui/frontend/src/app/assets/page.jsx +890 -321
  92. flowyml/ui/frontend/src/app/auth/Login.jsx +90 -0
  93. flowyml/ui/frontend/src/app/dashboard/page.jsx +8 -8
  94. flowyml/ui/frontend/src/app/deployments/page.jsx +786 -0
  95. flowyml/ui/frontend/src/app/model-explorer/page.jsx +1031 -0
  96. flowyml/ui/frontend/src/app/pipelines/page.jsx +12 -2
  97. flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectExperimentsList.jsx +19 -6
  98. flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectMetricsPanel.jsx +1 -1
  99. flowyml/ui/frontend/src/app/runs/[runId]/page.jsx +601 -101
  100. flowyml/ui/frontend/src/app/runs/page.jsx +8 -2
  101. flowyml/ui/frontend/src/app/settings/page.jsx +267 -253
  102. flowyml/ui/frontend/src/components/ArtifactViewer.jsx +62 -2
  103. flowyml/ui/frontend/src/components/AssetDetailsPanel.jsx +424 -29
  104. flowyml/ui/frontend/src/components/AssetTreeHierarchy.jsx +119 -11
  105. flowyml/ui/frontend/src/components/DatasetViewer.jsx +753 -0
  106. flowyml/ui/frontend/src/components/Layout.jsx +6 -0
  107. flowyml/ui/frontend/src/components/PipelineGraph.jsx +79 -29
  108. flowyml/ui/frontend/src/components/RunDetailsPanel.jsx +36 -6
  109. flowyml/ui/frontend/src/components/RunMetaPanel.jsx +113 -0
  110. flowyml/ui/frontend/src/components/TrainingHistoryChart.jsx +514 -0
  111. flowyml/ui/frontend/src/components/TrainingMetricsPanel.jsx +175 -0
  112. flowyml/ui/frontend/src/components/ai/AIAssistantButton.jsx +71 -0
  113. flowyml/ui/frontend/src/components/ai/AIAssistantPanel.jsx +420 -0
  114. flowyml/ui/frontend/src/components/header/Header.jsx +22 -0
  115. flowyml/ui/frontend/src/components/plugins/PluginManager.jsx +4 -4
  116. flowyml/ui/frontend/src/components/plugins/{ZenMLIntegration.jsx → StackImport.jsx} +38 -12
  117. flowyml/ui/frontend/src/components/sidebar/Sidebar.jsx +36 -13
  118. flowyml/ui/frontend/src/contexts/AIAssistantContext.jsx +245 -0
  119. flowyml/ui/frontend/src/contexts/AuthContext.jsx +108 -0
  120. flowyml/ui/frontend/src/hooks/useAIContext.js +156 -0
  121. flowyml/ui/frontend/src/hooks/useWebGPU.js +54 -0
  122. flowyml/ui/frontend/src/layouts/MainLayout.jsx +6 -0
  123. flowyml/ui/frontend/src/router/index.jsx +47 -20
  124. flowyml/ui/frontend/src/services/pluginService.js +3 -1
  125. flowyml/ui/server_manager.py +5 -5
  126. flowyml/ui/utils.py +157 -39
  127. flowyml/utils/config.py +37 -15
  128. flowyml/utils/model_introspection.py +123 -0
  129. flowyml/utils/observability.py +30 -0
  130. flowyml-1.8.0.dist-info/METADATA +174 -0
  131. {flowyml-1.7.1.dist-info → flowyml-1.8.0.dist-info}/RECORD +134 -73
  132. {flowyml-1.7.1.dist-info → flowyml-1.8.0.dist-info}/WHEEL +1 -1
  133. flowyml/ui/frontend/dist/assets/index-BqDQvp63.js +0 -630
  134. flowyml/ui/frontend/dist/assets/index-By4trVyv.css +0 -1
  135. flowyml-1.7.1.dist-info/METADATA +0 -477
  136. {flowyml-1.7.1.dist-info → flowyml-1.8.0.dist-info}/entry_points.txt +0 -0
  137. {flowyml-1.7.1.dist-info → flowyml-1.8.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,174 @@
1
+ Metadata-Version: 2.4
2
+ Name: flowyml
3
+ Version: 1.8.0
4
+ Summary: Next-Generation ML Pipeline Framework
5
+ License: Apache-2.0
6
+ License-File: LICENSE
7
+ Author: flowyml Team
8
+ Author-email: support@unicolab.ai
9
+ Requires-Python: >=3.10,<4.0
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: Intended Audience :: Developers
12
+ Classifier: Intended Audience :: Science/Research
13
+ Classifier: License :: OSI Approved :: Apache Software License
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.10
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Programming Language :: Python :: 3.13
19
+ Classifier: Programming Language :: Python :: 3.14
20
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
21
+ Provides-Extra: all
22
+ Provides-Extra: aws
23
+ Provides-Extra: azure
24
+ Provides-Extra: gcp
25
+ Provides-Extra: pytorch
26
+ Provides-Extra: rich
27
+ Provides-Extra: sklearn
28
+ Provides-Extra: tensorflow
29
+ Provides-Extra: ui
30
+ Requires-Dist: alembic (>=1.13.0)
31
+ Requires-Dist: boto3 (>=1.28) ; extra == "aws" or extra == "all"
32
+ Requires-Dist: click (>=8.0.0)
33
+ Requires-Dist: cloudpickle (>=2.0.0)
34
+ Requires-Dist: croniter (>=2.0.1,<3.0.0)
35
+ Requires-Dist: fastapi (>=0.122.0,<0.123.0) ; extra == "ui" or extra == "all"
36
+ Requires-Dist: google-cloud-aiplatform (>=1.35.0) ; extra == "gcp" or extra == "all"
37
+ Requires-Dist: google-cloud-storage (>=2.10.0) ; extra == "gcp" or extra == "all"
38
+ Requires-Dist: httpx (>=0.24,<0.28)
39
+ Requires-Dist: loguru (>=0.7.3,<0.8.0)
40
+ Requires-Dist: numpy (>=1.20.0)
41
+ Requires-Dist: opentelemetry-api (>=1.39.1,<2.0.0)
42
+ Requires-Dist: opentelemetry-exporter-prometheus (>=0.60b1,<0.61)
43
+ Requires-Dist: opentelemetry-instrumentation-fastapi (>=0.60b1,<0.61)
44
+ Requires-Dist: opentelemetry-sdk (>=1.39.1,<2.0.0)
45
+ Requires-Dist: pandas (>=1.3.0)
46
+ Requires-Dist: psutil (>=7.2.2,<8.0.0)
47
+ Requires-Dist: psycopg2-binary (>=2.9.0)
48
+ Requires-Dist: pydantic (>=2.0.0)
49
+ Requires-Dist: python-multipart (>=0.0.9) ; extra == "ui" or extra == "all"
50
+ Requires-Dist: pytz (>=2024.1,<2025.0)
51
+ Requires-Dist: pyyaml (>=6.0)
52
+ Requires-Dist: requests (>=2.28.0)
53
+ Requires-Dist: rich (>=13.0.0) ; extra == "rich"
54
+ Requires-Dist: scikit-learn (>=1.0.0) ; extra == "sklearn" or extra == "all"
55
+ Requires-Dist: sqlalchemy (>=2.0.0)
56
+ Requires-Dist: tensorflow (>=2.12.0) ; extra == "tensorflow" or extra == "all"
57
+ Requires-Dist: toml (>=0.10.2)
58
+ Requires-Dist: torch (>=2.0.0) ; extra == "pytorch" or extra == "all"
59
+ Requires-Dist: uvicorn[standard] (>=0.23.0) ; extra == "ui" or extra == "all"
60
+ Requires-Dist: websockets (>=11.0) ; extra == "ui" or extra == "all"
61
+ Project-URL: Documentation, https://unicolab.github.io/FlowyML/latest
62
+ Project-URL: Homepage, https://github.com/UnicoLab/FlowyML
63
+ Project-URL: Repository, https://github.com/UnicoLab/FlowyML
64
+ Description-Content-Type: text/markdown
65
+
66
+ # 🌊 flowyml
67
+
68
+ <p align="center">
69
+ <img src="docs/logo.png" width="350" alt="flowyml Logo"/>
70
+ <br>
71
+ <em>The Enterprise-Grade ML Pipeline Framework for Humans</em>
72
+ <br>
73
+ <br>
74
+ <p align="center">
75
+ <a href="https://github.com/UnicoLab/FlowyML/actions"><img src="https://img.shields.io/github/actions/workflow/status/UnicoLab/FlowyML/ci.yml?branch=main" alt="CI Status"></a>
76
+ <a href="https://pypi.org/project/flowyml/"><img src="https://img.shields.io/pypi/v/flowyml" alt="PyPI Version"></a>
77
+ <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/python-3.10+-blue.svg" alt="Python 3.10+"></a>
78
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License"></a>
79
+ <a href="https://unicolab.ai"><img src="https://img.shields.io/badge/UnicoLab-ai-red.svg" alt="UnicoLab"></a>
80
+ </p>
81
+ </p>
82
+
83
+ ---
84
+
85
+ **FlowyML** is a lightweight yet powerful ML pipeline orchestration framework. It bridges the gap between rapid experimentation and enterprise production by making assets first-class citizens. Write pipelines in pure Python, and scale them to production without changing a single line of code.
86
+
87
+ ## 🚀 Why FlowyML?
88
+
89
+ | Feature | FlowyML | Traditional Orchestrators |
90
+ |---------|---------|---------------------------|
91
+ | **Developer Experience** | 🐍 **Native Python** - No DSLs, no YAML hell. | 📜 Complex YAML or rigid DSLs. |
92
+ | **Type-Based Routing** | 🧠 **Auto-Routing** - Define WHAT, we handle WHERE. | 🔌 Manual wiring to cloud buckets. |
93
+ | **Smart Caching** | ⚡ **Multi-Level** - Smart content-hashing skips re-runs. | 🐢 Basic file-timestamp checking. |
94
+ | **Asset Management** | 📦 **First-Class Assets** - Models & Datasets with lineage. | 📁 Generic file paths only. |
95
+ | **Multi-Stack** | 🌍 **Abstract Infra** - Switch local/prod with one env var. | 🔒 Vendor lock-in or complex setup. |
96
+ | **GenAI Ready** | 🤖 **LLM Tracing** - Built-in token & cost tracking. | 🧩 Requires external tools. |
97
+
98
+ ---
99
+
100
+ ## ⚡️ Quick Start
101
+
102
+ This is a complete, multi-step ML pipeline with auto-injected context:
103
+
104
+ ```python
105
+ from flowyml import Pipeline, step, context
106
+
107
+ @step(outputs=["dataset"])
108
+ def load_data(batch_size: int = 32):
109
+ return [i for i in range(batch_size)]
110
+
111
+ @step(inputs=["dataset"], outputs=["model"])
112
+ def train_model(dataset, learning_rate: float = 0.01):
113
+ print(f"Training on {len(dataset)} items with lr={learning_rate}")
114
+ return "model_v1"
115
+
116
+ # Configure and Run
117
+ ctx = context(learning_rate=0.05, batch_size=64)
118
+ pipeline = Pipeline("quickstart", context=ctx)
119
+ pipeline.add_step(load_data).add_step(train_model)
120
+
121
+ pipeline.run()
122
+ ```
123
+
124
+ ---
125
+
126
+ ## 🌟 Key Features
127
+
128
+ ### 1. 🧠 Type-Based Artifact Routing (New in 1.8.0)
129
+ Define artifact types in code, and FlowyML automatically routes them to your cloud infrastructure.
130
+ ```python
131
+ @step
132
+ def train(...) -> Model:
133
+ # Auto-saved to GCS/S3 and registered to Vertex AI / SageMaker
134
+ return Model(obj, name="classifier")
135
+ ```
136
+
137
+ ### 2. 🌍 Multi-Stack Configuration
138
+ Manage local, staging, and production environments in a single `flowyml.yaml`.
139
+ ```bash
140
+ export FLOWYML_STACK=production
141
+ python pipeline.py # Now runs on Vertex AI with GCS storage
142
+ ```
143
+
144
+ ### 3. 🛡️ Intelligent Step Grouping
145
+ Group consecutive steps to run in the same container. Perfect for reducing overhead while maintaining clear step boundaries.
146
+
147
+ ### 4. 📊 Built-in Observability
148
+ Beautiful dark-mode dashboard to monitor pipelines, visualize DAGs, and inspect artifacts in real-time.
149
+
150
+ ---
151
+
152
+ ## 📦 Installation
153
+
154
+ ```bash
155
+ # Install core
156
+ pip install flowyml
157
+
158
+ # Install with everything (recommended)
159
+ pip install "flowyml[all]"
160
+ ```
161
+
162
+ ## 📚 Documentation
163
+
164
+ Visit [docs.flowyml.ai](https://docs.flowyml.ai) for:
165
+ - **[Getting Started](https://docs.flowyml.ai/getting-started)**
166
+ - **[Core Concepts](https://docs.flowyml.ai/core/pipelines)**
167
+ - **[Type-Based Routing](https://docs.flowyml.ai/plugins/type_routing)**
168
+ - **[API Reference](https://docs.flowyml.ai/api/core)**
169
+
170
+ ---
171
+ <p align="center">
172
+ <strong>Built with ❤️ by <a href="https://unicolab.ai">UnicoLab</a></strong>
173
+ </p>
174
+
@@ -1,23 +1,23 @@
1
1
  flowyml/__init__.py,sha256=QqY5Rx6LdF1buwbLqMispN7xBV0DIiNqqpYjucxgr7w,5361
2
2
  flowyml/assets/__init__.py,sha256=bbuzbW_PckrdekZEhcbJAwxhx0VWt8V4UeLLIute244,570
3
3
  flowyml/assets/artifact.py,sha256=UTcNhjCvA7AmOlIVeMAo7kkKDZUbn5meUXz7CzWRy0c,1171
4
- flowyml/assets/base.py,sha256=MGZiwbnwx551r_mxZXusrjAo_BvhhdNJkLlPgs7BE4M,6435
5
- flowyml/assets/dataset.py,sha256=tjxcT0FGmC_0vajOWAKJCIRm1O77AeALIELHHuiyTjA,3003
4
+ flowyml/assets/base.py,sha256=OL2Yaw8lkco2J_BbGZdvuhKe4P2xSp5Ne3SuoJAWMbk,7128
5
+ flowyml/assets/dataset.py,sha256=8VEMpvEukNiZ1rS5HMML5eUaZTk_N0ZDkn_KRWPDZcE,23793
6
6
  flowyml/assets/featureset.py,sha256=JRlGXEQQBrh5wgamOBWNd76lbRio0K2O75nMsoM1ZoQ,11211
7
- flowyml/assets/metrics.py,sha256=_f9qBRkl6ByvfVd4iCr64OAqiEEWqnRsbSC-aNjPQes,5097
8
- flowyml/assets/model.py,sha256=Fa7Lw5AfrkLM_L16tNPCy7vSButMWE_W3wixC-pVANk,2649
7
+ flowyml/assets/metrics.py,sha256=8P_gX72aOnauiyKvaxsNiqqWVnoHUZGYNS6DO9NiLx4,5246
8
+ flowyml/assets/model.py,sha256=Q1InQJf00Lz7cVOUkMFRxdO4EDvqr9uKA5lHoqR7cvU,41925
9
9
  flowyml/assets/registry.py,sha256=aYZOeRFGERgLCtUyVAtW7MbFlSofAN1sBSfO2FNj4ls,4830
10
10
  flowyml/assets/report.py,sha256=CR1aI_08GereO-qsVwvy4JdG5_Du5rMcTfoqJ_1jmu8,9207
11
11
  flowyml/cli/__init__.py,sha256=bMA7grr-wiy3LeAjGFSeSG2WQwlXDnQKIeFP7X4-HhM,83
12
12
  flowyml/cli/experiment.py,sha256=ryPzfOlPKtCksjW9E7umJEVmE_5lNjAZqacbYX-azos,6284
13
13
  flowyml/cli/init.py,sha256=FAlk_xhiCYYI_HoiVBqPfiZVC4mGJmDWxqY7R77E7UY,6204
14
- flowyml/cli/main.py,sha256=mltcYGsH-xdvGE5itDoORDyCjyuiNvnS9Ui9-J_qETU,29613
14
+ flowyml/cli/main.py,sha256=i6hNvWxZrqVSsZOt3JcM9zwhymdOI2iJfyBeZ9RPeBo,52912
15
15
  flowyml/cli/models.py,sha256=fg5Ry3J_FaPpoHtnm4Ou-wNGMTrNS9ufYZhdonIZhKU,17772
16
16
  flowyml/cli/rich_utils.py,sha256=-jUZ71oNYVc9O3doCuw0Tx6EBuiNb-erIVXhOFJTEEc,2645
17
17
  flowyml/cli/run.py,sha256=bkpEhE9LOqP3baNE0_inDGw29eYfToyb-8pCUS8084A,2293
18
- flowyml/cli/stack_cli.py,sha256=XrJnOVq9_p6gjurxIV1a-20kAFZutEN58Vdzi2hpm74,16822
18
+ flowyml/cli/stack_cli.py,sha256=RqC15hxC9oFnsGC9NrZyYp18rVIzeEXr80bDp93hY40,21314
19
19
  flowyml/cli/ui.py,sha256=0_R6-YdmtSTWPVZJWjdYV-4FEjSzuOqtlHwz4RmirkA,874
20
- flowyml/core/__init__.py,sha256=zvRAQQ8ySPrDXfjLb2wmg9kibbCfGPs69Fi86xkuv2A,1494
20
+ flowyml/core/__init__.py,sha256=iWxCN3izSYz2gkbcB5TcvCHaCyQ7snik-c6EF9fgDoA,1798
21
21
  flowyml/core/advanced_cache.py,sha256=Rs9z81nNA-j8ShodKHR52veSaEPLVU0Jsg-L-fM4Z7Y,8342
22
22
  flowyml/core/approval.py,sha256=kHyHcKtrPp9xxa1gFOGpd5LXAKtBoHjLwMCqNz_uUGs,2288
23
23
  flowyml/core/cache.py,sha256=rIzIQ-GX2sVO7qAckpZMfmxDLKQU34XJKJp38zywIpk,6197
@@ -27,47 +27,86 @@ flowyml/core/context.py,sha256=M0_K_REzIByJlF-2INCgHqDWFDKXmNQb-2HSmPt_WIY,4816
27
27
  flowyml/core/display.py,sha256=_zVGZAlqG_0n2NxVZPavbtMpFGsV2SKFhzY5s07YIms,22138
28
28
  flowyml/core/error_handling.py,sha256=TovzbOFzQYBHMMM8NjsR8WcbmbdtVjXuW8_fsdbgsPA,11952
29
29
  flowyml/core/execution_status.py,sha256=vlQOOzglpSea4z9_csqnPkFP27jJuXjAke6EQbPMq3g,1347
30
- flowyml/core/executor.py,sha256=ljBV472nJyp_06meeeHmD_aomm_JdJD6y03OiPvMtEA,19168
30
+ flowyml/core/executor.py,sha256=rQZmDKG-7n7W2SH92-Iutajnni8mXnhEZicFeCaLIFI,27547
31
31
  flowyml/core/graph.py,sha256=drVezsgYwva-b8X5FsjExtaW-7NsjYMkchTIPYyb5HQ,6065
32
32
  flowyml/core/hooks.py,sha256=UOqrNY1m3lmVql1FRls6AXDNAV3dxxZl-zO6ijEeRW8,4022
33
+ flowyml/core/image_builder.py,sha256=ySEyyOQDbWm1QJufSq6vyWufmgqzUFDdoFCTYIFO1Oc,4992
34
+ flowyml/core/log_streamer.py,sha256=QpbYfPvZ9ob4ovLQmrLaNyifbyBokh79COKLxl6aO2g,6779
33
35
  flowyml/core/observability.py,sha256=NW05m8zki1TwKeRBBCtAP1UwguMcJasGz8HHgMVbjAU,7011
34
- flowyml/core/orchestrator.py,sha256=8duXRaVNJD6V7s7LBTRESJC7a8dBfQau-UQIk7UFo2Y,37733
36
+ flowyml/core/orchestrator.py,sha256=EuvRt5znN-nglRXiA3YSCInbNKlwMigjZ7gxIe3LVhU,40651
35
37
  flowyml/core/parallel.py,sha256=KGstDu32i9FFKZV0bBRrm1kl3bKjcHmL2js48dVjWlk,12492
36
- flowyml/core/pipeline.py,sha256=4Up-3Iz5_jy578l3-B8jvKkHYxLo6bmieut5jS6JNQ4,46076
38
+ flowyml/core/pipeline.py,sha256=0_ZMSIev34v3_bJn_ca4dX-3Whs6iafCKUBm9i5dv0U,48664
37
39
  flowyml/core/project.py,sha256=7Cv_MUnXrD2e69Pzwo4ThXhGyjvP45De6CqL3Z2BtiA,8997
38
40
  flowyml/core/remote_orchestrator.py,sha256=LpHlNQslq14OliNZogBGf0fpu6c5n9T7f3BpftahM8Q,3527
39
41
  flowyml/core/resources.py,sha256=5TimjjSOEedALgNVVjRrvU-cHujKebyFjU4YxImvqZE,14402
40
42
  flowyml/core/retry_policy.py,sha256=OKiazbSfGm01BMAhVrjYrGbGZdceTgckGZjbcDeKK1c,2358
41
- flowyml/core/scheduler.py,sha256=2xXOsQ7klvkiA6wIAzrsgN15_GJB08daTCajrxkK4vU,28779
43
+ flowyml/core/routing.py,sha256=-0tknRTvqn5qeX_A4ZyJI_us-eHlloWiYjd3oWDIs9Y,17222
44
+ flowyml/core/scheduler.py,sha256=ijDsgMu_Ff9HAwYEHObJvL_JuKUUYZj_2nitEbK5B9g,32478
42
45
  flowyml/core/scheduler_config.py,sha256=bMlt9a7ap_-kKImiRbEAhuGkzvvpJiQPu8NXIfdwhEA,1203
43
- flowyml/core/step.py,sha256=h_y4Yx_uJSL6D8jaL1vhAjtYFUjt-64RGsJHapJxCss,7871
44
- flowyml/core/step_grouping.py,sha256=wBMZbOLZW5ghN8n8J3CmzKFKTaytRzrLkHJ-AwCuP5E,9941
46
+ flowyml/core/step.py,sha256=p9babMcMXSy9Hb8Izb0bbEmHQyYk51URBcTKxMSHjtg,8232
47
+ flowyml/core/step_grouping.py,sha256=_sQjeT7JqlDs2DlDz9f3ScGlQgfLCcw1ItA-g_SevKQ,10629
45
48
  flowyml/core/submission_result.py,sha256=bPPCC9pxqCZTTV0CdK1znJi4Rhw8QRCqQVwuVFr0b20,1692
46
49
  flowyml/core/templates.py,sha256=r7WbxZv8-BV3_3oX27ACGSitIsmNbNd4VeitpI2uJeg,6359
50
+ flowyml/core/types.py,sha256=epTPbJhHJx0y-wD9fJz2DoWhONiPDXRHUzEUNxNtf30,12601
47
51
  flowyml/core/versioning.py,sha256=4UeX9IBTsPF0M4BjK2McYMMjI9kjp2u263XlSYjk4QY,7691
48
52
  flowyml/integrations/__init__.py,sha256=SQWPFwFs_1gLGlJ6TDo2bcFKwBrv1PkwhZvEiELV1ok,28
49
- flowyml/integrations/keras.py,sha256=L-qX5Luhah_XfLMsfx7BMXTYs2b_hg2fMJWf78ydAJg,8216
53
+ flowyml/integrations/keras.py,sha256=e_WKSZvaL1CrYnuQlB88NXUXavmUkonFhxFxAQzS7X8,15016
50
54
  flowyml/monitoring/__init__.py,sha256=nkqmfdvLGMd44NfrIvH2vwVZBJGDVUn-qpei192WJp4,33
51
- flowyml/monitoring/alerts.py,sha256=P0ZYYTQGTKB8-kgbqOIv-kbfdAbdP0NO8o7NU8FRgtg,1577
55
+ flowyml/monitoring/alerts.py,sha256=4K3FSB6_6VN3FyDCprKHoUs4TVyLw2wScfrGAEHnCXg,1898
52
56
  flowyml/monitoring/data.py,sha256=wCMXftt-MSgY2uYWiJzcHcn9jMXl8PkRwn7RD5Umeeg,2863
53
57
  flowyml/monitoring/llm.py,sha256=ULq4rmsQ_BY_QoekztG-NwqMuj4UkQnP1AuzhRfjmq4,4801
54
58
  flowyml/monitoring/monitor.py,sha256=rdhUUVYUSyGNm3fQPRc3qS8Z7fr3S_d-lOxJQdwNA8o,1448
55
- flowyml/monitoring/notifications.py,sha256=Z0pzuUL5cI_9oKy3mEcyYFsv5GgK7HHXtYy_dow-vEE,7484
56
- flowyml/registry/__init__.py,sha256=fClcK1W1hxBvjaHvXZYK9-VIW7R7Oc1hWf_rqnpnzPw,196
57
- flowyml/registry/model_registry.py,sha256=bC-hepSyJLEz8pSPIr5bp5y67KXnPgf6Ylts5IPJQ-g,14235
59
+ flowyml/monitoring/notifications.py,sha256=GnLQg60WrMMLjlFOJzTMOulJP-s3_up8F4uBxmjmw_Y,9936
60
+ flowyml/monitoring/slack_blocks.py,sha256=p5tEx04Y9ceLdGe42r7JNschgHrZo0yDEoXCirtOU48,9059
61
+ flowyml/plugins/__init__.py,sha256=XVLM5asvBCMqXJF4dULr1zIQnEoHuKdO0-_qQXTuiuQ,5452
62
+ flowyml/plugins/alerters/__init__.py,sha256=PSmscvqXHBHvHkE93ViHQLrwEq-JCcZihCbrliOwE10,35
63
+ flowyml/plugins/alerters/slack.py,sha256=wIU7GXcCSjuK2k4X9KgG8FmGcp3F8rJWssAawpE5sGk,5642
64
+ flowyml/plugins/base.py,sha256=rlHFOQ-R0nbtkOSe09WXy8AZBAw-llGWchsHg9o7Xg8,19217
65
+ flowyml/plugins/config.py,sha256=FujF2DgliMiti00M9fYQYBJVjW0uWRsMze8ZXlXfpzI,14648
66
+ flowyml/plugins/deployers/__init__.py,sha256=mX3Hzj1sXJpLhkMrgZ8r3KYgL3jUAc3hhrJXAub8Ml4,632
67
+ flowyml/plugins/deployers/gcp_cloud_run.py,sha256=CM1CBtadP8r4D8TdqzHcryDLu6yv5FqlJY5rhAvUYps,6429
68
+ flowyml/plugins/deployers/sagemaker.py,sha256=h3qP0bCLaOd-QK-0wMUDx8JjR6U0RRMEKA3nCvYkK5o,9933
69
+ flowyml/plugins/deployers/vertex.py,sha256=k5o0_s1I99nZZ5j4TBiLmluxYefhqdJhWl6xkTssh2A,9200
70
+ flowyml/plugins/integration.py,sha256=RcSfJDqvDEg2JvdnuFabh3ohqz2qh4tFss2_xDuAvpw,10296
71
+ flowyml/plugins/manager.py,sha256=6rBAe8q6NYBCjaqn--VtWo3POm2d83BHLa9YRiuKxEg,16025
72
+ flowyml/plugins/model_registries/__init__.py,sha256=fHmKboNNLZWwnJg9Kc3ZYhT-522If2q0AgLL6vAxu8Y,630
73
+ flowyml/plugins/model_registries/mlflow.py,sha256=WX_RhrDxHaL0Dnvyh3e2ge2pmgfgegu2vnWf9ODQHyo,5208
74
+ flowyml/plugins/model_registries/sagemaker.py,sha256=qQdOb_KtjptV5cERbmyZ8LoL2iKwSQTbf3iTMpzx-ks,16768
75
+ flowyml/plugins/model_registries/vertex.py,sha256=Q-W7JmO9MsWEubnQQTgjUopXjUEpbyjHbXmhZRwwPMU,12353
76
+ flowyml/plugins/orchestrators/__init__.py,sha256=1wjTQ0ZVbBaru51ZVcGooXXkiT1bd20Ofjnd6Jtt8B8,369
77
+ flowyml/plugins/orchestrators/sagemaker.py,sha256=IkDTMpErwlm8qc3Inr-D5Boqj2S3dcjeWw28kANzVOY,14205
78
+ flowyml/plugins/orchestrators/vertex_ai.py,sha256=wVmB8R2YJ6K-xJYUoPDHzZ0uRmPDk7ErynybLtqMTBQ,15050
79
+ flowyml/plugins/registries/__init__.py,sha256=bqe7O9z_XoCa0PLsiRtqCfl1CPdTiuvz7ITg8r1MqbY,300
80
+ flowyml/plugins/registries/ecr.py,sha256=A4MrOze-C6K6wwey369CfnWl08cLoOXunmxMaTfY9SE,10132
81
+ flowyml/plugins/registries/gcr.py,sha256=NktJpbsYhkvnRPnA45QVMzvGtDT8GahHCsOaipwrI_Q,9974
82
+ flowyml/plugins/registry.py,sha256=uQxeLcPqqoMl6X2YMQuCNZocmbZnjRrPRAWi-VVFl74,18191
83
+ flowyml/plugins/stack.py,sha256=4y59aC7QRQk9MlKrvYXXKMx3SKKiuFBVm8YFy5sZwvk,13046
84
+ flowyml/plugins/stack_config.py,sha256=o7lcjFCItRcdDJ41Hg1CpxTw3ahRLLeabt8CbbGOsK0,16802
85
+ flowyml/plugins/stores/__init__.py,sha256=nv25d_cGf8Baf7EZMAuh0BMBwyicdV79XfGoeCl5EhY,375
86
+ flowyml/plugins/stores/gcs.py,sha256=rCUwaove0Md1T65IwEDd8xlOXcjL4pjWVhLrqUi4kkM,13943
87
+ flowyml/plugins/stores/s3.py,sha256=n3Nj0pn7gvlWP-J9MHxJKFTlh7G6s6dm46RDjCJ3-a0,13727
88
+ flowyml/plugins/trackers/__init__.py,sha256=QwkvVsN6inz0CGITJm2Khr2o57GdYKr4DIKloM3eOmc,307
89
+ flowyml/plugins/trackers/mlflow.py,sha256=RBPMsktfZ4BnJ4B5AUCIcL8Iad8fhkgpMMBMBkL_QYI,10127
90
+ flowyml/plugins/validators/__init__.py,sha256=nG-SLHW7WP7rQvVaJlOU4IB__xYBEICFmt8XqVKQIk4,52
91
+ flowyml/plugins/validators/deepchecks.py,sha256=-mWhmbBRM0DhFwbpmE2Z1qVSE9eqVqiJ_oH9ht4AJtg,4130
92
+ flowyml/registry/__init__.py,sha256=gl7HRXlMwSkD2t4Xa9-GJ_QR0VuuN3w3RlK1dCQrTNQ,280
93
+ flowyml/registry/model_environment.py,sha256=d5AroKjb54cnFqpsb7hDhnwpMgK_93sriywcnFSlvPc,3349
94
+ flowyml/registry/model_registry.py,sha256=v7E2Uta2KWGGuvoxFT4l_X_Xeo_YVoou0p-D5P0Pezw,19586
58
95
  flowyml/registry/pipeline_registry.py,sha256=fEJvN5sQW-Nt-lZg5LfjMyRSKNskiOBlpPxfFq30--s,1552
59
- flowyml/stacks/__init__.py,sha256=5FOapdb-qoXtZz0wa1_I1OZT5SBITarJjNy4WT_OyPU,1246
60
- flowyml/stacks/aws.py,sha256=8u2TcKT-Z-PFfgaswjW87UrFi_VpA7JmK4Ev3NEYtHY,20958
96
+ flowyml/serving/__init__.py,sha256=Biewy0AoLC-LVekQ9Ia71rpV53MavGP8OrwFb8IOOXg,319
97
+ flowyml/serving/model_server.py,sha256=7w4fFHRONWQA4YbCVwfyKKSJetqJ_M-Xo7FJ1-KhIjA,20253
98
+ flowyml/stacks/__init__.py,sha256=JpUzRTpVaTIsZxynroOrTODCDGA0FLRbfrt05iEUsqY,3058
99
+ flowyml/stacks/aws.py,sha256=mBedor7dMZ3GEyEb5ZlbCWDfVcLJjGMUdHwXT-grjTk,24126
61
100
  flowyml/stacks/azure.py,sha256=UdEoA0bhAF3g3zbiTaNi5ldptVAm_CRYWovC3w8tsEA,10587
62
- flowyml/stacks/base.py,sha256=0C0s9um6mstRUfkOEYXlunn9F3H4u9XPRp8lnGSj-G4,2537
101
+ flowyml/stacks/base.py,sha256=hmK-JQiXoRrKH44UHppIZwzYfsB1IIRDgigTJlqzSto,4980
63
102
  flowyml/stacks/bridge.py,sha256=spDWDqAiph6TedPavS-_HhLns0wCMz2R59IchLfUWh4,10885
64
- flowyml/stacks/components.py,sha256=fxTSJLqyH1--hyF1Nqx4HG4fGbMmPJIOfZ6az0WCggY,4929
65
- flowyml/stacks/gcp.py,sha256=u8b4rddca1pPSHYTiZ0riK4vdCHyv160o5Oi4B_NZrw,20436
103
+ flowyml/stacks/components.py,sha256=9KcTLMPe_JKd_DVTIXJJUo3C76aBl83benLpmAQj5dc,5240
104
+ flowyml/stacks/gcp.py,sha256=E5OtbuEnTtIvuPdAHWP0LehlOMpUwWXYeChpVjmMyL0,21864
66
105
  flowyml/stacks/local.py,sha256=FjxmCdH9gd3Qq8tbwW4WSsA3QwsgWCJrZJwtDmcKRsg,3858
67
106
  flowyml/stacks/migration.py,sha256=dWSOVkDWY6Y-yobmTNS0JZ1aKJw6xkRXndRN5vH8aFM,3523
68
107
  flowyml/stacks/plugin_config.py,sha256=16ggYUj7w1qYM-cwDRrpf9ydpj7C5CZytIgNDZbVdSY,2483
69
- flowyml/stacks/plugins.py,sha256=tR1wcKlhgguKhqrQpIlqqNBMiRbys6A_59ItS9fNhBo,15260
70
- flowyml/stacks/registry.py,sha256=_n7EtI7s4BXMbF_tRT7KDC_FNntyb1146mtE0dNT3mw,7152
108
+ flowyml/stacks/plugins.py,sha256=v_Kvf6B2RQUgrHsOywmAfkPIH-0YoVV75VGg5r3eV6A,19143
109
+ flowyml/stacks/registry.py,sha256=bcYXYncTxGhFdXChStSshMaIKrDQu6mzLzJvBoafCEs,7228
71
110
  flowyml/storage/__init__.py,sha256=d03pJ5Q-iTMRRQNJi5dI9vYqwY3QMlUDiEIZ4AZ0o8Y,984
72
111
  flowyml/storage/artifacts.py,sha256=JCLLkDSglPdDsr-YluX70N3T61noob9-BKCbEnjcf-4,7498
73
112
  flowyml/storage/materializers/__init__.py,sha256=_uqy_2lf5eHKxjjEMWaluqAHi3KLPf11cV6FYbHRAk8,899
@@ -81,90 +120,106 @@ flowyml/storage/materializers/sklearn.py,sha256=JuszJrCQJW2CXJsO6b0ZMZyoKknM5XPM
81
120
  flowyml/storage/materializers/tensorflow.py,sha256=YvKFVCTl75tnUysdhj6TzqZEzlpNMB-8XDnXh6-ewmI,5087
82
121
  flowyml/storage/metadata.py,sha256=MfWdKCHOu3gShOMinhmSvOXzNS5fF89-GRqQlTo2mJw,1357
83
122
  flowyml/storage/remote.py,sha256=0Iyi6BqESe52mONVvGZ9EidqoooSnEl-QyOYfO7GOqU,22209
84
- flowyml/storage/sql.py,sha256=wOENTry98q4Arw6AStFpCktjbt_Y2xxQUd-wft29Ib0,37333
123
+ flowyml/storage/sql.py,sha256=0C-zr0JuUEZhzkOhnEbzL57acFGDYjXnlXGMtFxPwKI,52548
85
124
  flowyml/tracking/__init__.py,sha256=H-ESGjwPN9fq1R4ptj0U1iVM5nXIYrMk9gPMRmY6Xh8,46
86
- flowyml/tracking/experiment.py,sha256=Q9VDoCg7yRhgO2O6TLr4L2Jbyr3J_2JecR6lkqgJRE8,6004
125
+ flowyml/tracking/experiment.py,sha256=K4bVTW6rlR0yOEywpydJV1oGAD39wfcTXh1Nfowarlc,6205
87
126
  flowyml/tracking/leaderboard.py,sha256=s6gXxvws4hIZLiLO5V_nO7iokpCq4czZGIO3MhW23do,5404
88
127
  flowyml/tracking/runs.py,sha256=vgzTqYc_s2IrcpT5ZeFeaGp_C_VkY3f-klfGkhwAiFU,4382
89
128
  flowyml/ui/__init__.py,sha256=heh1-LhRO3qCEzPZZL4ezt4eT219y6OQbsyq7qB2mVs,269
90
- flowyml/ui/backend/Dockerfile,sha256=hO2GU_PvbzbcIhxJ2TWI8UZwBzK_MHrCyKRk_CzqAUE,700
129
+ flowyml/ui/backend/Dockerfile,sha256=EQOb85E-HLGNz5ECaY1vnzU5aFil7w8BD7rwkAgtjTg,3296
91
130
  flowyml/ui/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
- flowyml/ui/backend/auth.py,sha256=ivM0tKR1KUm9AZg1iht9rKpndrtjf4ojLLaTw_-HHyE,4616
131
+ flowyml/ui/backend/auth.py,sha256=F0qVW9gDimB8azKa3GD0bpF2RKuCeCpNEQMMtgYYGRQ,5058
93
132
  flowyml/ui/backend/dependencies.py,sha256=ENGqEKEJuQvaZhRS6Ta47v-Q59TD9jsCT-a9p-OJGgE,772
94
- flowyml/ui/backend/main.py,sha256=dMkH7Ig1OCa-58LMyXu09vOZystULgtUEmK5wjBFbHI,5323
133
+ flowyml/ui/backend/main.py,sha256=L6yRy6sWBCobtU5FJviJ1YgKTf7PDgXVQqoMqBX7iOA,10705
95
134
  flowyml/ui/backend/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
96
- flowyml/ui/backend/routers/assets.py,sha256=w7gs7zS-bgsVFOZ1vQg1qhsmHY867MK-WWsBgDvv9ro,19094
135
+ flowyml/ui/backend/routers/ai_context.py,sha256=MxhfehJ1Jpfoyz52_Wpf2pf3UGcpPpGQN1rZL2NgWvc,7199
136
+ flowyml/ui/backend/routers/assets.py,sha256=zIHPua7Xd77Wtv_8ZXMVHOA0jflyYy8OcbCFQI_ZVfU,19919
137
+ flowyml/ui/backend/routers/auth.py,sha256=oPkBCQlOeNsJVf4djduUU07bx3R2Lr9b1VTY2flHCa8,3057
97
138
  flowyml/ui/backend/routers/client.py,sha256=66TsMk8dCczgyLVhQryNQ3ahE2xtksPXJOMB3HlR-G4,1342
139
+ flowyml/ui/backend/routers/deployments.py,sha256=GzAeaigyLCclhV3Kgda3ilXxh3ybersWnKDTj1Pd2jo,20900
98
140
  flowyml/ui/backend/routers/execution.py,sha256=39NUN3cEgafOx_1aFN5BoKAqWE6CLPBXBBvbQRdgDxk,5917
99
141
  flowyml/ui/backend/routers/experiments.py,sha256=e-Q3PPuCULobYKb45PbS5SOY-CCX3GYjiDUimJ-NL-c,4277
100
142
  flowyml/ui/backend/routers/leaderboard.py,sha256=T5mhZwjBusF6JGjaRO5tSmsDTles1Dkn99ki-pRzhEU,4111
101
143
  flowyml/ui/backend/routers/metrics.py,sha256=NbLQKUqBMywl1cZrdopW29Y1J9oSnT4OleBTczZftTo,5643
144
+ flowyml/ui/backend/routers/model_explorer.py,sha256=81biqMXPn8T2JpYzSm8iTOxMhZpwvEZb9F9Lffzr-VU,18286
102
145
  flowyml/ui/backend/routers/notifications.py,sha256=IQhRlaBM8kdqxbe_U_Kw9f1qXGDBOjYk8GCR5MAIWHA,2068
103
146
  flowyml/ui/backend/routers/pipelines.py,sha256=wQjNX4L8oNTpagws8_lvgiMo-P_aMnqO89JrU65oNZo,6282
104
- flowyml/ui/backend/routers/plugins.py,sha256=OT2rAstPMRDlU5wdz_Jy3v5C8IjXTPMz7lDC0ZOWUbg,5894
105
- flowyml/ui/backend/routers/projects.py,sha256=1EMbh8ts_Dh_mgr1xMxvsj9nQuNtu409tgnFPSy7ojg,3446
106
- flowyml/ui/backend/routers/runs.py,sha256=ZmO_58eHvGIWcVmx0JxSwfm-ENu4kMWCNibs8TpoLRs,14980
107
- flowyml/ui/backend/routers/schedules.py,sha256=U0NFNt1sXWsGxWRjh8FzblM15QMXjfU-Q1CQQ5JZjmE,7516
147
+ flowyml/ui/backend/routers/plugins.py,sha256=ojvRBRTTTXFkgJmXklLY_IItDyryeHOnFkbPTxjk0f4,8240
148
+ flowyml/ui/backend/routers/projects.py,sha256=t2DUHvugMBQqazmiWiK7rRplKDfMEksVpwkLnDx3I8E,7136
149
+ flowyml/ui/backend/routers/runs.py,sha256=TbfOmJxhbledK0vK7dUwHfK-5ovV1G5nmX2T4PJotyQ,19681
150
+ flowyml/ui/backend/routers/schedules.py,sha256=1YkjOsMz5ZoNVC9T7KR7nirUaDRwZuksxAr1tDTtZ3U,8323
108
151
  flowyml/ui/backend/routers/stats.py,sha256=bg8pcMAgM76y8wV_5PJvc6iIqLsNQVt6nYItdVEfv48,406
152
+ flowyml/ui/backend/routers/templates.py,sha256=DkOhpr6gfxTIpnRihG5dJo2jJmimgI_DHoSPgwhd7gM,9750
109
153
  flowyml/ui/backend/routers/traces.py,sha256=xWxEuOe6TKDrZwWkZG5D3LuHEj_pmGnhJZ-563R2H_E,2012
110
- flowyml/ui/backend/routers/websocket.py,sha256=PdGJKdG78yD5nVq7KIF6MwGyzlWHbbQDOJz2eFIb9X8,4908
111
- flowyml/ui/frontend/Dockerfile,sha256=BJWOdU5mnk4e2H6rARiGOO6TF-YCRxN7mOIWPv0EIAM,314
154
+ flowyml/ui/backend/routers/websocket.py,sha256=jSMGy2QKcoSCUifP1N3Khs0VQzLKCz0TsKOFfUloOQg,4892
155
+ flowyml/ui/frontend/Dockerfile,sha256=FO4Yhxnp5pXenJyBH_f9A279M8nckh_5cGU3u0Pwpf4,2353
112
156
  flowyml/ui/frontend/README.md,sha256=M5il2PEdNVCSm1zo1rZAXqQ0nTj5frCNXmi5-d1ZKIM,7099
113
- flowyml/ui/frontend/dist/assets/index-BqDQvp63.js,sha256=d6Vm-LE-WMtt-V9DDO22_onj9_d9hbBxieKYnmptF1w,1294459
114
- flowyml/ui/frontend/dist/assets/index-By4trVyv.css,sha256=rDcWIcfFdSPd9bVKIspoO0S4fXu9QYE6j-MQtSlC6rI,76734
115
- flowyml/ui/frontend/dist/index.html,sha256=TzOZfjBY7wTgc9FysKtlqlxGg6BwwsQevUTy-zjRrzs,375
157
+ flowyml/ui/frontend/dist/assets/index-B5AsPTSz.css,sha256=bCtBy1LWX_QZrQf8yguJUUaovWkHWbnhSFpYp2bGs_A,93555
158
+ flowyml/ui/frontend/dist/assets/index-dFbZ8wD8.js,sha256=4N-rFExMif8FyPpdCvEo5fAd4v6NQ_SkRKjXEYvUUeU,1477558
159
+ flowyml/ui/frontend/dist/index.html,sha256=--HF6TbjISeXuw-rlc4q6eH-9aCVnJwLUXFeiX61Z3I,375
160
+ flowyml/ui/frontend/dist/logo.png,sha256=oZS_es_nm2e9jS6qZ4tszF6ZiLZcmeLdnPmd_oJKXB8,652790
116
161
  flowyml/ui/frontend/index.html,sha256=Y_Xm2LhORPIkzwz4VADHCmfDSuTkuT_gGVLRWpDOtis,279
117
- flowyml/ui/frontend/nginx.conf,sha256=MdOpD7y2SJzpxwlHgjMVadTvlXTtZaRXfWO-WHmtuls,637
118
- flowyml/ui/frontend/package-lock.json,sha256=qYEiw3iu7uXCjZcnog5tActXcv98B6shm23VW-xi_Qg,135309
119
- flowyml/ui/frontend/package.json,sha256=aSTOw3HpD6rsum4cq6hpWMaBvIoWEdymwtowLks2cjY,803
162
+ flowyml/ui/frontend/nginx.conf,sha256=Sjjm14Ik3xIYjWOAlmy9-oli-6EQ3UzW1q3U9hBhRKc,2701
163
+ flowyml/ui/frontend/package-lock.json,sha256=zc7VzdLiglJIj3fPaLOA_DcB4uMuZZ8V3Rvc1ATo_cs,187209
164
+ flowyml/ui/frontend/package.json,sha256=SGzSq_LEFEk9DMHxtzT_rPmT4hd1wBd5GE-_5h4dhh4,938
120
165
  flowyml/ui/frontend/postcss.config.js,sha256=YyT4lFBNiH_kipziy5I2ifedcoyTEY-7jAPL9chAzzM,92
121
- flowyml/ui/frontend/src/App.jsx,sha256=FKM1y-i5uSLQK9QS5cvBVLb7m6VB6D1EXmbxDluyvEo,582
122
- flowyml/ui/frontend/src/app/assets/page.jsx,sha256=3v0uuDx2qpjzqTeESSohgwqtcfAJIxWRBFmwAZQmEYI,20722
166
+ flowyml/ui/frontend/public/logo.png,sha256=oZS_es_nm2e9jS6qZ4tszF6ZiLZcmeLdnPmd_oJKXB8,652790
167
+ flowyml/ui/frontend/src/App.jsx,sha256=GitoDKw4pB_9nnH7-hhNdxdwM4x5sjijhD6rRJym4wQ,740
168
+ flowyml/ui/frontend/src/app/assets/page.jsx,sha256=tdRlhI3CEyjnwilO_Wf3A6nREBcWNjWp9wPFdAw6d6E,48408
169
+ flowyml/ui/frontend/src/app/auth/Login.jsx,sha256=sWBL7fJsvkp2e-0AJqB1L8SEq5iJJQx_P73hFn_K3b8,4321
123
170
  flowyml/ui/frontend/src/app/compare/page.jsx,sha256=ue0AURS2IPRdOjJ9pOcyhA8CvLqg8g13hQQXqfniBuw,12805
124
- flowyml/ui/frontend/src/app/dashboard/page.jsx,sha256=x0esvQjgnJcNuZbYIss2iQdezJFDgJuRTR57SSoe5Ao,14369
171
+ flowyml/ui/frontend/src/app/dashboard/page.jsx,sha256=-VBb7uK9MFCesBM6-t7ZGEjwIJ8hcxPjleQ76QqAcMs,14407
172
+ flowyml/ui/frontend/src/app/deployments/page.jsx,sha256=rm4Z6uBoHHPaQU4th7YQLPftyE8CWIUyYAgdz_ERB5M,42009
125
173
  flowyml/ui/frontend/src/app/experiments/[experimentId]/page.jsx,sha256=qerISNYw-3brqRpyUeVB5ltJBAUHS8coo3jhwdXK9HE,12122
126
174
  flowyml/ui/frontend/src/app/experiments/compare/page.jsx,sha256=Ny-G7lMKjHJ1TzLEaziu3SSFEGDSjk9Pc0wDoJ0UvEs,18984
127
175
  flowyml/ui/frontend/src/app/experiments/page.jsx,sha256=VzSTHUdKzPxdiRFld5Dar8fSJq0TDmnJe6XB723Sehs,8110
128
176
  flowyml/ui/frontend/src/app/leaderboard/page.jsx,sha256=fS8K_bFWXKJ2d1mFzLiWe1aOiwLr5LlG1YpU8IenNvE,7640
177
+ flowyml/ui/frontend/src/app/model-explorer/page.jsx,sha256=QU2ey_dopWRTW8dI8GAZqz8nl9cHCbG422QWKv0lhQI,57851
129
178
  flowyml/ui/frontend/src/app/observability/page.jsx,sha256=RP3w7SH3HGvwW5SQnToZNxWlhYRRvfnXUQ80SFDf4CE,14494
130
- flowyml/ui/frontend/src/app/pipelines/page.jsx,sha256=_kDIE4aoVJPg8wGSPMGG2HI7lNVse4PO9W03jjIo8Ek,6704
179
+ flowyml/ui/frontend/src/app/pipelines/page.jsx,sha256=LbqDUGoMqyvvn-pTuZEK37gb5ACzX3vJY0Pa65Z-oj8,7370
131
180
  flowyml/ui/frontend/src/app/plugins/page.jsx,sha256=eQR_uW2Imt4HldDb8eVvu4rkQ6SLMv5FCbr-gc6bYIg,1577
132
181
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectArtifactsList.jsx,sha256=kF3UMlhywbEANvUhk26W0ij767zY2NgRqYjtSbS_y-s,6201
133
- flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectExperimentsList.jsx,sha256=7yvNHAzvQzT-e0tcG1VM-2UkIluO8mojZrVWr8NkQB8,6100
182
+ flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectExperimentsList.jsx,sha256=4EwcHaFNJNaXK0MCxGiQC-wgNSVSoJQSORU0o3sU4lU,6867
134
183
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectHeader.jsx,sha256=hPdVt-1L2bg9YqMvPcF0wWT8N6Ka0bvvdu4zWP3KEvk,2172
135
184
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectHierarchy.jsx,sha256=HtYhp7-RxT7a1bbbEuF_ZDdr_Ta90ua-FXYsQXRNTqQ,25882
136
- flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectMetricsPanel.jsx,sha256=S7WVB36zrLNG4Lz_tNzCSLl4eR1xwlr6yhfCz1VrVJU,11404
185
+ flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectMetricsPanel.jsx,sha256=GfDL9ZJSBDbEUEoTvZxdIc8vqYMQRKabQfoHWV2v4RA,11415
137
186
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectPipelinesList.jsx,sha256=3VLSBtbHcElXHcAk9zcSp069r8efPFNOlO28vRv2X2o,4635
138
187
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectRelations.jsx,sha256=pfkCk9NJyNnUtk4Ibqnd18_MlGZgmrnmmHV831wo9nw,8308
139
188
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectRunsList.jsx,sha256=7Mtg17o2AZJvdO5lMmojMN_eiIWqI3Ul83E7p_WnZfU,6136
140
189
  flowyml/ui/frontend/src/app/projects/[projectId]/_components/ProjectTabs.jsx,sha256=oUN2TlazuhA8FWQmjVUA5IVSsnmWpsQBMpVzK-0jL-M,4768
141
190
  flowyml/ui/frontend/src/app/projects/[projectId]/page.jsx,sha256=zcQ8xdkZ12zuTLBLyxSXX-_llUec_hWId5tzpAqevwI,16294
142
191
  flowyml/ui/frontend/src/app/projects/page.jsx,sha256=MCZXKMijJc4nkFFpW7lwKuvOxal6j_17rXANvbPuy1I,14223
143
- flowyml/ui/frontend/src/app/runs/[runId]/page.jsx,sha256=xkclPCDZXxdsTmIrMaSe8gtH6h4wiKw6UuURHWVZ2jE,48466
144
- flowyml/ui/frontend/src/app/runs/page.jsx,sha256=6laWDlYu3uDx6chrZS9eKV_W9k98JQQrpxjp78j10HI,8884
192
+ flowyml/ui/frontend/src/app/runs/[runId]/page.jsx,sha256=6_jcgXdGNiNdfyxr6h7BDSXMLjoEH4mqAqQ5i6jdRpo,75534
193
+ flowyml/ui/frontend/src/app/runs/page.jsx,sha256=VDT8vY62yA62t0Ed8cI8F3D0QE0IKeMcCOPydY0t_Bc,9464
145
194
  flowyml/ui/frontend/src/app/schedules/page.jsx,sha256=Ka_AmrgdVTA0AMbTdi5fc7U6XZESrFB9q2RRmCFGHBs,31347
146
- flowyml/ui/frontend/src/app/settings/page.jsx,sha256=a4Z99Rov6F7B12IecimDHEzXN36oBBHv6nsubDNHGQk,16571
195
+ flowyml/ui/frontend/src/app/settings/page.jsx,sha256=O2pPpiFsjRBTsaQIw7NaTTSQCjAgXXkjt4a4I51uy60,15806
147
196
  flowyml/ui/frontend/src/app/tokens/page.jsx,sha256=79AZbtG6NjH1a4M-fnvmVIAy4u8BYHu0sMaAdtGc4Rw,21667
148
197
  flowyml/ui/frontend/src/app/traces/page.jsx,sha256=j4WdFVvmaJ-5IwufbnPJEavQISse-8iwDnBIkeMKyFM,8767
149
- flowyml/ui/frontend/src/components/ArtifactViewer.jsx,sha256=tDeR3mTx8CTY9aBoi4Oy9KR6-WYomx38OzalaqUW2UI,6757
150
- flowyml/ui/frontend/src/components/AssetDetailsPanel.jsx,sha256=P90_SHuPLcnpLMRnIhM5TUOcAZ0d920boPNO0wyQu2E,16829
198
+ flowyml/ui/frontend/src/components/ArtifactViewer.jsx,sha256=ysP4paZIByOTppPTJoCDw_SJxC9tX5fA32E12f3Qavo,9731
199
+ flowyml/ui/frontend/src/components/AssetDetailsPanel.jsx,sha256=JlkuMQF_HYtn6asjFUyh0Zp1zzd6vp0s8caRNYK8Rlc,37255
151
200
  flowyml/ui/frontend/src/components/AssetLineageGraph.jsx,sha256=gnqUyJfp_2eJ-00LqHwSj76GKWk3GmvlclyrEarPK9Y,11266
152
201
  flowyml/ui/frontend/src/components/AssetStatsDashboard.jsx,sha256=ok6Gyw_B2UfeQDtrJySmqABOHym3lgZ2NcZr8e_I8Qg,14567
153
- flowyml/ui/frontend/src/components/AssetTreeHierarchy.jsx,sha256=LFxgpSN8VLJ5weNuobCWB6DZIUOMcYXaaa8Sh5uC_-k,21382
202
+ flowyml/ui/frontend/src/components/AssetTreeHierarchy.jsx,sha256=a0aMWf7v9ZGHrAGz0daVGiTy-6Tho2YV9WP8BFtcNGE,25833
203
+ flowyml/ui/frontend/src/components/DatasetViewer.jsx,sha256=YnWSXlaWsWNh3LYtMLg8-fCIdPlEjdh2xwpqAgYOW3w,33094
154
204
  flowyml/ui/frontend/src/components/ExperimentDetailsPanel.jsx,sha256=mV5PuWzNRaOdukA51sU5Imh7iD_kDMHgThdU8zt2nWY,10714
155
- flowyml/ui/frontend/src/components/Layout.jsx,sha256=CsoaFrWe-5iRyAsVyu2rmJqhoC2ltckEzhVscsXlmsI,5423
205
+ flowyml/ui/frontend/src/components/Layout.jsx,sha256=I-B33DclBac3Ve8gRj7-0GotMo7aOLVYBZlKNFpeGSQ,5642
156
206
  flowyml/ui/frontend/src/components/NavigationTree.jsx,sha256=9os95nqyBNtL1INR-zOZD3OhIFKXqFI1q3zDlASfHgU,15710
157
207
  flowyml/ui/frontend/src/components/PipelineDetailsPanel.jsx,sha256=pNM8oy-hWXQmCZJtyr_kEzgIcdJMdqdPN6Vjxwc3YQ4,10932
158
- flowyml/ui/frontend/src/components/PipelineGraph.jsx,sha256=cJE5n4_fOXL879DrBEZLcHX_eIdkOzqfh6VqVe4y4l8,17050
208
+ flowyml/ui/frontend/src/components/PipelineGraph.jsx,sha256=A_HoSzT2vvjszGAKAZ99xt4UZvIHNQkBBLjIJcvegfw,19926
159
209
  flowyml/ui/frontend/src/components/ProjectSelector.jsx,sha256=L-nmTUMwy-5wD-mFizztybqnw-wd97y6mCD2Q9kh4B8,5580
160
- flowyml/ui/frontend/src/components/RunDetailsPanel.jsx,sha256=OCB1vn-xH04FrNtYHkK8yU03b7kQTkZ2OVgJ_k8-bxY,16169
161
- flowyml/ui/frontend/src/components/header/Header.jsx,sha256=9KrdWTglIg0lVu68a1fm_wnDGW7lurEhbcq3Nby6VBk,6278
210
+ flowyml/ui/frontend/src/components/RunDetailsPanel.jsx,sha256=98-iTcpQMRGuhDuc-2_pXSbjnPFBuF454Fj0U3eqzx8,18637
211
+ flowyml/ui/frontend/src/components/RunMetaPanel.jsx,sha256=RZJy_RS9VYXq9cIiao9EYRW0kf_1ei7qikuYzQ1tUyI,5795
212
+ flowyml/ui/frontend/src/components/TrainingHistoryChart.jsx,sha256=PbjGOagTUVnRRzTp73VjWU6YoUTdTKiT1ilrRJF3sjU,22226
213
+ flowyml/ui/frontend/src/components/TrainingMetricsPanel.jsx,sha256=E0I44NxD1Q_WC3awCYdQWqyp2GXGj_i6B63f0czgYfQ,6988
214
+ flowyml/ui/frontend/src/components/ai/AIAssistantButton.jsx,sha256=OkVHr5O8RMVYmAwbtOYw4bRXRTjDpZliTa8a_RLSruQ,3249
215
+ flowyml/ui/frontend/src/components/ai/AIAssistantPanel.jsx,sha256=xVla4tPu0CAxgRS18GclHpkylV1hXs8atjybcK4ALvg,19635
216
+ flowyml/ui/frontend/src/components/header/Header.jsx,sha256=4xTVc1tDbGO1hWv0jzYRGPIy3MyM7dDVQMEt-9hUSaM,7487
162
217
  flowyml/ui/frontend/src/components/plugins/AddPluginDialog.jsx,sha256=bazhcAEgqdGGpuz8_VWmEN0BLbcAvC9rDyB9iJdQHbM,5837
163
218
  flowyml/ui/frontend/src/components/plugins/InstalledPlugins.jsx,sha256=v9IWCRT6951X26cgybZpsBLpfMbkz12TIVYjQJrvRtM,4719
164
219
  flowyml/ui/frontend/src/components/plugins/PluginBrowser.jsx,sha256=ZwP2klJlrd7gv8me-zCaKCLQyH3OT47ugW0In2y3oLE,7420
165
- flowyml/ui/frontend/src/components/plugins/PluginManager.jsx,sha256=q5abQ6_tw0lYxt4Nw6WFSaR6qOWfZVR2EFd_401zWrY,2795
166
- flowyml/ui/frontend/src/components/plugins/ZenMLIntegration.jsx,sha256=7Fww6Ckte4PWta3-KRsoAiYcRL8ao-H8MmiNyDWH2i0,4864
167
- flowyml/ui/frontend/src/components/sidebar/Sidebar.jsx,sha256=QMZ-_FN68KC-NhaKj4Z5UtWxFRC2P3aw-dYwJ3-nV18,7344
220
+ flowyml/ui/frontend/src/components/plugins/PluginManager.jsx,sha256=CM3LtPIQfKtF8iPGQsRvjXI4fxKyXdu9lNfNNYgHmkE,2766
221
+ flowyml/ui/frontend/src/components/plugins/StackImport.jsx,sha256=m7Ruf4DcBiBTHeCr3Fw1SyGWOgsRWwUu8AWBxH8uwPY,6357
222
+ flowyml/ui/frontend/src/components/sidebar/Sidebar.jsx,sha256=J5ZkmIwbCjIfxibCzTLfOE0MBQmq2qGYkihqrICO6n0,8610
168
223
  flowyml/ui/frontend/src/components/ui/Badge.jsx,sha256=Wpx1A7-9tatujKmhHIMJtD-qno9HzPmVijUVg6okqXg,885
169
224
  flowyml/ui/frontend/src/components/ui/Button.jsx,sha256=Gcg89JegyvJThTm0Kuf4enYBpzUEInHQDB9Az8qUNpo,1200
170
225
  flowyml/ui/frontend/src/components/ui/Card.jsx,sha256=zFEHL0CK-GfxJCK1OVHmEICKP5X46WDIj3Yot0mPn9s,1311
@@ -176,33 +231,39 @@ flowyml/ui/frontend/src/components/ui/ErrorBoundary.jsx,sha256=I6kIOaB1H4wgfVwGX
176
231
  flowyml/ui/frontend/src/components/ui/ExecutionStatus.jsx,sha256=F3JiDwM43n8G359vtcEbK7B0VVPgz0ypealM_TEXiRI,3840
177
232
  flowyml/ui/frontend/src/components/ui/KeyValue.jsx,sha256=Va0V3EMXcIL9E-px5YzTStyMwJKN3UDMrf7U3UHAOig,1042
178
233
  flowyml/ui/frontend/src/components/ui/ProjectSelector.jsx,sha256=5kaptfAApb1p06G2zEHk32DLVA7bJXat0ZsD4t2PcMk,7287
234
+ flowyml/ui/frontend/src/contexts/AIAssistantContext.jsx,sha256=s0ttqP9Jj-YVDSsr6oFC7aMqQbqcoMOur3vH9QhpIJw,9332
235
+ flowyml/ui/frontend/src/contexts/AuthContext.jsx,sha256=VTZnjrPQf7JzcsDVlp7zFNRrczTzcT5Wc5ocOvkgI_8,3445
179
236
  flowyml/ui/frontend/src/contexts/ProjectContext.jsx,sha256=eqZ6fqvi0ri0sRtjhOb43P0R7V3zzefrW1TVNsjpfXw,2250
180
237
  flowyml/ui/frontend/src/contexts/ThemeContext.jsx,sha256=SEm0u8B0Fl3j_rDrY1V9nn9ewPFWa_RGDhGGFE4UThE,1746
181
238
  flowyml/ui/frontend/src/contexts/ToastContext.jsx,sha256=FPh0iTcXLPWTXdeyxYoxmFqAJpEz7UdpBCjORoNNqAI,4343
239
+ flowyml/ui/frontend/src/hooks/useAIContext.js,sha256=_sqRY2gVxqBnvCwPmMBvKqzFSE9FWpWJAxxSY9C32Rk,5884
240
+ flowyml/ui/frontend/src/hooks/useWebGPU.js,sha256=VFxMwHQOTbJJIpnEO80YIHdiV6PSq2-IRk1exErz2rU,1729
182
241
  flowyml/ui/frontend/src/index.css,sha256=qlzwgNU6rMFcV76mGt0sirFlTn0UcuZLCOQsSG4j8xU,188
183
- flowyml/ui/frontend/src/layouts/MainLayout.jsx,sha256=I8z93IPeZtSBnVg-1TaSSg66SuY2OacL1p9baOMhPkE,1019
242
+ flowyml/ui/frontend/src/layouts/MainLayout.jsx,sha256=Yu3RNMCSbz4BM_rvF2VsWUp-8S_HxGTkxb5KKFW_-jU,1300
184
243
  flowyml/ui/frontend/src/main.jsx,sha256=En69d1okPsU0j6X-IBBMG-dQpZhzjVOjfJTC_WJXoFk,243
185
- flowyml/ui/frontend/src/router/index.jsx,sha256=348OQuyG-eOHlI43BD-kXND8hHy_4_5vUjWQdFbQzq0,2354
186
- flowyml/ui/frontend/src/services/pluginService.js,sha256=RnHn1-Y1OIzdHaxqVcs8P9XnkuOPQXji3g2iX2K_yoc,2837
244
+ flowyml/ui/frontend/src/router/index.jsx,sha256=nsbJPH38SGePvbiDAUFp-vGmgBrXJvRBagmaYSNb86A,3418
245
+ flowyml/ui/frontend/src/services/pluginService.js,sha256=mW4NtFIk4GHL6QpS4EweSsQhGd7mOVcs6ISP3sEUsIg,2992
187
246
  flowyml/ui/frontend/src/utils/api.js,sha256=IKCxa9lOkuVpYiLreCL7A8ci7m2us6UjZLsgvoiKbuU,1153
188
247
  flowyml/ui/frontend/src/utils/cn.js,sha256=yCQ-NYzf5FaTdChAmCMsYDZnRat5G1pWQLZbVxJWaaw,137
189
248
  flowyml/ui/frontend/src/utils/date.js,sha256=8tYLT-TspihDCbziiYCNaBjvMa5ez155kBxVD_Z7bVE,261
190
249
  flowyml/ui/frontend/src/utils/downloads.js,sha256=2w3uSOiAktiCWAj56bTSZUx3eNA9QZt1qkVCzX3YrdY,305
191
250
  flowyml/ui/frontend/tailwind.config.js,sha256=__nxDJC93bzcg8Ro9uxt4c2DiErpUCJfi4B-zNRooYg,813
192
251
  flowyml/ui/frontend/vite.config.js,sha256=b4JAsNo2yU4wRdTKf7ppBKsaw6WW447LrS0V4AbXkbk,401
193
- flowyml/ui/server_manager.py,sha256=Se37U4aXnzZsG4oh5RmKnGmmisXQ-8lOhaod0QbzSzc,6274
194
- flowyml/ui/utils.py,sha256=FeM5zga3Dbbn_HRKRRdjLrt0HbnCrxXk0NN7NqPeJII,4516
252
+ flowyml/ui/server_manager.py,sha256=HkKeXrh2wSnVUIltjfkSNl8Lx1gSVoRJt857GVRkXGM,6259
253
+ flowyml/ui/utils.py,sha256=DIChhKJxGZv8tIyCsYR03DDJnlOfHhMDY_0H7sKG1wk,8031
195
254
  flowyml/utils/__init__.py,sha256=eA_YZEZCnCvWRdcqH8IzwWIO-LSUI5-8sbA9mU6xBto,1490
196
- flowyml/utils/config.py,sha256=Oeywfo2vptI0-yF28AwmtIbf3fb-2SME-zbkfKfQgqs,10280
255
+ flowyml/utils/config.py,sha256=W9vDlA_z1n8znDGKHcojPyC-mn_ycNol1dAB4mdzqK8,11100
197
256
  flowyml/utils/debug.py,sha256=zcHZxGLbuSImLdcfn1V7CwfaDzc3SunXdV-pWR_UW90,6536
198
257
  flowyml/utils/environment.py,sha256=3vqyHBldrCdENrMYtYH0rsE7bPJ2IkLulzWWwWzMCmE,9166
199
258
  flowyml/utils/git.py,sha256=TFbHPgt8xpwHE5qg8bhq369IM4yQFU53MfvsZs0auNw,7745
200
259
  flowyml/utils/logging.py,sha256=PBJDFlGdp1mePS6A3g08dnGAB-v8jTlcNxEsYs9WSBo,1371
260
+ flowyml/utils/model_introspection.py,sha256=NRYpnSU9Bbl2I3Mu4s7zl9p0nS8cz1DiU6Kkv4faWEk,4683
261
+ flowyml/utils/observability.py,sha256=f9VdEP0-YpXabfvsjgUsZFBvP4ebOP0i0ccAYisRXDQ,1022
201
262
  flowyml/utils/performance.py,sha256=-ne9v9ddEltiKRPk-AerM1R3Gwwd_oCRKtNyHARWd4k,8655
202
263
  flowyml/utils/stack_config.py,sha256=STX1niArJzvu0YsqUQmrNJ0WTeMVW_setYNH36BlbVI,10826
203
264
  flowyml/utils/validation.py,sha256=mClumVro0bl_XXxT1zWPlRI6M_iZa3z2SZ0QUdmTOqs,10199
204
- flowyml-1.7.1.dist-info/METADATA,sha256=tsNI5DXRlVA4DTqmyop01l4i9o6aI3BdTP7sp-5oNO4,15536
205
- flowyml-1.7.1.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
206
- flowyml-1.7.1.dist-info/entry_points.txt,sha256=yuF-dOC4rbyJ2Aqi4CMRBxFhqIRoKO6Mhh6jfiQEVjI,48
207
- flowyml-1.7.1.dist-info/licenses/LICENSE,sha256=DRBRWOEjKZQBvy1WZwxyvp2NmnC1whW9Ef7v0Oo-p_g,626
208
- flowyml-1.7.1.dist-info/RECORD,,
265
+ flowyml-1.8.0.dist-info/METADATA,sha256=yOYbsUH7_epWBLXcJGBSvDIF3uY0xqGVmCQWlKa3dlE,6946
266
+ flowyml-1.8.0.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
267
+ flowyml-1.8.0.dist-info/entry_points.txt,sha256=yuF-dOC4rbyJ2Aqi4CMRBxFhqIRoKO6Mhh6jfiQEVjI,48
268
+ flowyml-1.8.0.dist-info/licenses/LICENSE,sha256=DRBRWOEjKZQBvy1WZwxyvp2NmnC1whW9Ef7v0Oo-p_g,626
269
+ flowyml-1.8.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.2.1
2
+ Generator: poetry-core 2.3.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any