caption-flow 0.3.4__tar.gz → 0.4.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. {caption_flow-0.3.4/src/caption_flow.egg-info → caption_flow-0.4.1}/PKG-INFO +9 -4
  2. {caption_flow-0.3.4 → caption_flow-0.4.1}/README.md +5 -1
  3. {caption_flow-0.3.4 → caption_flow-0.4.1}/pyproject.toml +10 -5
  4. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/__init__.py +3 -3
  5. caption_flow-0.4.1/src/caption_flow/cli.py +1536 -0
  6. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/models.py +45 -3
  7. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/monitor.py +2 -3
  8. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/orchestrator.py +153 -104
  9. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/processors/base.py +8 -7
  10. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/processors/huggingface.py +463 -68
  11. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/processors/local_filesystem.py +24 -28
  12. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/processors/webdataset.py +28 -22
  13. caption_flow-0.4.1/src/caption_flow/storage/exporter.py +631 -0
  14. caption_flow-0.4.1/src/caption_flow/storage/manager.py +1047 -0
  15. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/auth.py +1 -1
  16. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/caption_utils.py +1 -1
  17. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/certificates.py +15 -8
  18. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/checkpoint_tracker.py +30 -28
  19. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/chunk_tracker.py +153 -56
  20. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/image_processor.py +9 -9
  21. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/json_utils.py +37 -20
  22. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/prompt_template.py +24 -16
  23. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/vllm_config.py +5 -4
  24. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/viewer.py +4 -12
  25. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/workers/base.py +5 -4
  26. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/workers/caption.py +303 -92
  27. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/workers/data.py +6 -8
  28. {caption_flow-0.3.4 → caption_flow-0.4.1/src/caption_flow.egg-info}/PKG-INFO +9 -4
  29. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow.egg-info/SOURCES.txt +21 -1
  30. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow.egg-info/requires.txt +3 -1
  31. caption_flow-0.4.1/tests/test_caption_utils.py +394 -0
  32. caption_flow-0.4.1/tests/test_certificates.py +374 -0
  33. caption_flow-0.4.1/tests/test_cli.py +549 -0
  34. caption_flow-0.4.1/tests/test_config_reload.py +244 -0
  35. caption_flow-0.4.1/tests/test_duplicate_job_assignments.py +1696 -0
  36. caption_flow-0.4.1/tests/test_exporter.py +509 -0
  37. caption_flow-0.4.1/tests/test_fix_verification.py +367 -0
  38. caption_flow-0.4.1/tests/test_huggingface_ranges.py +504 -0
  39. caption_flow-0.4.1/tests/test_json_utils.py +530 -0
  40. caption_flow-0.4.1/tests/test_main.py +827 -0
  41. caption_flow-0.4.1/tests/test_monitor.py +385 -0
  42. caption_flow-0.4.1/tests/test_processors.py +1147 -0
  43. caption_flow-0.4.1/tests/test_range_level_distribution.py +734 -0
  44. caption_flow-0.4.1/tests/test_storage_components.py +329 -0
  45. caption_flow-0.4.1/tests/test_viewer.py +367 -0
  46. caption_flow-0.4.1/tests/test_vllm_config.py +484 -0
  47. caption_flow-0.4.1/tests/test_webdataset_ranges.py +1120 -0
  48. caption_flow-0.4.1/tests/test_worker_caption.py +1072 -0
  49. caption_flow-0.4.1/tests/test_worker_reconnection_complete.py +572 -0
  50. caption_flow-0.4.1/tests/test_worker_reconnection_sequence.py +590 -0
  51. caption_flow-0.3.4/src/caption_flow/cli.py +0 -1042
  52. caption_flow-0.3.4/src/caption_flow/storage/exporter.py +0 -550
  53. caption_flow-0.3.4/src/caption_flow/storage/manager.py +0 -1167
  54. {caption_flow-0.3.4 → caption_flow-0.4.1}/LICENSE +0 -0
  55. {caption_flow-0.3.4 → caption_flow-0.4.1}/setup.cfg +0 -0
  56. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/processors/__init__.py +3 -3
  57. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/storage/__init__.py +0 -0
  58. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow/utils/__init__.py +1 -1
  59. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow.egg-info/dependency_links.txt +0 -0
  60. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow.egg-info/entry_points.txt +0 -0
  61. {caption_flow-0.3.4 → caption_flow-0.4.1}/src/caption_flow.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: caption-flow
3
- Version: 0.3.4
3
+ Version: 0.4.1
4
4
  Summary: Self-contained distributed community captioning system
5
5
  Author-email: bghira <bghira@users.github.com>
6
6
  License: MIT
@@ -9,10 +9,9 @@ Classifier: Development Status :: 4 - Beta
9
9
  Classifier: Intended Audience :: Developers
10
10
  Classifier: License :: OSI Approved :: MIT License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
12
  Classifier: Programming Language :: Python :: 3.11
14
13
  Classifier: Programming Language :: Python :: 3.12
15
- Requires-Python: <3.13,>=3.10
14
+ Requires-Python: <3.13,>=3.11
16
15
  Description-Content-Type: text/markdown
17
16
  License-File: LICENSE
18
17
  Requires-Dist: websockets>=12.0
@@ -35,7 +34,9 @@ Requires-Dist: boto3<2.0.0,>=1.40.11
35
34
  Requires-Dist: torchdata<0.12.0,>=0.11.0
36
35
  Requires-Dist: textual<6.0.0,>=5.3.0
37
36
  Requires-Dist: urwid<4.0.0,>=3.0.2
38
- Requires-Dist: webshart<0.5.0,>=0.4.0
37
+ Requires-Dist: webshart<0.5.0,>=0.4.3
38
+ Requires-Dist: pylance<0.36.0,>=0.35.0
39
+ Requires-Dist: duckdb<2.0.0,>=1.3.2
39
40
  Provides-Extra: dev
40
41
  Requires-Dist: pytest>=7.4.0; extra == "dev"
41
42
  Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
@@ -47,6 +48,10 @@ Dynamic: license-file
47
48
 
48
49
  # CaptionFlow
49
50
 
51
+ <!-- [![Tests](https://github.com/bghira/CaptionFlow/workflows/tests/badge.svg)](https://github.com/bghira/CaptionFlow/actions/workflows/tests.yml) -->
52
+ [![codecov](https://codecov.io/github/bghira/CaptionFlow/graph/badge.svg?token=PRAQPNGYAS)](https://codecov.io/github/bghira/CaptionFlow)
53
+ [![PyPI version](https://badge.fury.io/py/caption-flow.svg)](https://badge.fury.io/py/caption-flow)
54
+
50
55
  scalable, fault-tolerant **vLLM-powered image captioning**.
51
56
 
52
57
  a fast websocket-based orchestrator paired with lightweight gpu workers achieves exceptional performance for batched requests through vLLM.
@@ -1,5 +1,9 @@
1
1
  # CaptionFlow
2
2
 
3
+ <!-- [![Tests](https://github.com/bghira/CaptionFlow/workflows/tests/badge.svg)](https://github.com/bghira/CaptionFlow/actions/workflows/tests.yml) -->
4
+ [![codecov](https://codecov.io/github/bghira/CaptionFlow/graph/badge.svg?token=PRAQPNGYAS)](https://codecov.io/github/bghira/CaptionFlow)
5
+ [![PyPI version](https://badge.fury.io/py/caption-flow.svg)](https://badge.fury.io/py/caption-flow)
6
+
3
7
  scalable, fault-tolerant **vLLM-powered image captioning**.
4
8
 
5
9
  a fast websocket-based orchestrator paired with lightweight gpu workers achieves exceptional performance for batched requests through vLLM.
@@ -190,4 +194,4 @@ Your contributions will be tracked and attributed in the final dataset!
190
194
 
191
195
  ## License
192
196
 
193
- AGPLv3
197
+ AGPLv3
@@ -1,9 +1,9 @@
1
1
  [project]
2
2
  name = "caption-flow"
3
- version = "0.3.4"
3
+ version = "0.4.1"
4
4
  description = "Self-contained distributed community captioning system"
5
5
  readme = "README.md"
6
- requires-python = ">=3.10,<3.13"
6
+ requires-python = ">=3.11,<3.13"
7
7
  license = {text = "MIT"}
8
8
  authors = [
9
9
  {name = "bghira", email = "bghira@users.github.com"},
@@ -14,7 +14,6 @@ classifiers = [
14
14
  "Intended Audience :: Developers",
15
15
  "License :: OSI Approved :: MIT License",
16
16
  "Programming Language :: Python :: 3",
17
- "Programming Language :: Python :: 3.10",
18
17
  "Programming Language :: Python :: 3.11",
19
18
  "Programming Language :: Python :: 3.12",
20
19
  ]
@@ -40,7 +39,9 @@ dependencies = [
40
39
  "torchdata (>=0.11.0,<0.12.0)",
41
40
  "textual (>=5.3.0,<6.0.0)",
42
41
  "urwid (>=3.0.2,<4.0.0)",
43
- "webshart (>=0.4.0,<0.5.0)",
42
+ "webshart (>=0.4.3,<0.5.0)",
43
+ "pylance (>=0.35.0,<0.36.0)",
44
+ "duckdb (>=1.3.2,<2.0.0)",
44
45
  ]
45
46
 
46
47
  [project.optional-dependencies]
@@ -73,7 +74,11 @@ select = ["E", "F", "I", "N", "W", "B", "C90", "D"]
73
74
  ignore = ["D100", "D101", "D102", "D103", "D104", "D105", "D106", "D107"]
74
75
 
75
76
  [tool.mypy]
76
- python_version = "3.10"
77
+ python_version = "3.11"
77
78
  warn_return_any = true
78
79
  warn_unused_configs = true
79
80
  disallow_untyped_defs = true
81
+
82
+ [tool.poetry.group.dev.dependencies]
83
+ pytest-asyncio = "^1.1.0"
84
+
@@ -1,10 +1,10 @@
1
1
  """CaptionFlow - Distributed community captioning system."""
2
2
 
3
- __version__ = "0.3.4"
3
+ __version__ = "0.4.1"
4
4
 
5
+ from .monitor import Monitor
5
6
  from .orchestrator import Orchestrator
6
- from .workers.data import DataWorker
7
7
  from .workers.caption import CaptionWorker
8
- from .monitor import Monitor
8
+ from .workers.data import DataWorker
9
9
 
10
10
  __all__ = ["Orchestrator", "DataWorker", "CaptionWorker", "Monitor"]