roboflow-workflows 0.2.3rc2__tar.gz → 0.2.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1258) hide show
  1. roboflow_workflows-0.2.4/PKG-INFO +134 -0
  2. roboflow_workflows-0.2.4/pyproject.toml +76 -0
  3. roboflow_workflows-0.2.4/roboflow_workflows/configuration.py +377 -0
  4. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/_zone_geometry.py +234 -0
  5. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/data_aggregator/v1.py +517 -0
  6. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/detection_event_log/v1.py +502 -0
  7. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/detection_event_log/v1_tensor.py +506 -0
  8. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/line_counter/v1.py +227 -0
  9. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/line_counter/v1_tensor.py +245 -0
  10. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/line_counter/v2.py +274 -0
  11. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/line_counter/v2_tensor.py +304 -0
  12. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/overlap/v1.py +197 -0
  13. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/overlap/v1_tensor.py +210 -0
  14. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/path_deviation/v1.py +276 -0
  15. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/path_deviation/v1_tensor.py +295 -0
  16. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/path_deviation/v2.py +288 -0
  17. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/path_deviation/v2_tensor.py +308 -0
  18. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v1.py +296 -0
  19. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v1_tensor.py +324 -0
  20. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v2.py +303 -0
  21. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v2_tensor.py +331 -0
  22. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v3.py +408 -0
  23. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/time_in_zone/v3_tensor.py +434 -0
  24. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/velocity/v1.py +313 -0
  25. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/analytics/velocity/v1_tensor.py +416 -0
  26. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/cache/cache_get/v1.py +190 -0
  27. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/cache/cache_set/v1.py +201 -0
  28. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/cache/common.py +25 -0
  29. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/auto_rotate_on_edges/v1.py +440 -0
  30. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/background_subtraction/v1.py +183 -0
  31. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/camera_focus/v1.py +269 -0
  32. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/camera_focus/v2.py +1086 -0
  33. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/contours/v1.py +220 -0
  34. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/contrast_enhancement/v1.py +311 -0
  35. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/contrast_equalization/v1.py +196 -0
  36. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/convert_grayscale/v1.py +148 -0
  37. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/detections_nearest_neighbor/v1.py +459 -0
  38. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/distance_measurement/v1.py +487 -0
  39. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/distance_measurement/v1_tensor.py +535 -0
  40. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/dominant_color/v1.py +225 -0
  41. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/image_blur/v1.py +225 -0
  42. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/image_preprocessing/v1.py +307 -0
  43. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/mask_area_measurement/v1.py +200 -0
  44. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/mask_area_measurement/v1_tensor.py +220 -0
  45. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/mask_edge_snap/v1.py +597 -0
  46. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/mask_edge_snap/v1_tensor.py +644 -0
  47. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/morphological_transformation/v1.py +249 -0
  48. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/morphological_transformation/v2.py +221 -0
  49. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/motion_detection/v1.py +403 -0
  50. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/motion_detection/v1_tensor.py +446 -0
  51. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/pixel_color_count/v1.py +225 -0
  52. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/sift/v1.py +189 -0
  53. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/sift_comparison/v1.py +176 -0
  54. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/sift_comparison/v2.py +388 -0
  55. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/size_measurement/v1.py +326 -0
  56. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/size_measurement/v1_tensor.py +333 -0
  57. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/template_matching/v1.py +256 -0
  58. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/template_matching/v1_tensor.py +288 -0
  59. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/classical_cv/threshold/v1.py +290 -0
  60. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/deserializers.py +714 -0
  61. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/keypoints.py +116 -0
  62. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/rle_compact.py +87 -0
  63. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/tensor_native.py +1181 -0
  64. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/utils.py +823 -0
  65. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/common/workload_presets.py +224 -0
  66. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/flow_control/continue_if/v1.py +244 -0
  67. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/flow_control/delta_filter/v1.py +156 -0
  68. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/flow_control/inner_workflow/v1.py +412 -0
  69. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/flow_control/rate_limiter/v1.py +196 -0
  70. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/flow_control/switch_case/v1.py +200 -0
  71. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/csv/v1.py +234 -0
  72. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/current_time/v1.py +177 -0
  73. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/expression/v1.py +259 -0
  74. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/first_non_empty_or_default/v1.py +162 -0
  75. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/json_parser/v1.py +222 -0
  76. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/property_definition/v1.py +177 -0
  77. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/string_template/v1.py +289 -0
  78. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v1.py +349 -0
  79. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v1_tensor.py +409 -0
  80. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v2.py +357 -0
  81. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v2_tensor.py +415 -0
  82. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_detector/v1.py +408 -0
  83. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_detector/v1_tensor.py +589 -0
  84. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_detector/v2.py +648 -0
  85. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/formatters/vlm_as_detector/v2_tensor.py +1004 -0
  86. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/buffer/v1.py +178 -0
  87. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_classes_replacement/v1.py +460 -0
  88. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_classes_replacement/v1_tensor.py +611 -0
  89. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_consensus/v1.py +754 -0
  90. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_consensus/v1_tensor.py +1197 -0
  91. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_difference/v1.py +354 -0
  92. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_difference/v1_tensor.py +415 -0
  93. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_list_rollup/v1.py +1061 -0
  94. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_list_rollup/v1_tensor.py +1330 -0
  95. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_stitch/v1.py +324 -0
  96. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/detections_stitch/v1_tensor.py +1308 -0
  97. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/dimension_collapse/v1.py +145 -0
  98. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/frame_delay/v1.py +292 -0
  99. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/frame_delay/v1_tensor.py +169 -0
  100. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/image_stack/v1.py +279 -0
  101. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/overlap_analysis/v1.py +231 -0
  102. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/fusion/overlap_analysis/v1_tensor.py +416 -0
  103. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/loader.py +2018 -0
  104. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/math/cosine_similarity/v1.py +143 -0
  105. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/math/cosine_similarity/v1_tensor.py +150 -0
  106. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/model_capabilities.py +165 -0
  107. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v1.py +742 -0
  108. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v2.py +871 -0
  109. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v3.py +1033 -0
  110. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v4.py +1214 -0
  111. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v5.py +1308 -0
  112. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip/v1.py +269 -0
  113. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip/v1_tensor.py +276 -0
  114. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip_comparison/v1.py +250 -0
  115. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip_comparison/v1_tensor.py +272 -0
  116. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip_comparison/v2.py +321 -0
  117. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/clip_comparison/v2_tensor.py +354 -0
  118. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/cog_vlm/v1.py +231 -0
  119. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/cosmos3/v1.py +294 -0
  120. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/depth_estimation/v1.py +321 -0
  121. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/depth_estimation/v1_tensor.py +356 -0
  122. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/easy_ocr/v1.py +315 -0
  123. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/easy_ocr/v1_tensor.py +378 -0
  124. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/florence2/v1.py +726 -0
  125. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/florence2/v2.py +117 -0
  126. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/gaze/v1.py +188 -0
  127. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/glm_ocr/v1.py +438 -0
  128. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v1.py +778 -0
  129. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v2.py +922 -0
  130. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v3.py +1073 -0
  131. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v4.py +1108 -0
  132. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v5.py +1168 -0
  133. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemini/v6.py +1228 -0
  134. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemma/v1.py +686 -0
  135. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemma/v2.py +281 -0
  136. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemma/v3.py +328 -0
  137. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_gemma/v4.py +376 -0
  138. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_vision_ocr/v1.py +332 -0
  139. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/google_vision_ocr/v1_tensor.py +367 -0
  140. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v1.py +686 -0
  141. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v2.py +283 -0
  142. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v3.py +335 -0
  143. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/llama_vision/v1.py +683 -0
  144. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/llama_vision/v2.py +284 -0
  145. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/lmm/v1.py +496 -0
  146. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/lmm_classifier/v1.py +336 -0
  147. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/meta_vlm/v1.py +649 -0
  148. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/meta_vlm/v2.py +718 -0
  149. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/meta_vlm/v3.py +774 -0
  150. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/moondream2/v1.py +303 -0
  151. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/moondream2/v1_tensor.py +295 -0
  152. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/ocr/v1.py +241 -0
  153. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/ocr/v1_tensor.py +264 -0
  154. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v1.py +369 -0
  155. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v2.py +621 -0
  156. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v3.py +735 -0
  157. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v4.py +1015 -0
  158. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v5.py +1422 -0
  159. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v6.py +1467 -0
  160. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai/v7.py +1857 -0
  161. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openai_compatible/v1.py +502 -0
  162. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openrouter/v1.py +301 -0
  163. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openrouter/v2.py +358 -0
  164. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/openrouter/v3.py +474 -0
  165. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/perception_encoder/v1.py +284 -0
  166. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/perception_encoder/v1_tensor.py +298 -0
  167. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/pp_ocr/v1.py +270 -0
  168. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/pp_ocr/v1_tensor.py +348 -0
  169. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen/v1.py +309 -0
  170. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen3_5_openrouter/v1.py +698 -0
  171. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v1.py +358 -0
  172. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v2.py +305 -0
  173. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen3_6_openrouter/v1.py +695 -0
  174. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen3vl/v1.py +306 -0
  175. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v1.py +1016 -0
  176. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v2.py +1415 -0
  177. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v3.py +1469 -0
  178. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v4.py +1535 -0
  179. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/seg_preview/v1.py +393 -0
  180. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/seg_preview/v1_tensor.py +402 -0
  181. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything2/v1.py +592 -0
  182. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything2/v1_tensor.py +683 -0
  183. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything2_video/v1.py +488 -0
  184. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything2_video/v1_tensor.py +461 -0
  185. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v1.py +644 -0
  186. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v1_tensor.py +711 -0
  187. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v2.py +733 -0
  188. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v2_tensor.py +850 -0
  189. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v3.py +991 -0
  190. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3/v3_tensor.py +640 -0
  191. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_3d/v1.py +337 -0
  192. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_3d/v1_tensor.py +341 -0
  193. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_interactive/v1.py +653 -0
  194. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_interactive/v1_tensor.py +919 -0
  195. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_video/v1.py +727 -0
  196. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/segment_anything3_video/v1_tensor.py +810 -0
  197. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/smolvlm/v1.py +276 -0
  198. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/spacexai/v1.py +1015 -0
  199. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/spacexai/v2.py +1067 -0
  200. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/spacexai/v3.py +1131 -0
  201. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/stability_ai/image_gen/v1.py +224 -0
  202. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/stability_ai/inpainting/v1.py +264 -0
  203. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/stability_ai/inpainting/v1_tensor.py +271 -0
  204. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/stability_ai/outpainting/v1.py +313 -0
  205. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/yolo_world/v1.py +321 -0
  206. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/yolo_world/v1_tensor.py +191 -0
  207. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/zai_vlm/v1.py +761 -0
  208. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/foundation/zai_vlm/v2.py +823 -0
  209. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/action_recognition/v1.py +695 -0
  210. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/embedding/v1.py +221 -0
  211. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/embedding/v1_tensor.py +140 -0
  212. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v1.py +413 -0
  213. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v1_tensor.py +716 -0
  214. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v2.py +418 -0
  215. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v2_tensor.py +716 -0
  216. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v3.py +816 -0
  217. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v3_tensor.py +757 -0
  218. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v4.py +456 -0
  219. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v4_tensor.py +744 -0
  220. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v1.py +389 -0
  221. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v1_tensor.py +648 -0
  222. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v2.py +393 -0
  223. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v2_tensor.py +650 -0
  224. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v3.py +432 -0
  225. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v3_tensor.py +683 -0
  226. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v1.py +286 -0
  227. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v1_tensor.py +486 -0
  228. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v2.py +294 -0
  229. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v2_tensor.py +492 -0
  230. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v3.py +338 -0
  231. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v3_tensor.py +535 -0
  232. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v1.py +289 -0
  233. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v1_tensor.py +468 -0
  234. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v2.py +292 -0
  235. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v2_tensor.py +469 -0
  236. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v3.py +337 -0
  237. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v3_tensor.py +508 -0
  238. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v1.py +369 -0
  239. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v1_tensor.py +455 -0
  240. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v2.py +373 -0
  241. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v2_tensor.py +455 -0
  242. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v3.py +415 -0
  243. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection/v3_tensor.py +494 -0
  244. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v1.py +336 -0
  245. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v1_tensor.py +658 -0
  246. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v2.py +397 -0
  247. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v2_tensor.py +717 -0
  248. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/barcode_detection/v1.py +154 -0
  249. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/barcode_detection/v1_tensor.py +180 -0
  250. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/qr_code_detection/v1.py +162 -0
  251. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/qr_code_detection/v1_tensor.py +182 -0
  252. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/workload_presets.py +140 -0
  253. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_changes/v1.py +412 -0
  254. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_changes/v1_tensor.py +429 -0
  255. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_outliers/v1.py +287 -0
  256. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_outliers/v1_tensor.py +289 -0
  257. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/secrets_providers/environment_secrets_store/v1.py +176 -0
  258. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/email_notification/v1.py +543 -0
  259. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/email_notification/v2.py +1125 -0
  260. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/local_file/v1.py +465 -0
  261. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/onvif_movement/v1.py +1012 -0
  262. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/onvif_movement/v1_tensor.py +1049 -0
  263. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/s3/v1.py +504 -0
  264. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/slack/notification/v1.py +454 -0
  265. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/twilio/sms/v1.py +473 -0
  266. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/twilio/sms/v2.py +835 -0
  267. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/webhook/v1.py +662 -0
  268. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/botsort/v1.py +369 -0
  269. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/botsort/v1_tensor.py +370 -0
  270. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/bytetrack/v1.py +232 -0
  271. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/bytetrack/v1_tensor.py +239 -0
  272. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/ocsort/v1.py +248 -0
  273. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/ocsort/v1_tensor.py +248 -0
  274. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/sort/v1.py +219 -0
  275. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/sort/v1_tensor.py +226 -0
  276. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/absolute_static_crop/v1.py +189 -0
  277. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/absolute_static_crop/v1_tensor.py +205 -0
  278. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/bounding_rect/v1.py +195 -0
  279. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/bounding_rect/v1_tensor.py +268 -0
  280. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v1.py +223 -0
  281. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v1_tensor.py +306 -0
  282. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v2.py +243 -0
  283. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v2_tensor.py +326 -0
  284. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v3.py +308 -0
  285. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker/v3_tensor.py +404 -0
  286. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/camera_calibration/v1.py +304 -0
  287. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detection_offset/v1.py +232 -0
  288. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detection_offset/v1_tensor.py +336 -0
  289. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_combine/v1.py +142 -0
  290. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_combine/v1_tensor.py +360 -0
  291. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_filter/v1.py +198 -0
  292. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_merge/v1.py +199 -0
  293. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_merge/v1_tensor.py +284 -0
  294. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_transformation/v1.py +284 -0
  295. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_crop/v1.py +335 -0
  296. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_crop/v1_tensor.py +622 -0
  297. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_zones/v1.py +406 -0
  298. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_zones/v1_tensor.py +482 -0
  299. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/geotag_detection/v1.py +313 -0
  300. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/geotag_detection/v1_tensor.py +346 -0
  301. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/image_slicer/v1.py +255 -0
  302. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/image_slicer/v2.py +307 -0
  303. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/per_class_confidence_filter/v1.py +183 -0
  304. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/per_class_confidence_filter/v1_tensor.py +228 -0
  305. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/perspective_correction/v1.py +900 -0
  306. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/perspective_correction/v1_tensor.py +1387 -0
  307. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/qr_code_generator/v1.py +424 -0
  308. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/relative_static_crop/v1.py +192 -0
  309. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stabilize_detections/v1.py +361 -0
  310. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stabilize_detections/v1_tensor.py +548 -0
  311. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_images/v1.py +288 -0
  312. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v1.py +358 -0
  313. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v1_tensor.py +422 -0
  314. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v2.py +900 -0
  315. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v2_tensor.py +974 -0
  316. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/track_class_lock/v1.py +521 -0
  317. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/background_color/v1.py +185 -0
  318. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/background_color/v1_tensor.py +191 -0
  319. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/blur/v1.py +166 -0
  320. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/blur/v1_tensor.py +172 -0
  321. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/bounding_box/v1.py +197 -0
  322. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/bounding_box/v1_tensor.py +547 -0
  323. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/circle/v1.py +184 -0
  324. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/circle/v1_tensor.py +196 -0
  325. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/classification_label/v1.py +586 -0
  326. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/classification_label/v1_tensor.py +683 -0
  327. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/color/v1.py +188 -0
  328. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/color/v1_tensor.py +200 -0
  329. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/common/annotators/blur.py +134 -0
  330. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/corner/v1.py +196 -0
  331. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/corner/v1_tensor.py +208 -0
  332. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/crop/v1.py +227 -0
  333. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/crop/v1_tensor.py +235 -0
  334. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/dot/v1.py +218 -0
  335. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/dot/v1_tensor.py +226 -0
  336. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/ellipse/v1.py +208 -0
  337. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/ellipse/v1_tensor.py +220 -0
  338. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/grid/v1.py +295 -0
  339. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/halo/v1.py +217 -0
  340. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/halo/v1_tensor.py +225 -0
  341. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/halo/v2.py +217 -0
  342. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/halo/v2_tensor.py +225 -0
  343. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/heatmap/v1.py +370 -0
  344. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/heatmap/v1_tensor.py +382 -0
  345. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/icon/v1.py +415 -0
  346. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/icon/v1_tensor.py +424 -0
  347. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/keypoint/v1.py +432 -0
  348. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/keypoint/v1_tensor.py +326 -0
  349. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/label/v1.py +307 -0
  350. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/label/v1_tensor.py +1210 -0
  351. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/label/v2.py +295 -0
  352. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/label/v2_tensor.py +169 -0
  353. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/line_zone/v1.py +232 -0
  354. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/mask/v1.py +206 -0
  355. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/mask/v1_tensor.py +653 -0
  356. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/model_comparison/v1.py +246 -0
  357. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/model_comparison/v1_tensor.py +255 -0
  358. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/pixelate/v1.py +156 -0
  359. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/pixelate/v1_tensor.py +166 -0
  360. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon/v1.py +205 -0
  361. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon/v1_tensor.py +210 -0
  362. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon/v2.py +204 -0
  363. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon/v2_tensor.py +209 -0
  364. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon_zone/v1.py +200 -0
  365. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/reference_path/v1.py +175 -0
  366. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/rich_label/v1.py +392 -0
  367. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/rich_label/v1_tensor.py +173 -0
  368. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/text_display/v1.py +502 -0
  369. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/trace/v1.py +271 -0
  370. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/trace/v1_tensor.py +279 -0
  371. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/triangle/v1.py +234 -0
  372. roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/triangle/v1_tensor.py +242 -0
  373. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/PLC_modbus/v1.py +244 -0
  374. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/PLCethernetIP/v1.py +270 -0
  375. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/event_writer/v1.py +795 -0
  376. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/kafka_consumer/v1.py +1145 -0
  377. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/kafka_producer/v1.py +862 -0
  378. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/microsoft_sql_server/v1.py +498 -0
  379. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/mqtt_reader/v1.py +1030 -0
  380. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/mqtt_writer/v1.py +642 -0
  381. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/opc_writer/v1.py +1634 -0
  382. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/plc/v1.py +663 -0
  383. roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/postgresql/v1.py +728 -0
  384. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/entities/workload.py +849 -0
  385. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/introspection/restriction_environment.py +133 -0
  386. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/introspection/workload.py +132 -0
  387. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/introspection/workload_entities.py +311 -0
  388. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/compiler/core.py +367 -0
  389. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/compiler/entities.py +300 -0
  390. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/compiler/graph_constructor.py +2064 -0
  391. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/compiler/utils.py +194 -0
  392. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/core.py +703 -0
  393. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/dynamic_blocks/block_assembler.py +720 -0
  394. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/dynamic_blocks/block_scaffolding.py +682 -0
  395. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/dynamic_blocks/representation_boundary.py +1488 -0
  396. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/executor/core.py +693 -0
  397. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/executor/utils.py +163 -0
  398. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/inner_workflow/dynamic_blocks_collection.py +157 -0
  399. roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/introspection/workload.py +708 -0
  400. roboflow_workflows-0.2.4/roboflow_workflows/prototypes/block.py +900 -0
  401. roboflow_workflows-0.2.4/roboflow_workflows/prototypes/model_registration.py +31 -0
  402. roboflow_workflows-0.2.4/roboflow_workflows/prototypes/models_provider.py +342 -0
  403. roboflow_workflows-0.2.4/roboflow_workflows/prototypes/platform_errors.py +92 -0
  404. roboflow_workflows-0.2.4/roboflow_workflows.egg-info/PKG-INFO +134 -0
  405. roboflow_workflows-0.2.4/roboflow_workflows.egg-info/SOURCES.txt +858 -0
  406. roboflow_workflows-0.2.4/roboflow_workflows.egg-info/requires.txt +55 -0
  407. roboflow_workflows-0.2.3rc2/PKG-INFO +0 -133
  408. roboflow_workflows-0.2.3rc2/pyproject.toml +0 -75
  409. roboflow_workflows-0.2.3rc2/roboflow_workflows/configuration.py +0 -352
  410. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/_zone_geometry.py +0 -234
  411. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/data_aggregator/v1.py +0 -493
  412. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/detection_event_log/v1.py +0 -478
  413. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/detection_event_log/v1_tensor.py +0 -482
  414. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/line_counter/v1.py +0 -203
  415. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/line_counter/v1_tensor.py +0 -221
  416. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/line_counter/v2.py +0 -250
  417. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/line_counter/v2_tensor.py +0 -280
  418. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/overlap/v1.py +0 -178
  419. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/overlap/v1_tensor.py +0 -191
  420. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/path_deviation/v1.py +0 -252
  421. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/path_deviation/v1_tensor.py +0 -271
  422. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/path_deviation/v2.py +0 -264
  423. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/path_deviation/v2_tensor.py +0 -284
  424. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v1.py +0 -272
  425. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v1_tensor.py +0 -300
  426. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v2.py +0 -279
  427. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v2_tensor.py +0 -307
  428. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v3.py +0 -384
  429. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/time_in_zone/v3_tensor.py +0 -410
  430. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/velocity/v1.py +0 -289
  431. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/analytics/velocity/v1_tensor.py +0 -392
  432. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/cache/cache_get/v1.py +0 -169
  433. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/cache/cache_set/v1.py +0 -180
  434. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/cache/common.py +0 -24
  435. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/auto_rotate_on_edges/v1.py +0 -421
  436. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/background_subtraction/v1.py +0 -159
  437. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/camera_focus/v1.py +0 -243
  438. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/camera_focus/v2.py +0 -1048
  439. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/contours/v1.py +0 -195
  440. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/contrast_enhancement/v1.py +0 -292
  441. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/contrast_equalization/v1.py +0 -177
  442. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/convert_grayscale/v1.py +0 -129
  443. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/detections_nearest_neighbor/v1.py +0 -440
  444. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/distance_measurement/v1.py +0 -468
  445. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/distance_measurement/v1_tensor.py +0 -516
  446. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/dominant_color/v1.py +0 -206
  447. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/image_blur/v1.py +0 -206
  448. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/image_preprocessing/v1.py +0 -286
  449. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/mask_area_measurement/v1.py +0 -181
  450. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/mask_area_measurement/v1_tensor.py +0 -201
  451. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/mask_edge_snap/v1.py +0 -578
  452. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/mask_edge_snap/v1_tensor.py +0 -625
  453. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/morphological_transformation/v1.py +0 -230
  454. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/morphological_transformation/v2.py +0 -202
  455. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/motion_detection/v1.py +0 -379
  456. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/motion_detection/v1_tensor.py +0 -422
  457. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/pixel_color_count/v1.py +0 -206
  458. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/sift/v1.py +0 -170
  459. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/sift_comparison/v1.py +0 -157
  460. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/sift_comparison/v2.py +0 -346
  461. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/size_measurement/v1.py +0 -307
  462. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/size_measurement/v1_tensor.py +0 -314
  463. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/template_matching/v1.py +0 -236
  464. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/template_matching/v1_tensor.py +0 -269
  465. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/classical_cv/threshold/v1.py +0 -271
  466. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/common/deserializers.py +0 -714
  467. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/common/keypoints.py +0 -60
  468. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/common/rle_compact.py +0 -236
  469. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/common/tensor_native.py +0 -1060
  470. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/common/utils.py +0 -768
  471. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/flow_control/continue_if/v1.py +0 -165
  472. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/flow_control/delta_filter/v1.py +0 -132
  473. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/flow_control/inner_workflow/v1.py +0 -377
  474. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/flow_control/rate_limiter/v1.py +0 -160
  475. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/flow_control/switch_case/v1.py +0 -181
  476. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/csv/v1.py +0 -215
  477. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/current_time/v1.py +0 -158
  478. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/expression/v1.py +0 -240
  479. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/first_non_empty_or_default/v1.py +0 -143
  480. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/json_parser/v1.py +0 -203
  481. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/property_definition/v1.py +0 -158
  482. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/string_template/v1.py +0 -270
  483. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v1.py +0 -330
  484. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v1_tensor.py +0 -390
  485. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v2.py +0 -338
  486. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_classifier/v2_tensor.py +0 -396
  487. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_detector/v1.py +0 -389
  488. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_detector/v1_tensor.py +0 -570
  489. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_detector/v2.py +0 -629
  490. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/formatters/vlm_as_detector/v2_tensor.py +0 -985
  491. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/buffer/v1.py +0 -154
  492. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_classes_replacement/v1.py +0 -441
  493. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_classes_replacement/v1_tensor.py +0 -592
  494. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_consensus/v1.py +0 -735
  495. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_consensus/v1_tensor.py +0 -1178
  496. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_difference/v1.py +0 -335
  497. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_difference/v1_tensor.py +0 -396
  498. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_list_rollup/v1.py +0 -1042
  499. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_list_rollup/v1_tensor.py +0 -1305
  500. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_stitch/v1.py +0 -305
  501. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/detections_stitch/v1_tensor.py +0 -1168
  502. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/dimension_collapse/v1.py +0 -126
  503. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/frame_delay/v1.py +0 -268
  504. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/frame_delay/v1_tensor.py +0 -141
  505. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/image_stack/v1.py +0 -248
  506. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/overlap_analysis/v1.py +0 -212
  507. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/fusion/overlap_analysis/v1_tensor.py +0 -397
  508. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/loader.py +0 -2009
  509. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/math/cosine_similarity/v1.py +0 -124
  510. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/math/cosine_similarity/v1_tensor.py +0 -131
  511. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/model_capabilities.py +0 -165
  512. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v1.py +0 -723
  513. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v2.py +0 -852
  514. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v3.py +0 -1014
  515. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v4.py +0 -1195
  516. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/anthropic_claude/v5.py +0 -1278
  517. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip/v1.py +0 -250
  518. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip/v1_tensor.py +0 -257
  519. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip_comparison/v1.py +0 -233
  520. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip_comparison/v1_tensor.py +0 -255
  521. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip_comparison/v2.py +0 -302
  522. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/clip_comparison/v2_tensor.py +0 -335
  523. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/cog_vlm/v1.py +0 -190
  524. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/cosmos3/v1.py +0 -263
  525. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/depth_estimation/v1.py +0 -290
  526. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/depth_estimation/v1_tensor.py +0 -325
  527. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/easy_ocr/v1.py +0 -300
  528. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/easy_ocr/v1_tensor.py +0 -363
  529. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/florence2/v1.py +0 -695
  530. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/florence2/v2.py +0 -92
  531. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/gaze/v1.py +0 -147
  532. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/glm_ocr/v1.py +0 -407
  533. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v1.py +0 -759
  534. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v2.py +0 -903
  535. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v3.py +0 -1054
  536. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v4.py +0 -1089
  537. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v5.py +0 -1149
  538. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemini/v6.py +0 -1209
  539. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemma/v1.py +0 -667
  540. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemma/v2.py +0 -262
  541. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemma/v3.py +0 -309
  542. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_gemma/v4.py +0 -357
  543. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_vision_ocr/v1.py +0 -307
  544. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/google_vision_ocr/v1_tensor.py +0 -342
  545. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v1.py +0 -667
  546. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v2.py +0 -264
  547. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/v3.py +0 -316
  548. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/llama_vision/v1.py +0 -664
  549. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/llama_vision/v2.py +0 -265
  550. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/lmm/v1.py +0 -454
  551. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/lmm_classifier/v1.py +0 -294
  552. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/meta_vlm/v1.py +0 -630
  553. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/meta_vlm/v2.py +0 -699
  554. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/meta_vlm/v3.py +0 -755
  555. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/moondream2/v1.py +0 -272
  556. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/moondream2/v1_tensor.py +0 -264
  557. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/ocr/v1.py +0 -226
  558. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/ocr/v1_tensor.py +0 -249
  559. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v1.py +0 -350
  560. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v2.py +0 -602
  561. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v3.py +0 -716
  562. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v4.py +0 -996
  563. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v5.py +0 -1403
  564. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v6.py +0 -1448
  565. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai/v7.py +0 -1832
  566. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openai_compatible/v1.py +0 -483
  567. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openrouter/v1.py +0 -282
  568. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openrouter/v2.py +0 -339
  569. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/openrouter/v3.py +0 -455
  570. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/perception_encoder/v1.py +0 -253
  571. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/perception_encoder/v1_tensor.py +0 -267
  572. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/pp_ocr/v1.py +0 -255
  573. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/pp_ocr/v1_tensor.py +0 -333
  574. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen/v1.py +0 -278
  575. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen3_5_openrouter/v1.py +0 -679
  576. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v1.py +0 -327
  577. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v2.py +0 -274
  578. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen3_6_openrouter/v1.py +0 -676
  579. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen3vl/v1.py +0 -275
  580. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v1.py +0 -995
  581. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v2.py +0 -1394
  582. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v3.py +0 -1448
  583. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/qwen_vlm/v4.py +0 -1514
  584. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/seg_preview/v1.py +0 -357
  585. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/seg_preview/v1_tensor.py +0 -366
  586. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything2/v1.py +0 -561
  587. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything2/v1_tensor.py +0 -652
  588. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything2_video/v1.py +0 -414
  589. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything2_video/v1_tensor.py +0 -383
  590. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v1.py +0 -591
  591. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v1_tensor.py +0 -658
  592. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v2.py +0 -680
  593. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v2_tensor.py +0 -797
  594. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v3.py +0 -938
  595. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3/v3_tensor.py +0 -587
  596. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_3d/v1.py +0 -306
  597. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_3d/v1_tensor.py +0 -310
  598. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_interactive/v1.py +0 -622
  599. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_interactive/v1_tensor.py +0 -888
  600. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_video/v1.py +0 -648
  601. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/segment_anything3_video/v1_tensor.py +0 -727
  602. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/smolvlm/v1.py +0 -245
  603. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/spacexai/v1.py +0 -996
  604. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/spacexai/v2.py +0 -1048
  605. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/spacexai/v3.py +0 -1112
  606. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/stability_ai/image_gen/v1.py +0 -205
  607. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/stability_ai/inpainting/v1.py +0 -238
  608. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/stability_ai/inpainting/v1_tensor.py +0 -245
  609. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/stability_ai/outpainting/v1.py +0 -288
  610. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/yolo_world/v1.py +0 -297
  611. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/yolo_world/v1_tensor.py +0 -167
  612. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/zai_vlm/v1.py +0 -742
  613. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/foundation/zai_vlm/v2.py +0 -804
  614. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/action_recognition/v1.py +0 -617
  615. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v1.py +0 -398
  616. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v1_tensor.py +0 -701
  617. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v2.py +0 -403
  618. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v2_tensor.py +0 -701
  619. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v3.py +0 -801
  620. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v3_tensor.py +0 -742
  621. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v4.py +0 -441
  622. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation/v4_tensor.py +0 -729
  623. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v1.py +0 -374
  624. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v1_tensor.py +0 -639
  625. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v2.py +0 -378
  626. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v2_tensor.py +0 -641
  627. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v3.py +0 -417
  628. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection/v3_tensor.py +0 -674
  629. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v1.py +0 -271
  630. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v1_tensor.py +0 -471
  631. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v2.py +0 -279
  632. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v2_tensor.py +0 -477
  633. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v3.py +0 -323
  634. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification/v3_tensor.py +0 -520
  635. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v1.py +0 -274
  636. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v1_tensor.py +0 -453
  637. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v2.py +0 -277
  638. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v2_tensor.py +0 -454
  639. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v3.py +0 -322
  640. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification/v3_tensor.py +0 -493
  641. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v1.py +0 -354
  642. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v1_tensor.py +0 -440
  643. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v2.py +0 -358
  644. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v2_tensor.py +0 -440
  645. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v3.py +0 -400
  646. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection/v3_tensor.py +0 -479
  647. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v1.py +0 -321
  648. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v1_tensor.py +0 -643
  649. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v2.py +0 -382
  650. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation/v2_tensor.py +0 -702
  651. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/barcode_detection/v1.py +0 -132
  652. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/barcode_detection/v1_tensor.py +0 -158
  653. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/qr_code_detection/v1.py +0 -140
  654. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/qr_code_detection/v1_tensor.py +0 -160
  655. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_changes/v1.py +0 -388
  656. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_changes/v1_tensor.py +0 -405
  657. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_outliers/v1.py +0 -263
  658. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_outliers/v1_tensor.py +0 -265
  659. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/secrets_providers/environment_secrets_store/v1.py +0 -145
  660. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/email_notification/v1.py +0 -507
  661. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/email_notification/v2.py +0 -1089
  662. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/local_file/v1.py +0 -432
  663. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/onvif_movement/v1.py +0 -990
  664. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/onvif_movement/v1_tensor.py +0 -1028
  665. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/s3/v1.py +0 -464
  666. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/slack/notification/v1.py +0 -418
  667. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/twilio/sms/v1.py +0 -437
  668. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/twilio/sms/v2.py +0 -799
  669. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/webhook/v1.py +0 -626
  670. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/botsort/v1.py +0 -326
  671. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/botsort/v1_tensor.py +0 -327
  672. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/bytetrack/v1.py +0 -208
  673. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/bytetrack/v1_tensor.py +0 -215
  674. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/ocsort/v1.py +0 -224
  675. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/ocsort/v1_tensor.py +0 -224
  676. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/sort/v1.py +0 -195
  677. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/sort/v1_tensor.py +0 -202
  678. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/absolute_static_crop/v1.py +0 -170
  679. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/absolute_static_crop/v1_tensor.py +0 -186
  680. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/bounding_rect/v1.py +0 -176
  681. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/bounding_rect/v1_tensor.py +0 -249
  682. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v1.py +0 -199
  683. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v1_tensor.py +0 -282
  684. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v2.py +0 -219
  685. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v2_tensor.py +0 -302
  686. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v3.py +0 -284
  687. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker/v3_tensor.py +0 -380
  688. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/camera_calibration/v1.py +0 -285
  689. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detection_offset/v1.py +0 -213
  690. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detection_offset/v1_tensor.py +0 -317
  691. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_combine/v1.py +0 -123
  692. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_combine/v1_tensor.py +0 -341
  693. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_filter/v1.py +0 -179
  694. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_merge/v1.py +0 -180
  695. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_merge/v1_tensor.py +0 -265
  696. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_transformation/v1.py +0 -265
  697. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_crop/v1.py +0 -316
  698. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_crop/v1_tensor.py +0 -603
  699. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_zones/v1.py +0 -387
  700. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_zones/v1_tensor.py +0 -463
  701. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/geotag_detection/v1.py +0 -294
  702. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/geotag_detection/v1_tensor.py +0 -327
  703. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/image_slicer/v1.py +0 -236
  704. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/image_slicer/v2.py +0 -288
  705. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/per_class_confidence_filter/v1.py +0 -164
  706. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/per_class_confidence_filter/v1_tensor.py +0 -209
  707. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/perspective_correction/v1.py +0 -881
  708. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/perspective_correction/v1_tensor.py +0 -1368
  709. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/qr_code_generator/v1.py +0 -405
  710. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/relative_static_crop/v1.py +0 -173
  711. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stabilize_detections/v1.py +0 -337
  712. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stabilize_detections/v1_tensor.py +0 -524
  713. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_images/v1.py +0 -269
  714. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v1.py +0 -339
  715. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v1_tensor.py +0 -403
  716. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v2.py +0 -881
  717. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_ocr_detections/v2_tensor.py +0 -955
  718. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/track_class_lock/v1.py +0 -497
  719. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/background_color/v1.py +0 -163
  720. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/background_color/v1_tensor.py +0 -169
  721. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/blur/v1.py +0 -130
  722. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/blur/v1_tensor.py +0 -140
  723. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/bounding_box/v1.py +0 -175
  724. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/bounding_box/v1_tensor.py +0 -525
  725. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/circle/v1.py +0 -162
  726. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/circle/v1_tensor.py +0 -174
  727. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/classification_label/v1.py +0 -564
  728. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/classification_label/v1_tensor.py +0 -661
  729. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/color/v1.py +0 -166
  730. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/color/v1_tensor.py +0 -178
  731. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/corner/v1.py +0 -174
  732. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/corner/v1_tensor.py +0 -186
  733. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/crop/v1.py +0 -205
  734. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/crop/v1_tensor.py +0 -213
  735. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/dot/v1.py +0 -196
  736. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/dot/v1_tensor.py +0 -204
  737. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/ellipse/v1.py +0 -186
  738. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/ellipse/v1_tensor.py +0 -198
  739. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/grid/v1.py +0 -276
  740. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/halo/v1.py +0 -195
  741. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/halo/v1_tensor.py +0 -203
  742. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/halo/v2.py +0 -195
  743. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/halo/v2_tensor.py +0 -203
  744. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/heatmap/v1.py +0 -339
  745. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/heatmap/v1_tensor.py +0 -351
  746. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/icon/v1.py +0 -393
  747. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/icon/v1_tensor.py +0 -402
  748. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/keypoint/v1.py +0 -327
  749. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/keypoint/v1_tensor.py +0 -304
  750. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/label/v1.py +0 -285
  751. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/label/v1_tensor.py +0 -1188
  752. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/label/v2.py +0 -273
  753. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/label/v2_tensor.py +0 -147
  754. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/line_zone/v1.py +0 -210
  755. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/mask/v1.py +0 -185
  756. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/mask/v1_tensor.py +0 -631
  757. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/model_comparison/v1.py +0 -224
  758. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/model_comparison/v1_tensor.py +0 -233
  759. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/pixelate/v1.py +0 -134
  760. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/pixelate/v1_tensor.py +0 -144
  761. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon/v1.py +0 -183
  762. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon/v1_tensor.py +0 -188
  763. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon/v2.py +0 -182
  764. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon/v2_tensor.py +0 -187
  765. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon_zone/v1.py +0 -178
  766. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/reference_path/v1.py +0 -156
  767. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/rich_label/v1.py +0 -370
  768. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/rich_label/v1_tensor.py +0 -151
  769. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/text_display/v1.py +0 -483
  770. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/trace/v1.py +0 -240
  771. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/trace/v1_tensor.py +0 -248
  772. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/triangle/v1.py +0 -212
  773. roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/triangle/v1_tensor.py +0 -220
  774. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/PLC_modbus/v1.py +0 -200
  775. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/PLCethernetIP/v1.py +0 -226
  776. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/event_writer/v1.py +0 -725
  777. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/kafka_consumer/v1.py +0 -1067
  778. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/kafka_producer/v1.py +0 -783
  779. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/microsoft_sql_server/v1.py +0 -428
  780. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/mqtt_reader/v1.py +0 -975
  781. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/mqtt_writer/v1.py +0 -623
  782. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/opc_writer/v1.py +0 -1558
  783. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/plc/v1.py +0 -572
  784. roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/postgresql/v1.py +0 -630
  785. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/compiler/core.py +0 -284
  786. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/compiler/entities.py +0 -279
  787. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/compiler/graph_constructor.py +0 -2035
  788. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/compiler/utils.py +0 -167
  789. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/core.py +0 -684
  790. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/dynamic_blocks/block_assembler.py +0 -550
  791. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/dynamic_blocks/block_scaffolding.py +0 -601
  792. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/dynamic_blocks/representation_boundary.py +0 -1464
  793. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/executor/core.py +0 -649
  794. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/executor/utils.py +0 -136
  795. roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/inner_workflow/dynamic_blocks_collection.py +0 -143
  796. roboflow_workflows-0.2.3rc2/roboflow_workflows/http_contract/describe.py +0 -163
  797. roboflow_workflows-0.2.3rc2/roboflow_workflows/http_contract/entities.py +0 -344
  798. roboflow_workflows-0.2.3rc2/roboflow_workflows/http_contract/errors.py +0 -173
  799. roboflow_workflows-0.2.3rc2/roboflow_workflows/prototypes/block.py +0 -594
  800. roboflow_workflows-0.2.3rc2/roboflow_workflows/prototypes/models_provider.py +0 -310
  801. roboflow_workflows-0.2.3rc2/roboflow_workflows/prototypes/platform_errors.py +0 -74
  802. roboflow_workflows-0.2.3rc2/roboflow_workflows.egg-info/PKG-INFO +0 -133
  803. roboflow_workflows-0.2.3rc2/roboflow_workflows.egg-info/SOURCES.txt +0 -850
  804. roboflow_workflows-0.2.3rc2/roboflow_workflows.egg-info/requires.txt +0 -50
  805. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/LICENSE +0 -0
  806. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/README.md +0 -0
  807. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/__init__.py +0 -0
  808. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/_compat_names.py +0 -0
  809. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/__init__.py +0 -0
  810. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/__init__.py +0 -0
  811. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/data_aggregator/__init__.py +0 -0
  812. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/detection_event_log/__init__.py +0 -0
  813. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/line_counter/__init__.py +0 -0
  814. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/overlap/__init__.py +0 -0
  815. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/path_deviation/__init__.py +0 -0
  816. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/time_in_zone/__init__.py +0 -0
  817. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/analytics/velocity/__init__.py +0 -0
  818. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/cache/__init__.py +0 -0
  819. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/cache/cache_get/__init__.py +0 -0
  820. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/cache/cache_set/__init__.py +0 -0
  821. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/cache/memory_cache.py +0 -0
  822. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/__init__.py +0 -0
  823. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/auto_rotate_on_edges/__init__.py +0 -0
  824. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/background_subtraction/__init__.py +0 -0
  825. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/camera_focus/__init__.py +0 -0
  826. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/contours/__init__.py +0 -0
  827. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/contrast_enhancement/__init__.py +0 -0
  828. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/contrast_enhancement/v1_tensor.py +0 -0
  829. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/contrast_equalization/__init__.py +0 -0
  830. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/contrast_equalization/v1_tensor.py +0 -0
  831. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/convert_grayscale/__init__.py +0 -0
  832. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/convert_grayscale/v1_tensor.py +0 -0
  833. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/detections_nearest_neighbor/__init__.py +0 -0
  834. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/detections_nearest_neighbor/v1_tensor.py +0 -0
  835. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/distance_measurement/__init__.py +0 -0
  836. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/dominant_color/__init__.py +0 -0
  837. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/dominant_color/v1_tensor.py +0 -0
  838. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/image_blur/__init__.py +0 -0
  839. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/image_blur/v1_tensor.py +0 -0
  840. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/image_preprocessing/__init__.py +0 -0
  841. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/image_preprocessing/v1_tensor.py +0 -0
  842. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/mask_area_measurement/__init__.py +0 -0
  843. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/mask_edge_snap/__init__.py +0 -0
  844. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/morphological_transformation/__init__.py +0 -0
  845. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/motion_detection/__init__.py +0 -0
  846. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/pixel_color_count/__init__.py +0 -0
  847. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/pixel_color_count/v1_tensor.py +0 -0
  848. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/sift/__init__.py +0 -0
  849. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/sift_comparison/__init__.py +0 -0
  850. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/size_measurement/__init__.py +0 -0
  851. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/template_matching/__init__.py +0 -0
  852. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/threshold/__init__.py +0 -0
  853. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/classical_cv/threshold/v1_tensor.py +0 -0
  854. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/__init__.py +0 -0
  855. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/deserializers_tensor.py +0 -0
  856. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/entities.py +0 -0
  857. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/inference_response_entities.py +0 -0
  858. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/openrouter.py +0 -0
  859. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/operators.py +0 -0
  860. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/__init__.py +0 -0
  861. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/entities/__init__.py +0 -0
  862. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/entities/enums.py +0 -0
  863. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/entities/introspection.py +0 -0
  864. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/entities/operations.py +0 -0
  865. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/entities/types.py +0 -0
  866. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/errors.py +0 -0
  867. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/evaluation_engine/__init__.py +0 -0
  868. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/evaluation_engine/core.py +0 -0
  869. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/evaluation_engine/detection/__init__.py +0 -0
  870. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/evaluation_engine/detection/geometry.py +0 -0
  871. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/introspection/__init__.py +0 -0
  872. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/introspection/core.py +0 -0
  873. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/__init__.py +0 -0
  874. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/booleans/__init__.py +0 -0
  875. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/booleans/base.py +0 -0
  876. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/classification_results/__init__.py +0 -0
  877. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/classification_results/base.py +0 -0
  878. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/core.py +0 -0
  879. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/detection/__init__.py +0 -0
  880. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/detection/base.py +0 -0
  881. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/detections/__init__.py +0 -0
  882. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/detections/base.py +0 -0
  883. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/dictionaries/__init__.py +0 -0
  884. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/dictionaries/base.py +0 -0
  885. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/frame_metadata/__init__.py +0 -0
  886. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/frame_metadata/base.py +0 -0
  887. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/generic/__init__.py +0 -0
  888. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/generic/base.py +0 -0
  889. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/images/__init__.py +0 -0
  890. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/images/base.py +0 -0
  891. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/numbers/__init__.py +0 -0
  892. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/numbers/base.py +0 -0
  893. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/sequences/__init__.py +0 -0
  894. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/sequences/base.py +0 -0
  895. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/strings/__init__.py +0 -0
  896. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/strings/base.py +0 -0
  897. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/timestamps/__init__.py +0 -0
  898. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/timestamps/base.py +0 -0
  899. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/query_language/operations/utils.py +0 -0
  900. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/reasoning.py +0 -0
  901. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/segmentation_entities.py +0 -0
  902. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/serializers.py +0 -0
  903. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/serializers_tensor.py +0 -0
  904. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/token_usage.py +0 -0
  905. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/utils_tensor.py +0 -0
  906. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/__init__.py +0 -0
  907. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/classification.py +0 -0
  908. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/detection_formats.py +0 -0
  909. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/detections.py +0 -0
  910. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/json_extraction.py +0 -0
  911. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/outputs.py +0 -0
  912. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/segmentation.py +0 -0
  913. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/tensor_native.py +0 -0
  914. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_decoding/utils.py +0 -0
  915. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlm_json.py +0 -0
  916. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/common/vlms.py +0 -0
  917. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/__init__.py +0 -0
  918. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/continue_if/__init__.py +0 -0
  919. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/delta_filter/__init__.py +0 -0
  920. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/inner_workflow/__init__.py +0 -0
  921. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/rate_limiter/__init__.py +0 -0
  922. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/flow_control/switch_case/__init__.py +0 -0
  923. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/__init__.py +0 -0
  924. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/csv/__init__.py +0 -0
  925. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/current_time/__init__.py +0 -0
  926. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/expression/__init__.py +0 -0
  927. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/first_non_empty_or_default/__init__.py +0 -0
  928. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/json_parser/__init__.py +0 -0
  929. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/property_definition/__init__.py +0 -0
  930. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/string_template/__init__.py +0 -0
  931. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_classifier/__init__.py +0 -0
  932. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/__init__.py +0 -0
  933. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/anthropic_detection_parsing.py +0 -0
  934. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/gemini_detection_parsing.py +0 -0
  935. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/muse_detection_parsing.py +0 -0
  936. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/openai_detection_parsing.py +0 -0
  937. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/qwen_detection_parsing.py +0 -0
  938. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/formatters/vlm_as_detector/spacexai_detection_parsing.py +0 -0
  939. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/__init__.py +0 -0
  940. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/buffer/__init__.py +0 -0
  941. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/detections_classes_replacement/__init__.py +0 -0
  942. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/detections_consensus/__init__.py +0 -0
  943. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/detections_difference/__init__.py +0 -0
  944. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/detections_list_rollup/__init__.py +0 -0
  945. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/detections_stitch/__init__.py +0 -0
  946. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/dimension_collapse/__init__.py +0 -0
  947. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/frame_delay/__init__.py +0 -0
  948. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/image_stack/__init__.py +0 -0
  949. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/fusion/overlap_analysis/__init__.py +0 -0
  950. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/math/__init__.py +0 -0
  951. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/math/cosine_similarity/__init__.py +0 -0
  952. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/__init__.py +0 -0
  953. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/__init__.py +0 -0
  954. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/anthropic_claude/__init__.py +0 -0
  955. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/clip/__init__.py +0 -0
  956. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/clip_comparison/__init__.py +0 -0
  957. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/cog_vlm/__init__.py +0 -0
  958. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/cosmos3/__init__.py +0 -0
  959. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/depth_estimation/__init__.py +0 -0
  960. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/easy_ocr/__init__.py +0 -0
  961. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/flex/__init__.py +0 -0
  962. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/flex/inpainting/__init__.py +0 -0
  963. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/florence2/__init__.py +0 -0
  964. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/florence2/v1_tensor.py +0 -0
  965. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/florence2/v2_tensor.py +0 -0
  966. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/gaze/__init__.py +0 -0
  967. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/glm_ocr/__init__.py +0 -0
  968. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/google_gemini/__init__.py +0 -0
  969. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/google_gemma/__init__.py +0 -0
  970. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/google_vision_ocr/__init__.py +0 -0
  971. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/kimi_openrouter/__init__.py +0 -0
  972. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/llama_vision/__init__.py +0 -0
  973. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/lmm/__init__.py +0 -0
  974. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/lmm_classifier/__init__.py +0 -0
  975. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/meta_vlm/__init__.py +0 -0
  976. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/moondream2/__init__.py +0 -0
  977. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/ocr/__init__.py +0 -0
  978. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/openai/__init__.py +0 -0
  979. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/openai_compatible/__init__.py +0 -0
  980. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/openrouter/__init__.py +0 -0
  981. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/perception_encoder/__init__.py +0 -0
  982. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/pp_ocr/__init__.py +0 -0
  983. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen/__init__.py +0 -0
  984. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3_5_openrouter/__init__.py +0 -0
  985. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/__init__.py +0 -0
  986. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v1_tensor.py +0 -0
  987. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3_5vl/v2_tensor.py +0 -0
  988. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3_6_openrouter/__init__.py +0 -0
  989. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3vl/__init__.py +0 -0
  990. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen3vl/v1_tensor.py +0 -0
  991. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/qwen_vlm/__init__.py +0 -0
  992. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/seg_preview/__init__.py +0 -0
  993. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything2/__init__.py +0 -0
  994. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything2_video/__init__.py +0 -0
  995. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything3/__init__.py +0 -0
  996. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything3_3d/__init__.py +0 -0
  997. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything3_interactive/__init__.py +0 -0
  998. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything3_video/__init__.py +0 -0
  999. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything_common/__init__.py +0 -0
  1000. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything_common/prompts.py +0 -0
  1001. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything_common/streaming_video.py +0 -0
  1002. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything_common/streaming_video_tensor.py +0 -0
  1003. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/segment_anything_common/visual_prompt.py +0 -0
  1004. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/smolvlm/__init__.py +0 -0
  1005. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/smolvlm/v1_tensor.py +0 -0
  1006. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/spacexai/__init__.py +0 -0
  1007. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/stability_ai/__init__.py +0 -0
  1008. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/stability_ai/image_gen/__init__.py +0 -0
  1009. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/stability_ai/inpainting/__init__.py +0 -0
  1010. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/stability_ai/outpainting/__init__.py +0 -0
  1011. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/yolo_world/__init__.py +0 -0
  1012. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/foundation/zai_vlm/__init__.py +0 -0
  1013. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/roboflow/__init__.py +0 -0
  1014. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/roboflow/action_recognition/__init__.py +0 -0
  1015. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/roboflow/action_recognition/entities.py +0 -0
  1016. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/models/roboflow/action_recognition/v1_tensor.py +0 -0
  1017. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/instance_segmentation → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/embedding}/__init__.py +0 -0
  1018. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/keypoint_detection → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/instance_segmentation}/__init__.py +0 -0
  1019. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_class_classification → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/keypoint_detection}/__init__.py +0 -0
  1020. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/multi_label_classification → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_class_classification}/__init__.py +0 -0
  1021. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/object_detection → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/multi_label_classification}/__init__.py +0 -0
  1022. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/object_detection}/__init__.py +0 -0
  1023. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/roboflow/semantic_segmentation}/__init__.py +0 -0
  1024. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/barcode_detection → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party}/__init__.py +0 -0
  1025. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/models/third_party/qr_code_detection → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/barcode_detection}/__init__.py +0 -0
  1026. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/models/third_party/qr_code_detection}/__init__.py +0 -0
  1027. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_changes → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling}/__init__.py +0 -0
  1028. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sampling/identify_outliers → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_changes}/__init__.py +0 -0
  1029. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/secrets_providers → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sampling/identify_outliers}/__init__.py +0 -0
  1030. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/secrets_providers/environment_secrets_store → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/secrets_providers}/__init__.py +0 -0
  1031. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/secrets_providers/environment_secrets_store}/__init__.py +0 -0
  1032. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/email_notification → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks}/__init__.py +0 -0
  1033. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/local_file → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/email_notification}/__init__.py +0 -0
  1034. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/onvif_movement → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/local_file}/__init__.py +0 -0
  1035. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/sinks/noop.py +0 -0
  1036. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/s3 → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/onvif_movement}/__init__.py +0 -0
  1037. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/slack → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/s3}/__init__.py +0 -0
  1038. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/slack/notification → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/slack}/__init__.py +0 -0
  1039. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/twilio → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/slack/notification}/__init__.py +0 -0
  1040. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/twilio/sms → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/twilio}/__init__.py +0 -0
  1041. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/sinks/webhook → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/twilio/sms}/__init__.py +0 -0
  1042. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/sinks/webhook}/__init__.py +0 -0
  1043. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/botsort → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers}/__init__.py +0 -0
  1044. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/trackers/_base.py +0 -0
  1045. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/trackers/_base_tensor.py +0 -0
  1046. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/bytetrack → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/botsort}/__init__.py +0 -0
  1047. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/ocsort → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/bytetrack}/__init__.py +0 -0
  1048. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/trackers/sort → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/ocsort}/__init__.py +0 -0
  1049. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/trackers/sort}/__init__.py +0 -0
  1050. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/absolute_static_crop → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations}/__init__.py +0 -0
  1051. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/bounding_rect → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/absolute_static_crop}/__init__.py +0 -0
  1052. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/byte_tracker → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/bounding_rect}/__init__.py +0 -0
  1053. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/camera_calibration → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/byte_tracker}/__init__.py +0 -0
  1054. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detection_offset → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/camera_calibration}/__init__.py +0 -0
  1055. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_combine → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detection_offset}/__init__.py +0 -0
  1056. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_filter → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_combine}/__init__.py +0 -0
  1057. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_merge → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_filter}/__init__.py +0 -0
  1058. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/detections_transformation → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_merge}/__init__.py +0 -0
  1059. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_crop → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/detections_transformation}/__init__.py +0 -0
  1060. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/dynamic_zones → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_crop}/__init__.py +0 -0
  1061. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/geotag_detection → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/dynamic_zones}/__init__.py +0 -0
  1062. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/image_slicer → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/geotag_detection}/__init__.py +0 -0
  1063. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/per_class_confidence_filter → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/image_slicer}/__init__.py +0 -0
  1064. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/perspective_correction → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/per_class_confidence_filter}/__init__.py +0 -0
  1065. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/qr_code_generator → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/perspective_correction}/__init__.py +0 -0
  1066. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/relative_static_crop → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/qr_code_generator}/__init__.py +0 -0
  1067. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stabilize_detections → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/relative_static_crop}/__init__.py +0 -0
  1068. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_images → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stabilize_detections}/__init__.py +0 -0
  1069. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/stitch_ocr_detections → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_images}/__init__.py +0 -0
  1070. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/transformations/track_class_lock → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/stitch_ocr_detections}/__init__.py +0 -0
  1071. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/transformations/track_class_lock}/__init__.py +0 -0
  1072. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/transformations/track_class_lock/v1_tensor.py +0 -0
  1073. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/background_color → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations}/__init__.py +0 -0
  1074. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/blur → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/background_color}/__init__.py +0 -0
  1075. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/bounding_box → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/blur}/__init__.py +0 -0
  1076. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/circle → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/bounding_box}/__init__.py +0 -0
  1077. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/classification_label → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/circle}/__init__.py +0 -0
  1078. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/color → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/classification_label}/__init__.py +0 -0
  1079. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/common → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/color}/__init__.py +0 -0
  1080. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/common/annotators → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/common}/__init__.py +0 -0
  1081. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/corner → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/common/annotators}/__init__.py +0 -0
  1082. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/annotators/background_color.py +0 -0
  1083. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/annotators/halo.py +0 -0
  1084. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/annotators/model_comparison.py +0 -0
  1085. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/annotators/polygon.py +0 -0
  1086. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/base.py +0 -0
  1087. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/base_colorable.py +0 -0
  1088. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/base_colorable_tensor.py +0 -0
  1089. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/base_tensor.py +0 -0
  1090. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/README.md +0 -0
  1091. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/__init__.py +0 -0
  1092. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/anonymous_pro/AnonymousPro-Regular.ttf +0 -0
  1093. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/anonymous_pro/OFL.txt +0 -0
  1094. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/courier_prime/CourierPrime-Regular.ttf +0 -0
  1095. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/courier_prime/OFL.txt +0 -0
  1096. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/fira_code/FiraCode[wght].ttf +0 -0
  1097. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/fira_code/OFL.txt +0 -0
  1098. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/geist/Geist-Regular.ttf +0 -0
  1099. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/geist/OFL.txt +0 -0
  1100. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/geist_mono/GeistMono-Regular.ttf +0 -0
  1101. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/geist_mono/OFL.txt +0 -0
  1102. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/ibm_plex_mono/IBMPlexMono-Regular.ttf +0 -0
  1103. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/ibm_plex_mono/OFL.txt +0 -0
  1104. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/inconsolata/Inconsolata[wdth,wght].ttf +0 -0
  1105. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/inconsolata/OFL.txt +0 -0
  1106. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/inter/Inter[opsz,wght].ttf +0 -0
  1107. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/inter/OFL.txt +0 -0
  1108. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/jetbrains_mono/JetBrainsMono[wght].ttf +0 -0
  1109. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/jetbrains_mono/OFL.txt +0 -0
  1110. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/lato/Lato-Regular.ttf +0 -0
  1111. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/lato/OFL.txt +0 -0
  1112. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/montserrat/Montserrat[wght].ttf +0 -0
  1113. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/montserrat/OFL.txt +0 -0
  1114. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/noto_sans/NotoSans-Regular.ttf +0 -0
  1115. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/noto_sans/OFL.txt +0 -0
  1116. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/nunito_sans/NunitoSans[YTLC,opsz,wdth,wght].ttf +0 -0
  1117. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/nunito_sans/OFL.txt +0 -0
  1118. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/open_sans/OFL.txt +0 -0
  1119. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/open_sans/OpenSans[wdth,wght].ttf +0 -0
  1120. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/pt_mono/OFL.txt +0 -0
  1121. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/pt_mono/PTM55FT.ttf +0 -0
  1122. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/roboto/OFL.txt +0 -0
  1123. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/roboto/Roboto[wdth,wght].ttf +0 -0
  1124. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/roboto_mono/OFL.txt +0 -0
  1125. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/roboto_mono/RobotoMono[wght].ttf +0 -0
  1126. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/source_code_pro/OFL.txt +0 -0
  1127. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/source_code_pro/SourceCodePro[wght].ttf +0 -0
  1128. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/space_mono/OFL.txt +0 -0
  1129. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/space_mono/SpaceMono-Regular.ttf +0 -0
  1130. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/work_sans/OFL.txt +0 -0
  1131. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/assets/work_sans/WorkSans[wght].ttf +0 -0
  1132. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/downloader.py +0 -0
  1133. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/registry.py +0 -0
  1134. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/fonts/schema.py +0 -0
  1135. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/label_text.py +0 -0
  1136. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/common/utils.py +0 -0
  1137. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/crop → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/corner}/__init__.py +0 -0
  1138. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/dot → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/crop}/__init__.py +0 -0
  1139. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/ellipse → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/dot}/__init__.py +0 -0
  1140. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/grid → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/ellipse}/__init__.py +0 -0
  1141. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/halo → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/grid}/__init__.py +0 -0
  1142. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/heatmap → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/halo}/__init__.py +0 -0
  1143. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/icon → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/heatmap}/__init__.py +0 -0
  1144. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/keypoint → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/icon}/__init__.py +0 -0
  1145. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/label → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/keypoint}/__init__.py +0 -0
  1146. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/line_zone → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/label}/__init__.py +0 -0
  1147. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/mask → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/line_zone}/__init__.py +0 -0
  1148. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/model_comparison → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/mask}/__init__.py +0 -0
  1149. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/pixelate → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/model_comparison}/__init__.py +0 -0
  1150. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/pixelate}/__init__.py +0 -0
  1151. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/polygon_zone → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon}/__init__.py +0 -0
  1152. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/reference_path → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/polygon_zone}/__init__.py +0 -0
  1153. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/rich_label → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/reference_path}/__init__.py +0 -0
  1154. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/text_display → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/rich_label}/__init__.py +0 -0
  1155. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/trace → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/text_display}/__init__.py +0 -0
  1156. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/core_steps/visualizations/text_display/utils.py +0 -0
  1157. {roboflow_workflows-0.2.3rc2/roboflow_workflows/core_steps/visualizations/triangle → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/trace}/__init__.py +0 -0
  1158. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks → roboflow_workflows-0.2.4/roboflow_workflows/core_steps/visualizations/triangle}/__init__.py +0 -0
  1159. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/PLC_modbus → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks}/__init__.py +0 -0
  1160. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/enterprise_blocks/loader.py +0 -0
  1161. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/PLCethernetIP → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/PLC_modbus}/__init__.py +0 -0
  1162. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/PLCethernetIP}/__init__.py +0 -0
  1163. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/event_writer → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks}/__init__.py +0 -0
  1164. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/kafka_consumer → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/event_writer}/__init__.py +0 -0
  1165. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/enterprise_blocks/sinks/kafka_common.py +0 -0
  1166. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/kafka_producer → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/kafka_consumer}/__init__.py +0 -0
  1167. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/microsoft_sql_server → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/kafka_producer}/__init__.py +0 -0
  1168. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/mqtt_reader → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/microsoft_sql_server}/__init__.py +0 -0
  1169. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/enterprise_blocks/sinks/mqtt_common.py +0 -0
  1170. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/mqtt_writer → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/mqtt_reader}/__init__.py +0 -0
  1171. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/opc_writer → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/mqtt_writer}/__init__.py +0 -0
  1172. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/plc → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/opc_writer}/__init__.py +0 -0
  1173. {roboflow_workflows-0.2.3rc2/roboflow_workflows/enterprise_blocks/sinks/postgresql → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/plc}/__init__.py +0 -0
  1174. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/enterprise_blocks/sinks/plc/client.py +0 -0
  1175. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/enterprise_blocks/sinks/plc/direct.py +0 -0
  1176. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine → roboflow_workflows-0.2.4/roboflow_workflows/enterprise_blocks/sinks/postgresql}/__init__.py +0 -0
  1177. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/environment.py +0 -0
  1178. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/errors.py +0 -0
  1179. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/entities → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine}/__init__.py +0 -0
  1180. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/constants.py +0 -0
  1181. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/core.py +0 -0
  1182. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/introspection → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/entities}/__init__.py +0 -0
  1183. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/entities/base.py +0 -0
  1184. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/entities/engine.py +0 -0
  1185. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/entities/tensor_native_types.py +0 -0
  1186. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/entities/types.py +0 -0
  1187. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/profiling → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/introspection}/__init__.py +0 -0
  1188. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/blocks_loader.py +0 -0
  1189. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/connections_discovery.py +0 -0
  1190. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/entities.py +0 -0
  1191. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/schema_parser.py +0 -0
  1192. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/selectors_parser.py +0 -0
  1193. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/introspection/utils.py +0 -0
  1194. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1 → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/profiling}/__init__.py +0 -0
  1195. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/profiling/core.py +0 -0
  1196. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/compiler → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1}/__init__.py +0 -0
  1197. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/debugger → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/compiler}/__init__.py +0 -0
  1198. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/cache.py +0 -0
  1199. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/graph_traversal.py +0 -0
  1200. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/reference_type_checker.py +0 -0
  1201. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/steps_initialiser.py +0 -0
  1202. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/syntactic_parser.py +0 -0
  1203. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/compiler/validator.py +0 -0
  1204. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/dynamic_blocks → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/debugger}/__init__.py +0 -0
  1205. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/debugger/core.py +0 -0
  1206. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/executor → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/dynamic_blocks}/__init__.py +0 -0
  1207. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/block_duration.py +0 -0
  1208. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/debug_logs.py +0 -0
  1209. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/entities.py +0 -0
  1210. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/error_utils.py +0 -0
  1211. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/modal_executor.py +0 -0
  1212. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/dynamic_blocks/workflow_debug.py +0 -0
  1213. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/entities.py +0 -0
  1214. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/executor/execution_data_manager → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/executor}/__init__.py +0 -0
  1215. {roboflow_workflows-0.2.3rc2/roboflow_workflows/execution_engine/v1/introspection → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/executor/execution_data_manager}/__init__.py +0 -0
  1216. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/execution_data_manager/branching_manager.py +0 -0
  1217. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/execution_data_manager/dynamic_batches_manager.py +0 -0
  1218. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/execution_data_manager/execution_cache.py +0 -0
  1219. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/execution_data_manager/manager.py +0 -0
  1220. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/execution_data_manager/step_input_assembler.py +0 -0
  1221. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/flow_coordinator.py +0 -0
  1222. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/output_constructor.py +0 -0
  1223. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/runtime_input_assembler.py +0 -0
  1224. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/executor/runtime_input_validator.py +0 -0
  1225. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/__init__.py +0 -0
  1226. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/compiler_bridge.py +0 -0
  1227. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/composition.py +0 -0
  1228. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/constants.py +0 -0
  1229. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/errors.py +0 -0
  1230. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/inline.py +0 -0
  1231. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/inner_workflow/reference_resolution.py +0 -0
  1232. {roboflow_workflows-0.2.3rc2/roboflow_workflows/http_contract → roboflow_workflows-0.2.4/roboflow_workflows/execution_engine/v1/introspection}/__init__.py +0 -0
  1233. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/introspection/inputs_discovery.py +0 -0
  1234. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/introspection/kinds_schemas.py +0 -0
  1235. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/introspection/kinds_schemas_register.py +0 -0
  1236. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/introspection/outputs_discovery.py +0 -0
  1237. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/introspection/types_discovery.py +0 -0
  1238. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/execution_engine/v1/step_error_handlers.py +0 -0
  1239. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/offline.py +0 -0
  1240. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/__init__.py +0 -0
  1241. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/background_tasks.py +0 -0
  1242. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/cache.py +0 -0
  1243. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/image_codec.py +0 -0
  1244. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/observer.py +0 -0
  1245. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/platform_client.py +0 -0
  1246. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/prototypes/workspace_resolver.py +0 -0
  1247. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/__init__.py +0 -0
  1248. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/action_recognition.py +0 -0
  1249. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/image_encoding.py +0 -0
  1250. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/images.py +0 -0
  1251. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/in_memory_cache.py +0 -0
  1252. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/lru_cache.py +0 -0
  1253. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/text.py +0 -0
  1254. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/utils/url_input.py +0 -0
  1255. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows/warnings.py +0 -0
  1256. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows.egg-info/dependency_links.txt +0 -0
  1257. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/roboflow_workflows.egg-info/top_level.txt +0 -0
  1258. {roboflow_workflows-0.2.3rc2 → roboflow_workflows-0.2.4}/setup.cfg +0 -0
@@ -0,0 +1,134 @@
1
+ Metadata-Version: 2.4
2
+ Name: roboflow-workflows
3
+ Version: 0.2.4
4
+ Summary: Roboflow Workflows execution engine and block library
5
+ License: LICENSE.core (Apache 2.0) applies to all files in this repository
6
+ except for files in or under any directory that contains a superseding
7
+ license file (such as the models located in `inference/models/`
8
+ which are governed by their own individual licenses and
9
+ the files and folders in the `inference/enterprise/` and `inference_cli/lib/enterprise/` directories which are
10
+ governed by the Roboflow Enterprise License located at
11
+ `inference/enterprise/LICENSE.txt`).
12
+ Requires-Python: <3.14,>=3.10
13
+ Description-Content-Type: text/markdown
14
+ License-File: LICENSE
15
+ Requires-Dist: pydantic<2.12.0,>=2.8.0
16
+ Requires-Dist: typing-extensions<=4.15.0,>=4.8.0
17
+ Requires-Dist: networkx<4.0.0,>=3.0.0
18
+ Requires-Dist: packaging~=24.0
19
+ Requires-Dist: numpy<2.4,>=1.26
20
+ Requires-Dist: supervision<0.31.0,>=0.30.6
21
+ Requires-Dist: opencv-python<4.13.0,>=4.8.1.78
22
+ Requires-Dist: pillow<13.0.0,>=12.3.0
23
+ Requires-Dist: shapely<2.1.0,>=2.0.4
24
+ Requires-Dist: scikit-image<=0.25.2,>=0.19.0
25
+ Requires-Dist: pycocotools<2.1.0,>=2.0.10
26
+ Requires-Dist: pybase64~=1.0.0
27
+ Requires-Dist: filelock<=4.0.0,>=3.20.3
28
+ Requires-Dist: requests<3.0.0,>=2.33.0
29
+ Requires-Dist: urllib3<3.0.0,>=2.7.0
30
+ Requires-Dist: torch<3.0.0,>=2.0.1
31
+ Requires-Dist: torchvision
32
+ Requires-Dist: inference-models>=0.37.1
33
+ Requires-Dist: inference-sdk>=1.7.0
34
+ Requires-Dist: msgpack
35
+ Requires-Dist: websocket-client~=1.9.0
36
+ Requires-Dist: openai<2.0.0,>=1.17.0
37
+ Requires-Dist: anthropic~=0.49.0
38
+ Requires-Dist: boto3<=1.41.5,>=1.40.0
39
+ Requires-Dist: botocore<=1.41.5,>=1.40.0
40
+ Requires-Dist: httpx~=0.28.1
41
+ Requires-Dist: pandas<3.0.0,>=2.2.3
42
+ Requires-Dist: matplotlib
43
+ Requires-Dist: qrcode~=8.0.0
44
+ Requires-Dist: zxing-cpp~=2.2.0; python_version < "3.13"
45
+ Requires-Dist: zxing-cpp==2.3.0; python_version >= "3.13"
46
+ Requires-Dist: trackers~=2.4.0
47
+ Requires-Dist: onvif-zeep-async==2.0.0
48
+ Requires-Dist: zeep<5.0,>=4.0
49
+ Requires-Dist: simple-pid~=2.0.1
50
+ Requires-Dist: slack-sdk~=3.33.4
51
+ Requires-Dist: twilio~=9.3.7
52
+ Provides-Extra: enterprise
53
+ Requires-Dist: asyncua~=1.1.5; extra == "enterprise"
54
+ Requires-Dist: paho-mqtt~=1.6.1; extra == "enterprise"
55
+ Requires-Dist: pylogix==1.0.5; extra == "enterprise"
56
+ Requires-Dist: pymodbus<=3.8.3,>=3.6.9; extra == "enterprise"
57
+ Requires-Dist: psycopg[binary]<4,>=3.2; extra == "enterprise"
58
+ Requires-Dist: confluent-kafka<3,>=2.5; extra == "enterprise"
59
+ Requires-Dist: aws-msk-iam-sasl-signer-python<2,>=1.0.2; extra == "enterprise"
60
+ Requires-Dist: fastapi<0.142,>=0.134; extra == "enterprise"
61
+ Provides-Extra: test
62
+ Requires-Dist: pytest<10.0.0,>=9.0.3; extra == "test"
63
+ Requires-Dist: requests-mock~=1.12.1; extra == "test"
64
+ Dynamic: license-file
65
+
66
+ # roboflow-workflows
67
+
68
+ Roboflow Workflows execution engine and block library.
69
+
70
+ `roboflow-workflows` is the Python distribution for the Workflows engine that
71
+ powers [Roboflow Inference](https://github.com/roboflow/inference). It can be
72
+ installed independently for use in standalone pipelines or embedded in the
73
+ full Inference server.
74
+
75
+ ## Changelog and versions
76
+
77
+ [CHANGELOG.md](CHANGELOG.md) records package changes, including an Execution
78
+ engine subsection for compile/run behavior changes. Each release records its
79
+ bundled engine version, starting with package `0.2.2`. The package version
80
+ identifies the distribution; the separate engine version controls workflow and
81
+ block compatibility. Block-only releases can leave the engine version unchanged.
82
+
83
+ Earlier engine changes and migration examples remain in the
84
+ [historical engine changelog](https://docs.roboflow.com/workflows/developer-guide/developer-guide/execution-engine-changelog).
85
+
86
+ ## Installation
87
+
88
+ ```bash
89
+ pip install roboflow-workflows
90
+ ```
91
+
92
+ Optional extras:
93
+
94
+ ```bash
95
+ pip install "roboflow-workflows[enterprise]" # enterprise sink blocks
96
+ pip install "roboflow-workflows[test]" # test-only dependencies
97
+ ```
98
+
99
+ ## Local development (from this repository)
100
+
101
+ ```bash
102
+ # Provision font assets (required by visualization blocks).
103
+ python workflows/build_scripts/download_fonts.py
104
+
105
+ # Install the package in editable mode with test + enterprise deps.
106
+ pip install -e './workflows[test,enterprise]'
107
+
108
+ # Run package unit and isolation tests.
109
+ cd workflows
110
+ python -m pytest tests/unit_tests tests/isolation
111
+
112
+ # Build a wheel from the same project directory (fonts already provisioned).
113
+ uv lock --check
114
+ uv build --out-dir ../dist
115
+ ```
116
+
117
+ For editing `roboflow_workflows` source while running the full Inference
118
+ server, install both projects together from the repository root:
119
+
120
+ ```bash
121
+ pip install -e ./inference_models -e './workflows[test,enterprise]' -e .
122
+ ```
123
+
124
+ The dev images also support mounting `workflows/roboflow_workflows` at
125
+ `/app/roboflow_workflows`, alongside the existing `/app/inference` mount.
126
+ Provision local fonts first, since a bind mount replaces bundled image files.
127
+
128
+ ## Font assets
129
+
130
+ Visualization blocks require pre-provisioned font files. Font binaries are
131
+ downloaded by `workflows/build_scripts/download_fonts.py` (or
132
+ `make download_fonts` at the repository root) and are gitignored. They are
133
+ embedded as package-data in the published wheel so that offline environments
134
+ work without a checkout.
@@ -0,0 +1,76 @@
1
+ [project]
2
+ name = "roboflow-workflows"
3
+ version = "0.2.4"
4
+ description = "Roboflow Workflows execution engine and block library"
5
+ readme = "README.md"
6
+ license = {file = "LICENSE"}
7
+ requires-python = ">=3.10,<3.14"
8
+ dependencies = [
9
+ "pydantic>=2.8.0,<2.12.0",
10
+ "typing-extensions>=4.8.0,<=4.15.0",
11
+ "networkx>=3.0.0,<4.0.0",
12
+ "packaging~=24.0",
13
+ "numpy>=1.26,<2.4",
14
+ "supervision>=0.30.6,<0.31.0",
15
+ "opencv-python>=4.8.1.78,<4.13.0",
16
+ "pillow>=12.3.0,<13.0.0",
17
+ "shapely>=2.0.4,<2.1.0",
18
+ "scikit-image>=0.19.0,<=0.25.2",
19
+ "pycocotools>=2.0.10,<2.1.0",
20
+ "pybase64~=1.0.0",
21
+ "filelock>=3.20.3,<=4.0.0",
22
+ "requests>=2.33.0,<3.0.0",
23
+ "urllib3>=2.7.0,<3.0.0",
24
+ "torch>=2.0.1,<3.0.0",
25
+ "torchvision",
26
+ "inference-models>=0.37.1",
27
+ "inference-sdk>=1.7.0",
28
+ "msgpack",
29
+ "websocket-client~=1.9.0",
30
+ "openai>=1.17.0,<2.0.0",
31
+ "anthropic~=0.49.0",
32
+ "boto3>=1.40.0,<=1.41.5",
33
+ "botocore>=1.40.0,<=1.41.5",
34
+ "httpx~=0.28.1",
35
+ "pandas>=2.2.3,<3.0.0",
36
+ "matplotlib",
37
+ "qrcode~=8.0.0",
38
+ "zxing-cpp~=2.2.0; python_version < '3.13'",
39
+ "zxing-cpp==2.3.0; python_version >= '3.13'",
40
+ "trackers~=2.4.0",
41
+ "onvif-zeep-async==2.0.0",
42
+ "zeep>=4.0,<5.0",
43
+ "simple-pid~=2.0.1",
44
+ "slack-sdk~=3.33.4",
45
+ "twilio~=9.3.7",
46
+ ]
47
+
48
+ [project.optional-dependencies]
49
+ enterprise = [
50
+ "asyncua~=1.1.5",
51
+ "paho-mqtt~=1.6.1",
52
+ "pylogix==1.0.5",
53
+ "pymodbus>=3.6.9,<=3.8.3",
54
+ "psycopg[binary]>=3.2,<4",
55
+ "confluent-kafka>=2.5,<3",
56
+ "aws-msk-iam-sasl-signer-python>=1.0.2,<2",
57
+ "fastapi>=0.134,<0.142",
58
+ ]
59
+ test = [
60
+ "pytest>=9.0.3,<10.0.0",
61
+ "requests-mock~=1.12.1",
62
+ ]
63
+
64
+ [build-system]
65
+ requires = ["setuptools>=83.0.0", "wheel"]
66
+ build-backend = "setuptools.build_meta"
67
+
68
+ [tool.setuptools.packages.find]
69
+ include = ["roboflow_workflows*"]
70
+ exclude = ["tests*", "build_scripts*", "scripts*"]
71
+
72
+ [tool.setuptools.package-data]
73
+ roboflow_workflows = [
74
+ "core_steps/visualizations/common/fonts/assets/*/*",
75
+ "core_steps/visualizations/common/fonts/README.md",
76
+ ]
@@ -0,0 +1,377 @@
1
+ """Injected configuration for `inference/core/workflows`.
2
+
3
+ Every value the module used to take from `inference.core.env` is a field of
4
+ `WorkflowsConfiguration`, which the host builds from its own already-resolved
5
+ settings and installs once per process with `configure_process`.
6
+
7
+ The configuration is PROCESS-WIDE in its entirety. Every configuration value
8
+ is read from a module constant frozen at import - `core_steps/loader.py`
9
+ branches on the tensor flag while it is being imported, `offline.py:34` reads
10
+ `SECURE_GATEWAY`, `block_assembler.py:100` reads the custom-Python
11
+ authorization flag - so there is no field a second, differing configuration
12
+ could change after the fact. `ensure_process_configuration_matches` therefore
13
+ refuses ANY difference rather than accepting a value nothing would honour.
14
+
15
+ Per-engine variance lives where it already did: the named init parameters
16
+ `workflows_core.{step_execution_mode, api_key, disable_sinks,
17
+ allow_access_to_file_system, allowed_write_directory,
18
+ allow_access_to_environmental_variables}`, resolved by
19
+ `steps_initialiser.retrieve_init_parameter_values`.
20
+
21
+ `default_configuration()` is the STANDALONE fallback, not the production path.
22
+ Its values are the ones `inference/core/env.py` resolves for an EMPTY
23
+ environment. Every normalisation `env.py` performs - `str2bool`, `.lower()`,
24
+ the `OFFLINE_MODE` / `SECURE_GATEWAY` rewrites, the `PROJECT`-dependent hosted
25
+ URLs, the api-key-transport validation - stays in `env.py`; the host builder
26
+ copies the RESOLVED attributes. `resolve_image_tensor_device` is the single
27
+ copied piece of logic and is pinned by a differential test against `env.py`.
28
+ """
29
+
30
+ import threading
31
+ from dataclasses import dataclass, field, fields, is_dataclass
32
+ from typing import Any, List, Optional, Tuple
33
+
34
+ from roboflow_workflows.errors import WorkflowEnvironmentConfigurationError
35
+
36
+ # The values `inference/core/env.py` accepts for
37
+ # `WORKFLOWS_CUSTOM_PYTHON_EXECUTION_MODE`, after its `.strip().lower()`.
38
+ CUSTOM_PYTHON_EXECUTION_MODES = ("local", "modal")
39
+
40
+
41
+ @dataclass(frozen=True)
42
+ class EngineConfiguration:
43
+ """Engine-level values, copied from the host's resolved settings.
44
+
45
+ Raises:
46
+ WorkflowEnvironmentConfigurationError: If `custom_python_execution_mode`
47
+ is not exactly one of `CUSTOM_PYTHON_EXECUTION_MODES`. The value is
48
+ not normalised here: a host passes the value it already resolved.
49
+ """
50
+
51
+ step_execution_mode: str = "local"
52
+ async_future_result_timeout: float = 60.0
53
+ max_inner_workflow_depth: int = 4
54
+ max_inner_workflow_count: int = 32
55
+ allow_custom_python_execution: bool = True
56
+ custom_python_execution_mode: str = "local"
57
+ allow_blocks_accessing_local_storage: bool = True
58
+ allow_blocks_accessing_environmental_variables: bool = True
59
+ blocks_write_directory: Optional[str] = None
60
+ # Tuples, not lists: the configuration is frozen and compared by value. The
61
+ # facade re-materialises the `list` the call sites see today.
62
+ disabled_block_types: Tuple[str, ...] = ()
63
+ disabled_block_patterns: Tuple[str, ...] = ()
64
+ allow_webhook_sink_to_non_global_addresses: bool = True
65
+ # PostgreSQL sink policy. Optional[Tuple] mirrors env.py's None-vs-set
66
+ # distinction (empty env var / unset). The sink reconstructs a `set`.
67
+ allow_postgresql_sink_to_non_global_addresses: bool = True
68
+ postgresql_sink_blacklisted_addresses: Optional[Tuple[str, ...]] = None
69
+ postgresql_sink_whitelisted_addresses: Optional[Tuple[str, ...]] = None
70
+ # Kafka sinks bootstrap-server policy. Optional[Tuple] mirrors env.py's
71
+ # None-vs-list distinction; the facade rebuilds the ORDERED list.
72
+ allow_kafka_sinks_user_provided_bootstrap_servers: bool = True
73
+ kafka_sinks_whitelisted_bootstrap_servers: Optional[Tuple[str, ...]] = None
74
+ # MQTT blocks broker-address policy, same shape as the Kafka pair: the
75
+ # facade rebuilds the ORDERED list and the first entry is the operator's
76
+ # broker when user-provided hosts are not allowed.
77
+ allow_mqtt_blocks_user_provided_host: bool = True
78
+ mqtt_blocks_whitelisted_hosts: Optional[Tuple[str, ...]] = None
79
+
80
+ def __post_init__(self) -> None:
81
+ # Consumers compare against "modal" only, so any other value would
82
+ # silently run custom Python locally.
83
+ if self.custom_python_execution_mode not in CUSTOM_PYTHON_EXECUTION_MODES:
84
+ raise WorkflowEnvironmentConfigurationError(
85
+ public_message=(
86
+ "`engine.custom_python_execution_mode` must be one of "
87
+ f"{list(CUSTOM_PYTHON_EXECUTION_MODES)}, got "
88
+ f"{self.custom_python_execution_mode!r}."
89
+ ),
90
+ context="workflow_configuration | engine_configuration",
91
+ )
92
+
93
+
94
+ @dataclass(frozen=True)
95
+ class TensorConfiguration:
96
+ """Selects which block classes `core_steps/loader.py` imports and how
97
+ `WorkflowImageData` stores pixels. Block loading is process-global and
98
+ cached (`blocks_loader.py:252`), so these can never be per-engine."""
99
+
100
+ representation_enabled: bool = False
101
+ # `torch.device` when the flag is on and torch is importable, else None.
102
+ # Typed `Any` so this module never imports torch (an OPTIONAL dependency).
103
+ image_tensor_device: Optional[Any] = None
104
+ visualisation_validate_owners: bool = False
105
+ sam_video_mask_representation: str = "rle"
106
+ enforce_dense_instance_masks: bool = False
107
+
108
+
109
+ @dataclass(frozen=True)
110
+ class RemoteExecutionConfiguration:
111
+ api_target: str = "hosted"
112
+ api_key_transport: str = "both"
113
+ local_inference_api_url: str = "http://127.0.0.1:9001"
114
+ hosted_detect_url: str = "https://detect.roboflow.com"
115
+ hosted_classification_url: str = "https://classify.roboflow.com"
116
+ hosted_instance_segmentation_url: str = "https://outline.roboflow.com"
117
+ hosted_semantic_segmentation_url: str = "https://segment.roboflow.com"
118
+ hosted_core_model_url: str = "https://infer.roboflow.com"
119
+ max_step_batch_size: int = 1
120
+ max_step_concurrent_requests: int = 8
121
+ inner_workflow_remote_target: str = "https://serverless.roboflow.com"
122
+ inner_workflow_remote_dispatch_request_timeout: float = 300.0
123
+ openai_compatible_allowed_base_urls: Tuple[str, ...] = ("*",)
124
+
125
+
126
+ @dataclass(frozen=True)
127
+ class PlatformConfiguration:
128
+ api_base_url: str = "https://api.roboflow.com"
129
+ offline_mode: bool = False
130
+ secure_gateway: Optional[str] = None
131
+ gcp_serverless: bool = False
132
+ # LAMBDA runtime flag, mirrors inference.core.env.LAMBDA. Used by the
133
+ # PostgreSQL sink hosted-runtime gate together with gcp_serverless.
134
+ lambda_runtime: bool = False
135
+
136
+
137
+ @dataclass(frozen=True)
138
+ class FontsConfiguration:
139
+ allow_download: bool = True
140
+ model_cache_dir: str = "/tmp/cache"
141
+
142
+
143
+ @dataclass(frozen=True)
144
+ class ModelsConfiguration:
145
+ lmm_enabled: bool = False
146
+ vlm_segmentation_max_polygon_vertices: int = 500
147
+ clip_version_id: str = "ViT-B-16"
148
+ core_model_sam2_enabled: bool = True
149
+ core_model_sam3_enabled: bool = True
150
+ core_model_pe_enabled: bool = True
151
+ core_model_gaze_enabled: bool = True
152
+ sam3_exec_mode: str = "local"
153
+ sam3_3d_objects_enabled: bool = False
154
+ florence2_enabled: bool = True
155
+ qwen_2_5_enabled: bool = True
156
+ qwen_3_enabled: bool = True
157
+ qwen_3_5_enabled: bool = True
158
+ smolvlm2_enabled: bool = True
159
+ moondream2_enabled: bool = True
160
+ depth_estimation_enabled: bool = True
161
+ cosmos3_enabled: bool = True
162
+ glm_ocr_enabled: bool = True
163
+
164
+
165
+ @dataclass(frozen=True)
166
+ class ModalConfiguration:
167
+ token_id: Optional[str] = None
168
+ token_secret: Optional[str] = field(default=None, repr=False)
169
+ workspace_name: str = "roboflow"
170
+ allow_anonymous_execution: bool = False
171
+ anonymous_workspace_name: str = "anonymous"
172
+ app_name: str = "webexec-roboflow-platform"
173
+ executor_idle_ttl_seconds: int = 1800
174
+ jpeg_quality: int = 95
175
+ transport: str = "http"
176
+ ws_connect_timeout_seconds: int = 30
177
+ ws_read_timeout_seconds: int = 720
178
+ ws_connection_pool_size: int = 1
179
+ ws_fail_on_session_loss: bool = False
180
+ ws_idle_release_seconds: int = 120
181
+
182
+
183
+ @dataclass(frozen=True)
184
+ class SecretsConfiguration:
185
+ api_key: Optional[str] = field(default=None, repr=False)
186
+ roboflow_internal_service_name: Optional[str] = None
187
+ roboflow_internal_service_secret: Optional[str] = field(default=None, repr=False)
188
+
189
+
190
+ @dataclass(frozen=True)
191
+ class DebugConfiguration:
192
+ output_dir: Optional[str] = None
193
+
194
+
195
+ @dataclass(frozen=True)
196
+ class WorkflowsConfiguration:
197
+ engine: EngineConfiguration = field(default_factory=EngineConfiguration)
198
+ tensor: TensorConfiguration = field(default_factory=TensorConfiguration)
199
+ remote: RemoteExecutionConfiguration = field(
200
+ default_factory=RemoteExecutionConfiguration
201
+ )
202
+ platform: PlatformConfiguration = field(default_factory=PlatformConfiguration)
203
+ fonts: FontsConfiguration = field(default_factory=FontsConfiguration)
204
+ models: ModelsConfiguration = field(default_factory=ModelsConfiguration)
205
+ modal: ModalConfiguration = field(default_factory=ModalConfiguration)
206
+ secrets: SecretsConfiguration = field(default_factory=SecretsConfiguration)
207
+ debug: DebugConfiguration = field(default_factory=DebugConfiguration)
208
+
209
+
210
+ def default_configuration() -> WorkflowsConfiguration:
211
+ """The standalone fallback: every field at its documented default."""
212
+ return WorkflowsConfiguration()
213
+
214
+
215
+ def resolve_image_tensor_device(
216
+ representation_enabled: bool, device: Optional[str] = None
217
+ ) -> Optional[Any]:
218
+ """Materialise the tensor device exactly as `inference/core/env.py:1535-1547`.
219
+
220
+ `torch` is an OPTIONAL dependency, so both the import and the device are
221
+ deferred behind the flag AND guarded on torch's presence. Off-flag or
222
+ torch-less the value is `None`. An invalid device string raises whatever
223
+ `torch.device` raises, which is what `env.py` does too - it does not guard
224
+ that call either.
225
+
226
+ The `try` deliberately spans the import, the cuda autodetect AND the
227
+ materialisation, catching only `ImportError`, because that is exactly
228
+ `env.py:1536-1547`'s boundary (round-2 defect 5: the round-1 copy protected
229
+ only the import, so a `torch.cuda.is_available()` raising `ImportError`
230
+ would have propagated from the copy while `env.py` swallowed it).
231
+ `test_the_copy_preserves_the_originals_exception_boundary` pins both shapes.
232
+ """
233
+ if not representation_enabled:
234
+ return None
235
+ try:
236
+ import torch
237
+
238
+ if device is None:
239
+ device = "cuda" if torch.cuda.is_available() else "cpu"
240
+ return torch.device(device)
241
+ except ImportError:
242
+ return None
243
+
244
+
245
+ def describe_configuration_difference(
246
+ installed: WorkflowsConfiguration, candidate: WorkflowsConfiguration
247
+ ) -> List[str]:
248
+ """`['group.field: <installed> != <candidate>', ...]`, empty when equal.
249
+
250
+ Secret fields are compared but never rendered - the message says the field
251
+ differs, not what either value is.
252
+ """
253
+ differences = []
254
+ for group in fields(WorkflowsConfiguration):
255
+ installed_group = getattr(installed, group.name)
256
+ candidate_group = getattr(candidate, group.name)
257
+ if installed_group == candidate_group:
258
+ continue
259
+ if not is_dataclass(candidate_group):
260
+ differences.append(f"{group.name}: differs")
261
+ continue
262
+ for member in fields(installed_group):
263
+ left = getattr(installed_group, member.name)
264
+ right = getattr(candidate_group, member.name)
265
+ if left == right:
266
+ continue
267
+ if member.repr is False:
268
+ differences.append(f"{group.name}.{member.name}: differs (redacted)")
269
+ else:
270
+ differences.append(f"{group.name}.{member.name}: {left!r} != {right!r}")
271
+ return differences
272
+
273
+
274
+ _CONFIGURATION: Optional[WorkflowsConfiguration] = None
275
+ # One lock guards installation, the sticky fallback initialisation in
276
+ # `get_configuration` (which also assigns) and `reset_configuration`. Round-1
277
+ # review reproduced two conflicting installs both succeeding through an
278
+ # unlocked check-then-assign; Phase 10's image-codec registry locks for the
279
+ # same reason.
280
+ _INSTALL_LOCK = threading.RLock()
281
+
282
+
283
+ def configure_process(configuration: WorkflowsConfiguration) -> None:
284
+ """Install the process-wide configuration. Set-once, by value.
285
+
286
+ Installing the identical object, or an EQUAL one, is a no-op - frozen
287
+ dataclasses compare by value and the server memoises its instance.
288
+ Installing a DIFFERING one raises, naming every group and field that
289
+ differs.
290
+ """
291
+ global _CONFIGURATION
292
+ with _INSTALL_LOCK:
293
+ if _CONFIGURATION is not None and _CONFIGURATION != configuration:
294
+ differences = describe_configuration_difference(
295
+ _CONFIGURATION, configuration
296
+ )
297
+ raise WorkflowEnvironmentConfigurationError(
298
+ public_message=(
299
+ "A different WorkflowsConfiguration is already installed in "
300
+ "this process. Workflows configuration is process-level: "
301
+ "block registration and the image representation are decided "
302
+ "once, at import time, and every other value is frozen into "
303
+ "module constants. Install the configuration before importing "
304
+ "any workflows module, and install the same one everywhere. "
305
+ f"Differences: {differences}"
306
+ ),
307
+ context="workflow_configuration | process_installation",
308
+ )
309
+ _CONFIGURATION = configuration
310
+
311
+
312
+ def get_configuration() -> WorkflowsConfiguration:
313
+ """The installed configuration, falling back to the standalone default.
314
+
315
+ The fallback is STICKY: once read, it becomes the process configuration, so
316
+ a later `configure_process` with different values raises instead of
317
+ silently disagreeing with values already frozen into module constants.
318
+ """
319
+ global _CONFIGURATION
320
+ with _INSTALL_LOCK:
321
+ if _CONFIGURATION is None:
322
+ _CONFIGURATION = default_configuration()
323
+ return _CONFIGURATION
324
+
325
+
326
+ def reset_configuration() -> None:
327
+ """Test-only hook: forget the installed configuration."""
328
+ global _CONFIGURATION
329
+ with _INSTALL_LOCK:
330
+ _CONFIGURATION = None
331
+
332
+
333
+ def ensure_process_configuration_matches(configuration: Any) -> None:
334
+ """Refuse an engine-supplied configuration that differs from the process one.
335
+
336
+ `init_parameters["workflows_core.configuration"]` is a CONSISTENCY
337
+ ASSERTION, not an override channel: the composition roots pass the object
338
+ the host installed, and a mismatch means the process is mis-wired. Because
339
+ every value is read from a module constant frozen at import, accepting a
340
+ differing value would mean accepting a value nothing honours.
341
+
342
+ The caller decides PRESENCE (the engine calls this only when the key is in
343
+ `init_parameters`); this function judges the VALUE, and `None` is not a
344
+ valid value: an explicit `None` would be handed to every block that
345
+ declares `configuration` ahead of the registered default
346
+ (`steps_initialiser.py:124-125` prefers explicit values), so it is refused
347
+ like any other non-`WorkflowsConfiguration` (round-4 defect 1).
348
+ """
349
+ if not isinstance(configuration, WorkflowsConfiguration):
350
+ # Only ever reached through the DEDICATED init-parameter keys, so a
351
+ # foreign value there is a mis-wiring, never a plugin's own parameter
352
+ # (`v1/core.py` deliberately does not fall back to the bare name).
353
+ raise WorkflowEnvironmentConfigurationError(
354
+ public_message=(
355
+ "`workflows_core.configuration` must be a WorkflowsConfiguration, "
356
+ f"got {type(configuration).__name__}."
357
+ ),
358
+ context="workflow_compilation | engine_initialisation",
359
+ )
360
+ installed = get_configuration()
361
+ if configuration == installed:
362
+ return
363
+ differences = describe_configuration_difference(installed, configuration)
364
+ raise WorkflowEnvironmentConfigurationError(
365
+ public_message=(
366
+ "`workflows_core.configuration` differs from the WorkflowsConfiguration "
367
+ "installed in this process. Workflows configuration is process-level "
368
+ "and cannot be varied per engine; use the named init parameters "
369
+ "(`workflows_core.step_execution_mode`, `workflows_core.api_key`, "
370
+ "`workflows_core.disable_sinks`, "
371
+ "`workflows_core.allow_access_to_file_system`, "
372
+ "`workflows_core.allowed_write_directory`, "
373
+ "`workflows_core.allow_access_to_environmental_variables`) for "
374
+ f"per-engine values. Differences: {differences}"
375
+ ),
376
+ context="workflow_compilation | engine_initialisation",
377
+ )