pixeltable 0.4.0rc3__py3-none-any.whl → 0.4.20__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pixeltable might be problematic. Click here for more details.

Files changed (202) hide show
  1. pixeltable/__init__.py +23 -5
  2. pixeltable/_version.py +1 -0
  3. pixeltable/catalog/__init__.py +5 -3
  4. pixeltable/catalog/catalog.py +1318 -404
  5. pixeltable/catalog/column.py +186 -115
  6. pixeltable/catalog/dir.py +1 -2
  7. pixeltable/catalog/globals.py +11 -43
  8. pixeltable/catalog/insertable_table.py +167 -79
  9. pixeltable/catalog/path.py +61 -23
  10. pixeltable/catalog/schema_object.py +9 -10
  11. pixeltable/catalog/table.py +626 -308
  12. pixeltable/catalog/table_metadata.py +101 -0
  13. pixeltable/catalog/table_version.py +713 -569
  14. pixeltable/catalog/table_version_handle.py +37 -6
  15. pixeltable/catalog/table_version_path.py +42 -29
  16. pixeltable/catalog/tbl_ops.py +50 -0
  17. pixeltable/catalog/update_status.py +191 -0
  18. pixeltable/catalog/view.py +108 -94
  19. pixeltable/config.py +128 -22
  20. pixeltable/dataframe.py +188 -100
  21. pixeltable/env.py +407 -136
  22. pixeltable/exceptions.py +6 -0
  23. pixeltable/exec/__init__.py +3 -0
  24. pixeltable/exec/aggregation_node.py +7 -8
  25. pixeltable/exec/cache_prefetch_node.py +83 -110
  26. pixeltable/exec/cell_materialization_node.py +231 -0
  27. pixeltable/exec/cell_reconstruction_node.py +135 -0
  28. pixeltable/exec/component_iteration_node.py +4 -3
  29. pixeltable/exec/data_row_batch.py +8 -65
  30. pixeltable/exec/exec_context.py +16 -4
  31. pixeltable/exec/exec_node.py +13 -36
  32. pixeltable/exec/expr_eval/evaluators.py +7 -6
  33. pixeltable/exec/expr_eval/expr_eval_node.py +27 -12
  34. pixeltable/exec/expr_eval/globals.py +8 -5
  35. pixeltable/exec/expr_eval/row_buffer.py +1 -2
  36. pixeltable/exec/expr_eval/schedulers.py +190 -30
  37. pixeltable/exec/globals.py +32 -0
  38. pixeltable/exec/in_memory_data_node.py +18 -18
  39. pixeltable/exec/object_store_save_node.py +293 -0
  40. pixeltable/exec/row_update_node.py +16 -9
  41. pixeltable/exec/sql_node.py +206 -101
  42. pixeltable/exprs/__init__.py +1 -1
  43. pixeltable/exprs/arithmetic_expr.py +27 -22
  44. pixeltable/exprs/array_slice.py +3 -3
  45. pixeltable/exprs/column_property_ref.py +34 -30
  46. pixeltable/exprs/column_ref.py +92 -96
  47. pixeltable/exprs/comparison.py +5 -5
  48. pixeltable/exprs/compound_predicate.py +5 -4
  49. pixeltable/exprs/data_row.py +152 -55
  50. pixeltable/exprs/expr.py +62 -43
  51. pixeltable/exprs/expr_dict.py +3 -3
  52. pixeltable/exprs/expr_set.py +17 -10
  53. pixeltable/exprs/function_call.py +75 -37
  54. pixeltable/exprs/globals.py +1 -2
  55. pixeltable/exprs/in_predicate.py +4 -4
  56. pixeltable/exprs/inline_expr.py +10 -27
  57. pixeltable/exprs/is_null.py +1 -3
  58. pixeltable/exprs/json_mapper.py +8 -8
  59. pixeltable/exprs/json_path.py +56 -22
  60. pixeltable/exprs/literal.py +5 -5
  61. pixeltable/exprs/method_ref.py +2 -2
  62. pixeltable/exprs/object_ref.py +2 -2
  63. pixeltable/exprs/row_builder.py +127 -53
  64. pixeltable/exprs/rowid_ref.py +8 -12
  65. pixeltable/exprs/similarity_expr.py +50 -25
  66. pixeltable/exprs/sql_element_cache.py +4 -4
  67. pixeltable/exprs/string_op.py +5 -5
  68. pixeltable/exprs/type_cast.py +3 -5
  69. pixeltable/func/__init__.py +1 -0
  70. pixeltable/func/aggregate_function.py +8 -8
  71. pixeltable/func/callable_function.py +9 -9
  72. pixeltable/func/expr_template_function.py +10 -10
  73. pixeltable/func/function.py +18 -20
  74. pixeltable/func/function_registry.py +6 -7
  75. pixeltable/func/globals.py +2 -3
  76. pixeltable/func/mcp.py +74 -0
  77. pixeltable/func/query_template_function.py +20 -18
  78. pixeltable/func/signature.py +43 -16
  79. pixeltable/func/tools.py +23 -13
  80. pixeltable/func/udf.py +18 -20
  81. pixeltable/functions/__init__.py +6 -0
  82. pixeltable/functions/anthropic.py +93 -33
  83. pixeltable/functions/audio.py +114 -10
  84. pixeltable/functions/bedrock.py +13 -6
  85. pixeltable/functions/date.py +1 -1
  86. pixeltable/functions/deepseek.py +20 -9
  87. pixeltable/functions/fireworks.py +2 -2
  88. pixeltable/functions/gemini.py +28 -11
  89. pixeltable/functions/globals.py +13 -13
  90. pixeltable/functions/groq.py +108 -0
  91. pixeltable/functions/huggingface.py +1046 -23
  92. pixeltable/functions/image.py +9 -18
  93. pixeltable/functions/llama_cpp.py +23 -8
  94. pixeltable/functions/math.py +3 -4
  95. pixeltable/functions/mistralai.py +4 -15
  96. pixeltable/functions/ollama.py +16 -9
  97. pixeltable/functions/openai.py +104 -82
  98. pixeltable/functions/openrouter.py +143 -0
  99. pixeltable/functions/replicate.py +2 -2
  100. pixeltable/functions/reve.py +250 -0
  101. pixeltable/functions/string.py +21 -28
  102. pixeltable/functions/timestamp.py +13 -14
  103. pixeltable/functions/together.py +4 -6
  104. pixeltable/functions/twelvelabs.py +92 -0
  105. pixeltable/functions/util.py +6 -1
  106. pixeltable/functions/video.py +1388 -106
  107. pixeltable/functions/vision.py +7 -7
  108. pixeltable/functions/whisper.py +15 -7
  109. pixeltable/functions/whisperx.py +179 -0
  110. pixeltable/{ext/functions → functions}/yolox.py +2 -4
  111. pixeltable/globals.py +332 -105
  112. pixeltable/index/base.py +13 -22
  113. pixeltable/index/btree.py +23 -22
  114. pixeltable/index/embedding_index.py +32 -44
  115. pixeltable/io/__init__.py +4 -2
  116. pixeltable/io/datarows.py +7 -6
  117. pixeltable/io/external_store.py +49 -77
  118. pixeltable/io/fiftyone.py +11 -11
  119. pixeltable/io/globals.py +29 -28
  120. pixeltable/io/hf_datasets.py +17 -9
  121. pixeltable/io/label_studio.py +70 -66
  122. pixeltable/io/lancedb.py +3 -0
  123. pixeltable/io/pandas.py +12 -11
  124. pixeltable/io/parquet.py +13 -93
  125. pixeltable/io/table_data_conduit.py +71 -47
  126. pixeltable/io/utils.py +3 -3
  127. pixeltable/iterators/__init__.py +2 -1
  128. pixeltable/iterators/audio.py +21 -11
  129. pixeltable/iterators/document.py +116 -55
  130. pixeltable/iterators/image.py +5 -2
  131. pixeltable/iterators/video.py +293 -13
  132. pixeltable/metadata/__init__.py +4 -2
  133. pixeltable/metadata/converters/convert_18.py +2 -2
  134. pixeltable/metadata/converters/convert_19.py +2 -2
  135. pixeltable/metadata/converters/convert_20.py +2 -2
  136. pixeltable/metadata/converters/convert_21.py +2 -2
  137. pixeltable/metadata/converters/convert_22.py +2 -2
  138. pixeltable/metadata/converters/convert_24.py +2 -2
  139. pixeltable/metadata/converters/convert_25.py +2 -2
  140. pixeltable/metadata/converters/convert_26.py +2 -2
  141. pixeltable/metadata/converters/convert_29.py +4 -4
  142. pixeltable/metadata/converters/convert_34.py +2 -2
  143. pixeltable/metadata/converters/convert_36.py +2 -2
  144. pixeltable/metadata/converters/convert_37.py +15 -0
  145. pixeltable/metadata/converters/convert_38.py +39 -0
  146. pixeltable/metadata/converters/convert_39.py +124 -0
  147. pixeltable/metadata/converters/convert_40.py +73 -0
  148. pixeltable/metadata/converters/util.py +13 -12
  149. pixeltable/metadata/notes.py +4 -0
  150. pixeltable/metadata/schema.py +79 -42
  151. pixeltable/metadata/utils.py +74 -0
  152. pixeltable/mypy/__init__.py +3 -0
  153. pixeltable/mypy/mypy_plugin.py +123 -0
  154. pixeltable/plan.py +274 -223
  155. pixeltable/share/__init__.py +1 -1
  156. pixeltable/share/packager.py +259 -129
  157. pixeltable/share/protocol/__init__.py +34 -0
  158. pixeltable/share/protocol/common.py +170 -0
  159. pixeltable/share/protocol/operation_types.py +33 -0
  160. pixeltable/share/protocol/replica.py +109 -0
  161. pixeltable/share/publish.py +213 -57
  162. pixeltable/store.py +238 -175
  163. pixeltable/type_system.py +104 -63
  164. pixeltable/utils/__init__.py +2 -3
  165. pixeltable/utils/arrow.py +108 -13
  166. pixeltable/utils/av.py +298 -0
  167. pixeltable/utils/azure_store.py +305 -0
  168. pixeltable/utils/code.py +3 -3
  169. pixeltable/utils/console_output.py +4 -1
  170. pixeltable/utils/coroutine.py +6 -23
  171. pixeltable/utils/dbms.py +31 -5
  172. pixeltable/utils/description_helper.py +4 -5
  173. pixeltable/utils/documents.py +5 -6
  174. pixeltable/utils/exception_handler.py +7 -30
  175. pixeltable/utils/filecache.py +6 -6
  176. pixeltable/utils/formatter.py +4 -6
  177. pixeltable/utils/gcs_store.py +283 -0
  178. pixeltable/utils/http_server.py +2 -3
  179. pixeltable/utils/iceberg.py +1 -2
  180. pixeltable/utils/image.py +17 -0
  181. pixeltable/utils/lancedb.py +88 -0
  182. pixeltable/utils/local_store.py +316 -0
  183. pixeltable/utils/misc.py +5 -0
  184. pixeltable/utils/object_stores.py +528 -0
  185. pixeltable/utils/pydantic.py +60 -0
  186. pixeltable/utils/pytorch.py +5 -6
  187. pixeltable/utils/s3_store.py +392 -0
  188. pixeltable-0.4.20.dist-info/METADATA +587 -0
  189. pixeltable-0.4.20.dist-info/RECORD +218 -0
  190. {pixeltable-0.4.0rc3.dist-info → pixeltable-0.4.20.dist-info}/WHEEL +1 -1
  191. pixeltable-0.4.20.dist-info/entry_points.txt +2 -0
  192. pixeltable/__version__.py +0 -3
  193. pixeltable/ext/__init__.py +0 -17
  194. pixeltable/ext/functions/__init__.py +0 -11
  195. pixeltable/ext/functions/whisperx.py +0 -77
  196. pixeltable/utils/media_store.py +0 -77
  197. pixeltable/utils/s3.py +0 -17
  198. pixeltable/utils/sample.py +0 -25
  199. pixeltable-0.4.0rc3.dist-info/METADATA +0 -435
  200. pixeltable-0.4.0rc3.dist-info/RECORD +0 -189
  201. pixeltable-0.4.0rc3.dist-info/entry_points.txt +0 -3
  202. {pixeltable-0.4.0rc3.dist-info → pixeltable-0.4.20.dist-info/licenses}/LICENSE +0 -0
@@ -0,0 +1,218 @@
1
+ pixeltable/__init__.py,sha256=_glawKwHDw5Jjzfe2ef-SRS1EQFacpPMnyqvQdh06PU,1694
2
+ pixeltable/_version.py,sha256=Dkb1PPzwEu0CDGosx47xImseE4rUuAWjBcXPheH0q1E,28
3
+ pixeltable/config.py,sha256=aVYorLvk1Z4zUBPOlmWfXsubkxubIueL9R_klngtFw0,9413
4
+ pixeltable/dataframe.py,sha256=CuyO0XydUqAIBu8vht79gMfZCGLNr5ClQUJKV9IPAFQ,64779
5
+ pixeltable/env.py,sha256=BdKRoy58cUl2zC7foFqLmIpUVmPZhkC2ibork-irMTs,47570
6
+ pixeltable/exceptions.py,sha256=Gm8d3TL2iiv6Pj2DLd29wp_j41qNBhxXL9iTQnL4Nk4,1116
7
+ pixeltable/globals.py,sha256=42yXgYF6tR5_F-GEea8Ov0N8AuFBwW0VMtUg1reNieY,42690
8
+ pixeltable/plan.py,sha256=SuVT6cY7nsJXYOwcyyCfWpcorWSU6vv56dBs_03QJ3w,54078
9
+ pixeltable/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ pixeltable/store.py,sha256=Dz9N85DISVZlX1gLf3x_sWVdP-j9DBaUURMv55kuEmI,27552
11
+ pixeltable/type_system.py,sha256=mhks0nbY4JtBHuLssGr5JCPRVXWyZUy6nmsOpqBX4cI,56143
12
+ pixeltable/catalog/__init__.py,sha256=GL0MLxqCBHlhKWqhC3e9B4kwTazagTOiqBHHRjyWbTg,726
13
+ pixeltable/catalog/catalog.py,sha256=GYx6tuk5EY0MvUQRkyf4sRtf11qXgn0RortIWc8V0BY,105782
14
+ pixeltable/catalog/column.py,sha256=ttNGZbmbnDmWiIOIbpESPRWYFomtVqKxwQhHyaNFasA,13955
15
+ pixeltable/catalog/dir.py,sha256=VYTscPlKR6XhupPTXlJ8txAHxS5GSpPJ3LIleDJagVQ,2047
16
+ pixeltable/catalog/globals.py,sha256=EGlqpgmw5rhzfQC4MTKVYpdxXStFSz0J4LKxAXXXS3k,2617
17
+ pixeltable/catalog/insertable_table.py,sha256=W83qtX8dN3NWLr9Nm75QadM7tZ83wBbIcz3cklVdUWY,13303
18
+ pixeltable/catalog/named_function.py,sha256=vZ-j7P4HugWh9OmUzBMwyRYvO3tQn9jWyJz_1stPavU,1210
19
+ pixeltable/catalog/path.py,sha256=gPq_ezwDEU-7dxGE3-kEiKTwvZz0JwzoLy9rSgtHouc,3558
20
+ pixeltable/catalog/schema_object.py,sha256=Xzax_sGpvHw7mPi-srOBYFrcOv-4MT_KXrN2y8_qwGc,1766
21
+ pixeltable/catalog/table.py,sha256=pkKNBTFrrU4Dj5DWVrt0mFrW6FadLgDXWwqTMq0Visc,84007
22
+ pixeltable/catalog/table_metadata.py,sha256=MV79FWMbZy238XsjR8pY0ROsSSPqXQHERry7mf-ds9E,3737
23
+ pixeltable/catalog/table_version.py,sha256=kECvsW46-08Wv42tL7oAo22dkkjKDhJ0zr0YDvhITd8,71850
24
+ pixeltable/catalog/table_version_handle.py,sha256=KP3-AnHP9LANpMzaP7P2E-HY7E33sMJfkOAz36S5kkg,3710
25
+ pixeltable/catalog/table_version_path.py,sha256=_imZieXYDrHR1VcDdjm6Bu2u5DFRgb85AegBeVXeiiY,9209
26
+ pixeltable/catalog/tbl_ops.py,sha256=2B8D6nwPAr6wEcMbDaEiMOjbvsAOXIGMcZ0qKRGrS2E,1240
27
+ pixeltable/catalog/update_status.py,sha256=jeRy7WUZ80l4gPY1c5vYcxT1F82nL5KphNrSKKfOdk8,7667
28
+ pixeltable/catalog/view.py,sha256=KwZzEYZMD0mqZLA-ZzfDtRauK6MpdTKGE6oh96kuZVk,15879
29
+ pixeltable/exec/__init__.py,sha256=UQ32v0MbLF3vFx6MZLuZKfrqNVoihJFhsYzWOChX1go,704
30
+ pixeltable/exec/aggregation_node.py,sha256=nERkQI7XdqxT0hXle3NMQowGD3KWQ80qnEGmIS8G-RM,4376
31
+ pixeltable/exec/cache_prefetch_node.py,sha256=Wud39ykEju5Hk7gld0M2D-EQ9JWar6xm6xLqjn6smzI,10860
32
+ pixeltable/exec/cell_materialization_node.py,sha256=TfkGUQdCmTkkLU_lHEXNvd6SzORPL9cYRxKyssqTz8k,10106
33
+ pixeltable/exec/cell_reconstruction_node.py,sha256=ygB-BOK1I1KW_yFOMFX-E-w2l_-LUbYKXY6mfQXf6Fg,5322
34
+ pixeltable/exec/component_iteration_node.py,sha256=7k8Wfzjc15SO0V8rc-zYTiB3DQ-euMtNQIOsve_FY7I,4797
35
+ pixeltable/exec/data_row_batch.py,sha256=Bk4YORv9TQfeaJBudqXzoyULbWa4_vJOssHCUsIMx84,1093
36
+ pixeltable/exec/exec_context.py,sha256=qHNEaf_S-xlQ2roOv6eDNPRW3fAw7qmuMPJ4kdZV8BI,1323
37
+ pixeltable/exec/exec_node.py,sha256=lVJBBa2FhE_H5lvPmeCEbaLM5p8tjcJq3Cn3tVxbGcY,3283
38
+ pixeltable/exec/globals.py,sha256=fAKOvszbntIh4J1nAmvVA9BGGk98NKZ_G9mVEaZ28pk,904
39
+ pixeltable/exec/in_memory_data_node.py,sha256=R3Dggwl4uZKJ_j2hVhw7Wiq8Ma3TmHeBFHmzU11fTK0,3500
40
+ pixeltable/exec/object_store_save_node.py,sha256=2PyWZKpRWIqxL4Zdt51DFSJS9LoYlzictH2tqDnwn38,13167
41
+ pixeltable/exec/row_update_node.py,sha256=KS68FYUxtUv2JSP5RjJmKBAr_hT26zXmWmdpQrYfvKI,3127
42
+ pixeltable/exec/sql_node.py,sha256=q__UY-mL05Ihaotosn9_QViKLcbAjLRMALqLH6dLGOY,31747
43
+ pixeltable/exec/expr_eval/__init__.py,sha256=sQThSEByK_DLfB-_-18RFhpARx49cSXYEkpCDyi0vQI,61
44
+ pixeltable/exec/expr_eval/evaluators.py,sha256=RzdW1lwwsiGMaOpBCz6lVlPfBaTedcOBIpNmYJa5IqA,17149
45
+ pixeltable/exec/expr_eval/expr_eval_node.py,sha256=06Ot1v0q4CfN3n8-6eI8WJ4iWZ1pUP3-F4YON12h584,19899
46
+ pixeltable/exec/expr_eval/globals.py,sha256=LJVEbjCX4hjAR8WJz_54FD7JgFOLnxHqaSm5zHUNr74,7902
47
+ pixeltable/exec/expr_eval/row_buffer.py,sha256=izBDB2eYNafIDnYadEuOdXZgCzq1LkVS6wNms3YrYdY,2713
48
+ pixeltable/exec/expr_eval/schedulers.py,sha256=K9z7hWRD5Mf8ziI0GKDmvcraTAk-PljvMdZuf5GQbpo,24294
49
+ pixeltable/exprs/__init__.py,sha256=u8z3gv-uHt2Bz0F7heRPOVNa1r2OD1qqUDXnwEdSmlM,1113
50
+ pixeltable/exprs/arithmetic_expr.py,sha256=fBfFb5xBKHxQlIbkUeQe4TubpJOHmU6YT0-spBcKwzw,7876
51
+ pixeltable/exprs/array_slice.py,sha256=yf8pl_QICCxjKBhweLHJGkHmjji90sQO4cd1e2heMZ0,2154
52
+ pixeltable/exprs/column_property_ref.py,sha256=ke9DnXygBKhhFRSmGcGjGjOADCcGCz82ctvjTsKHmbo,4396
53
+ pixeltable/exprs/column_ref.py,sha256=XKDYDbwz_vrBNTL5abJ2QTFz911tyGPAJXnFcY6eQUg,14477
54
+ pixeltable/exprs/comparison.py,sha256=kk35PjlvEEUW4PwaY-ZEd4uTCr3IoDA2vf8_yUKKPRw,5135
55
+ pixeltable/exprs/compound_predicate.py,sha256=plm-VILYFH5tDtxI5bPrnTcSRrrvQSfUYFOzSYpw-PY,3847
56
+ pixeltable/exprs/data_row.py,sha256=I55mhg9WM2ZBUyMukMyXQUS6cz1FLpF6d6oa08Nn98A,14354
57
+ pixeltable/exprs/expr.py,sha256=G4bH9cHtTRztXdaTWM3qqVq3YFAzklsDGO7-knGwPic,36470
58
+ pixeltable/exprs/expr_dict.py,sha256=6nZIag72lYyEcVUu4XYPMLOYnrJq-pEq0YDiwvSe49E,1565
59
+ pixeltable/exprs/expr_set.py,sha256=u5-1QCNFYS5AXa_Z_jfI89SaUP12iPDxDoyLcmzDqxY,2875
60
+ pixeltable/exprs/function_call.py,sha256=tS2FFdoTOfkuuOMVctP0SF5NpRwgVMksz5sVN1Aw-kQ,24262
61
+ pixeltable/exprs/globals.py,sha256=33fq5Ec15z_SkIqz9ILICx18wuGAazpFDUkc_Ppl03c,2288
62
+ pixeltable/exprs/in_predicate.py,sha256=abtuwjZ6OhIa2ztksZCjOYoCBVtFvnD4Ki6A6kZy1uw,3777
63
+ pixeltable/exprs/inline_expr.py,sha256=Ug2Gm9CQpMK8W5DiW5Ka8WNwmfXZ-TeTm7mO9Nc5Bhw,7238
64
+ pixeltable/exprs/is_null.py,sha256=o_hzVl_aF3aCPcipI6utZjx_uj9cO7pzo7NbHUiBQFA,1055
65
+ pixeltable/exprs/json_mapper.py,sha256=ltU-90SNSHnYrFdlXszE0J33DegFfWTJchRXiJY5yb0,7001
66
+ pixeltable/exprs/json_path.py,sha256=ex7R0fe9tGqHf5XYGXAx8C1CrhCLnW454sMKrYCjECY,8466
67
+ pixeltable/exprs/literal.py,sha256=44xcknwS_BXeBdWEU_njva5xPgcXJMftmIsWYD_zee4,4838
68
+ pixeltable/exprs/method_ref.py,sha256=wBZDXOSgq7f12F9y1453XYWwyP-hA2-2YO8oBWxjfkI,2629
69
+ pixeltable/exprs/object_ref.py,sha256=KOcJVtYP8RgqJL58Kp-mOlXTqESfuaVQYz4I74eJaH8,1986
70
+ pixeltable/exprs/row_builder.py,sha256=ji8zlywiJSj4kGW2HhHO_5AoGUJc6G-RJTE9-u_HRaU,24504
71
+ pixeltable/exprs/rowid_ref.py,sha256=4BHb0S907eE78_PRBVFKlNSps2C59slYH8s4UGC0y7A,4977
72
+ pixeltable/exprs/similarity_expr.py,sha256=h-X_6cFNh44eNyx4GM3dlFdffmHoxUjfNXqZb_EaH_o,4415
73
+ pixeltable/exprs/sql_element_cache.py,sha256=BOdYzmKynbjoTXN4xIh8tFjPNfLxubSfgY9y3ZvlJBI,1340
74
+ pixeltable/exprs/string_op.py,sha256=nEnpdygfGEhh1UBxI7RXbMvsrHYDc4r-QKKZOZsylWA,4118
75
+ pixeltable/exprs/type_cast.py,sha256=QaWvAmzEXO-mL6UhRJE3G4wyqmRzFBD_3qkaCJWUSlQ,2284
76
+ pixeltable/exprs/variable.py,sha256=UwWwaNECbtwyC8v0g8iqCa3a6mO8z9lK7ta5NrlCwvs,1493
77
+ pixeltable/func/__init__.py,sha256=SQPtGr_9dZNyXzxaZQcP3oVLKnbbs4UqV6sg8XUQHxQ,535
78
+ pixeltable/func/aggregate_function.py,sha256=ZmDLpO-OO6G_gbxF5fUJqLaU0zmAcx5OK0dYJjXfbgA,13233
79
+ pixeltable/func/callable_function.py,sha256=Bx3s5DAivD675Dj5lEYHKCO8Gq0ma4FN2qVH_s4Th5I,9244
80
+ pixeltable/func/expr_template_function.py,sha256=9tmSOGJFOmvICD85WzM-NQarfvrRj6dh8JaG5s5bBMI,5848
81
+ pixeltable/func/function.py,sha256=yOSFfq3O8Ewg6OnmyL5mnJgzyOpz99aS8O1e-KE2LJc,23071
82
+ pixeltable/func/function_registry.py,sha256=2A0ohuJk7E62FKfKNH8LAPcfkzEie4_ilRokndCwWJU,12256
83
+ pixeltable/func/globals.py,sha256=w82xw2_rcJqxgSg8G9mJOzX2S8Tv7HuQenO25OFOvcM,1467
84
+ pixeltable/func/mcp.py,sha256=Ob3dMj3mDAhxby_MpWjyBRw-f6SOOGpGv5yc-lVBpJI,2848
85
+ pixeltable/func/query_template_function.py,sha256=H5-Y1wZsbiCEPjetb8HAeuU13fz9daZaEqcKVlrgSJQ,7972
86
+ pixeltable/func/signature.py,sha256=ZaE1j1lyg4LGzymn-UEF5PYJqtW_5kqi0DSj0laZEks,14933
87
+ pixeltable/func/tools.py,sha256=cPHy2c5UxfyThe-1C94_hfOlDZUgSdCr-wJPh_ZHaZw,6022
88
+ pixeltable/func/udf.py,sha256=61pgEARxd36wtKQDw2EIow87vVBj9-tEkAbT84VQwE0,13167
89
+ pixeltable/functions/__init__.py,sha256=9SwvQFkeOexDhMH63QZIlDmeex2OjmmQ-IUxvsl4Ncg,655
90
+ pixeltable/functions/anthropic.py,sha256=K3gIqmtuhnHhbSVnDvVE1ZNoKqj_TLmBHLTTWGn0Suk,10782
91
+ pixeltable/functions/audio.py,sha256=h9JqgwQKoFO9MDhJofYO32idmA4dzLnnCrWjY1Aw820,4747
92
+ pixeltable/functions/bedrock.py,sha256=MXULfnd2ZguOaUrKpaAzJRTx6tF-iPAaFYiYHogz5iI,4386
93
+ pixeltable/functions/date.py,sha256=qs1svJ9FVod3OTa5hQNKIuashb6tVhW_2EAEXYGQX74,5308
94
+ pixeltable/functions/deepseek.py,sha256=_qB-kqlqQtuf9q3zXWIq_ffMGwoLnf4AWx2ejgMdWJw,3682
95
+ pixeltable/functions/fireworks.py,sha256=ReHEE4YAX8xMaUmcEcp5ieycNfRGeqBDAbo2j_gncJk,4773
96
+ pixeltable/functions/gemini.py,sha256=ZIq92RwJeXFAcdQqEA3gXdrMs3h99E-bpFqCIlNwORc,8890
97
+ pixeltable/functions/globals.py,sha256=4x0S_eyWDuC-Hw-9tVXcLPwP1Gkwxr50AurtpQmHXGw,5057
98
+ pixeltable/functions/groq.py,sha256=WvAitBpqopaSpXFeNaivxiozTglMcaNRVV-KKxE2UQA,3586
99
+ pixeltable/functions/huggingface.py,sha256=wft4Z2K-wNT1J3NVFBu_5YHfo4WpeSvBqCxfwKfn49g,59945
100
+ pixeltable/functions/image.py,sha256=LyfO5-oyT8X4yJqVEbfVsWL5OzUyBiWnhfOk4LpXj24,13806
101
+ pixeltable/functions/json.py,sha256=d7-AvwytUQtQYF_JnWJkptT_Yq0NgMpWfVk-m3U6qTY,807
102
+ pixeltable/functions/llama_cpp.py,sha256=i7_3sJZve59sU9KZVDzqO-VtCEZ0d6sXOmgvKcQOZNk,4290
103
+ pixeltable/functions/math.py,sha256=JSd4cIWYEL9um2gLbEqYkJmVa6BEK6FrilIZROzKD_w,4966
104
+ pixeltable/functions/mistralai.py,sha256=ZmXhMlqnaQWlsZEdHxdH6VDqhlZmBOlZqnwnNsTJh2c,5526
105
+ pixeltable/functions/ollama.py,sha256=aO1OD8h9kB6Y8wdPC8Ha9mmQiSN5R_MmPuJAe_KjhKo,4367
106
+ pixeltable/functions/openai.py,sha256=OfvpEQlSIP5GeUY_jUcA5DBc0w7uBPw5fTP58FDkFQQ,28926
107
+ pixeltable/functions/openrouter.py,sha256=M7_HUJhhQSXSXynyR6RFHlOt4oxCawChAOT-EKszmFQ,4654
108
+ pixeltable/functions/replicate.py,sha256=sPvRGr0j0kCDc6Vz3mPUioFflApijukvZWJJUO2bqIQ,2429
109
+ pixeltable/functions/reve.py,sha256=FHq32vwC_Du5DcKbf4XzEIO2F0P2crBjf4ENM58OUrI,9885
110
+ pixeltable/functions/string.py,sha256=8wQJiS8Xu3RJJZ6uaMvwSbT4yqREj8Seqdtg9nczvqY,25243
111
+ pixeltable/functions/timestamp.py,sha256=_BRSBwY-moykqUBLDMJRMnH8iCcueuSVZdJE0uQyYHU,9094
112
+ pixeltable/functions/together.py,sha256=NdKJbndfjHkZTKNyh_1S2F8773fegXQErkOKJrNfi_s,8817
113
+ pixeltable/functions/twelvelabs.py,sha256=-hHiLwd9boqv7ieQRlU_iAN9jC9V0_Dz__91LQhK9zc,2938
114
+ pixeltable/functions/util.py,sha256=uQNkyBSkTVMe1wbUI2Q0nz-mM3qPVTF86yK8c9OFIcE,954
115
+ pixeltable/functions/video.py,sha256=55HhdoSYrDhAvKoKZNGw4RckkxjNng7eNiqmo5JDsZg,58006
116
+ pixeltable/functions/vision.py,sha256=7LYDKaNLy8bR7jBfelUmESA-laB79kB16qboayZaQHs,15355
117
+ pixeltable/functions/whisper.py,sha256=UeSH3J7GUc5hgcD6pSQMDVqbYaCHI_7efuiayMBBE8Y,3075
118
+ pixeltable/functions/whisperx.py,sha256=FtSVNK9L_5MMD9s-deUPww9PJhHd8WQOnxbu911QAAA,7669
119
+ pixeltable/functions/yolox.py,sha256=IXTE-1NDY7cQp94UDFu0wZjMMcTociUZc4GgEOcNU3I,3559
120
+ pixeltable/index/__init__.py,sha256=97aFuxiP_oz1ldn5iq8IWApkOV8XG6ZIBW5-9rkS0vM,122
121
+ pixeltable/index/base.py,sha256=sJBGrp4dIh6eB0TA7glj4vuHnlOEJcRXWJE3CO0S4Ww,1676
122
+ pixeltable/index/btree.py,sha256=8RtDW4rJ7f_CUPuTRZlZ35i9U5MowuQhSLE06SCHRZ4,2608
123
+ pixeltable/index/embedding_index.py,sha256=qLHYVR8TY_EFEABIFjHe3RxUV0-H3omjLuvzg7kPZm8,11382
124
+ pixeltable/io/__init__.py,sha256=k8jlxi2IB_yA8yYTk9lf7qyuayxUbvs9xDuZcO77sFY,716
125
+ pixeltable/io/datarows.py,sha256=okkRRYValloF4Ax1tEI0auqqYsTXO_OOaWhvidNAnK4,6138
126
+ pixeltable/io/external_store.py,sha256=qCtnN2fvB5N3wtaN62PYYt52euU-Mnz3IeDDJ7JfVEY,14742
127
+ pixeltable/io/fiftyone.py,sha256=l0nXZfUWX8veyBVrj8-7BNNzH3E-J2pVR2TUmgjZ60s,6866
128
+ pixeltable/io/globals.py,sha256=CgRqHFzpFJSdjrJTRTsSEEDf03CH3Z_kLvZ2Wol1Zek,11356
129
+ pixeltable/io/hf_datasets.py,sha256=VWWoDdVUrTpaOi6cD1vpnyP3rBXJkoIhFCGQ28tdv5U,5587
130
+ pixeltable/io/label_studio.py,sha256=XpI79M0O9yEsNxzCgBJJPuqiutGPKJ9nz4m6UrFcFr0,31395
131
+ pixeltable/io/lancedb.py,sha256=kNcYXptieMlJ6yxEIZHVFklEMOEB2mrSyp7XZmOw4qs,82
132
+ pixeltable/io/pandas.py,sha256=DEykqUhRCwfz7pA8mp5fJkvt0JkFtoYVbud-w9h6FEo,8982
133
+ pixeltable/io/parquet.py,sha256=gAmcmSVzc1okp1h3f_0QuwnV9HacssmSfahFKDbCi68,4072
134
+ pixeltable/io/table_data_conduit.py,sha256=l24ctp9wGbXGnKNHJZHvsXxAKKxkA6d3Qg2o6e4CB4Y,22866
135
+ pixeltable/io/utils.py,sha256=XvVy9TcOUEq-GyuBBHTetDtqZcYacjdSPzGTI71zvtE,4231
136
+ pixeltable/iterators/__init__.py,sha256=hbQhrz0LShLGOPcT1SnWl1s1nBUzAjWino64CfFT_UA,537
137
+ pixeltable/iterators/audio.py,sha256=zQo4fQPgrLXHHEam1ctYiKyPumDMPK8rHCSaNltoenY,9658
138
+ pixeltable/iterators/base.py,sha256=ZC0ZvXL4iw6AmT8cu-Mdx-T2UG9nmJYV1C6LK4efAfw,1669
139
+ pixeltable/iterators/document.py,sha256=qOOGSkuBKGh2dKUDvwJ0PA_Du1S32xleM6McZuKvIJI,22310
140
+ pixeltable/iterators/image.py,sha256=RrFdf5cnFIQzWKJk4uYi1m1p2qAiz909THYhRQ27DbY,3603
141
+ pixeltable/iterators/string.py,sha256=URj5edWp-CsorjN_8nnfWGvtIFs_Zh4VPm6htlJbFkU,1257
142
+ pixeltable/iterators/video.py,sha256=62_smE_YlMY6FSC5xhYnUVXLl7JUCKlk9UptrvMuz_o,21551
143
+ pixeltable/metadata/__init__.py,sha256=8ytwPwl2GkaS8JaBLneqT8jxxRDbsKaO52bRip8SpcI,3289
144
+ pixeltable/metadata/notes.py,sha256=heoQFFkn_vo-vPO6K2_6gcE2LpL8Ca_2wjsUNcN7_0E,1598
145
+ pixeltable/metadata/schema.py,sha256=uQ5SqifIqidR1QIRbbCEOMxpB5Br1sbVu-Uatq6oPEA,12855
146
+ pixeltable/metadata/utils.py,sha256=ocun76zdpgoj1BHROQNZZXxhQ_aQwmuKfXRM2iSmTxY,2630
147
+ pixeltable/metadata/converters/convert_10.py,sha256=myYIo1DyccnsQUxDKG6mafnU5ge_EhZpHg_pesKBoK4,708
148
+ pixeltable/metadata/converters/convert_12.py,sha256=Ci-qyZW1gqci-8wnjeOB5afdq7KTuN-hVSV9OqSPx8g,162
149
+ pixeltable/metadata/converters/convert_13.py,sha256=B-_EkL0pSl1mAiv6DymeUAyBQUcYcV1qDdNz3Q359kc,1369
150
+ pixeltable/metadata/converters/convert_14.py,sha256=9e_JNm3a35Gs4dvFFaV-_jtCqp3ud6OEOqMIhTQmasE,428
151
+ pixeltable/metadata/converters/convert_15.py,sha256=wKTdBt8p9GlUM3yBZFX-37J0c0_xc5SK0SXooxtDQJY,1722
152
+ pixeltable/metadata/converters/convert_16.py,sha256=9sRigN4h3UHEurV1zAwO8AwE_ERkvxNVTUPFiV9h4MU,493
153
+ pixeltable/metadata/converters/convert_17.py,sha256=LmE8uAk2yPRN5Ddk8I_KOZjUGBKSUe-s-PoJl9ltWEE,878
154
+ pixeltable/metadata/converters/convert_18.py,sha256=_wwe8NWyHjm2Zu4ZDYnFSlfbO0ZWQPRnwUuc3Sr216U,1442
155
+ pixeltable/metadata/converters/convert_19.py,sha256=z9eDAXd_0Qs6qlZcbTUQaWVDTRfvvq-kAtReYJjVn58,2023
156
+ pixeltable/metadata/converters/convert_20.py,sha256=E-q4K8aItLF4dPKYQU-a3Gqsz4hbrC45NU87A2PJ0DM,2727
157
+ pixeltable/metadata/converters/convert_21.py,sha256=c2e7Oj3JvBjmok4maTODFDLDQzINS0qSP01jNVV1LEU,1076
158
+ pixeltable/metadata/converters/convert_22.py,sha256=PjOln91Fy3rLTEub0GWzGlptyhjU8gx1APkjXx5rh-4,572
159
+ pixeltable/metadata/converters/convert_23.py,sha256=95o72p2A_7ZTVG4N8tJLVPHg34uuIWh7AYxowfwrHc4,1134
160
+ pixeltable/metadata/converters/convert_24.py,sha256=Htkt1OPopy3vJ67TYSHNRp3cdGoZX3BJX5_SetvuI5M,2327
161
+ pixeltable/metadata/converters/convert_25.py,sha256=y1IIw64xHiG3xNEaJV_k7fjxiBZMjczo71hSvnCrBgM,601
162
+ pixeltable/metadata/converters/convert_26.py,sha256=a24OXiHUKklYQdDNkzYLllESNDzm5qYoNog8RBAmxBs,654
163
+ pixeltable/metadata/converters/convert_27.py,sha256=1P7DSAXPwHqkXvNxFqjIOcdI8dlsL8ikfaaveBvQHyM,904
164
+ pixeltable/metadata/converters/convert_28.py,sha256=v2CqpXAbCTQ-3gbn_ZtSl0fXueK1Q7VDECbIc7Ci1VQ,694
165
+ pixeltable/metadata/converters/convert_29.py,sha256=rHZp1tnvnbkIK08IYiT1RgP0-Y-Jw-G2L6VMWvEHUs4,4887
166
+ pixeltable/metadata/converters/convert_30.py,sha256=HZsGfXNl0KCPNMu1lnEtIMp0sZhwWtWpYuJQKUoNx3k,1314
167
+ pixeltable/metadata/converters/convert_31.py,sha256=pFjZGpuFlGRPxKYYidiSCIMNaEEXVuLTnELi3y_pSQo,424
168
+ pixeltable/metadata/converters/convert_32.py,sha256=YENfuQ_mqhnZWrvHJffaGEqd1IwS2RjTGPkEvOs5sUs,406
169
+ pixeltable/metadata/converters/convert_33.py,sha256=ZZV3FTyyouBM1eNymXxfHV-Oqmgu2s0KNP6AG3zc5eM,574
170
+ pixeltable/metadata/converters/convert_34.py,sha256=yp-bFVvIZwcIma4cd4JuwspY5yRyOEaJ5rI_-PzimVc,671
171
+ pixeltable/metadata/converters/convert_35.py,sha256=c88qft0RFQbdFIE_PZRHMjeku1r5HCLN7wrvndQSXdI,266
172
+ pixeltable/metadata/converters/convert_36.py,sha256=FG2fxJJpPE_JlnvUWq9a-72WaeE-6k3cojQNNxJ_GS4,1196
173
+ pixeltable/metadata/converters/convert_37.py,sha256=IVZGtKFaaYMGBs39V_H_okWvpxxadTUWqxoln0cNeQI,392
174
+ pixeltable/metadata/converters/convert_38.py,sha256=bH4ofK9wGMFOX00Go-ni6s041P9B5tzHooZ32396h3c,1150
175
+ pixeltable/metadata/converters/convert_39.py,sha256=ycZAmH2KhJC28_ao-3Ka71jAPldmjUjoQYhb7C-rla4,4627
176
+ pixeltable/metadata/converters/convert_40.py,sha256=qtsbIGv_YcMKswsSam2PBsspIl0mDsCOSiaRW8yN1wM,2892
177
+ pixeltable/metadata/converters/util.py,sha256=fZxlSMLKpl3ZcjPYHkCXWauM3RuCjUKS4HRQ1ru0uWI,7671
178
+ pixeltable/mypy/__init__.py,sha256=cD_oHXClR_bDM8qVNIfaOAgRhQjPfcWvLcinz79ua6o,54
179
+ pixeltable/mypy/mypy_plugin.py,sha256=_eV2PtFDLUztb-QlysdEmF4qzVDALEQkH8aapbLYqy4,5438
180
+ pixeltable/share/__init__.py,sha256=5NafGEUosRUQW61lj2dq4O3NAj8EehT9iK81mvh7Kis,105
181
+ pixeltable/share/packager.py,sha256=3UKTC9u2M0_aLAbz6rsL8nkO5kAtD45tAiEbfyTswcg,38837
182
+ pixeltable/share/publish.py,sha256=0u-Wcy_1VOwkVwcJV9oBKAzgznnlQnxZxforJWBoPuE,11903
183
+ pixeltable/share/protocol/__init__.py,sha256=IS51n0-RYDy5ET2d2Y17Agevr8TYbKN8xRWiV_TJ1MQ,786
184
+ pixeltable/share/protocol/common.py,sha256=qJjlk9NJKgb85JKCdTloPvSlBVFNFs5xRY5slT90T3s,6082
185
+ pixeltable/share/protocol/operation_types.py,sha256=yr0id4nsihUaGnb2gS9HQ0sG9mIGSmllCzqgdreyGeg,959
186
+ pixeltable/share/protocol/replica.py,sha256=6Z6oLPC8o9hQtQrGV4x7wG3DwahsTd8PV15w0byM524,3283
187
+ pixeltable/utils/__init__.py,sha256=DWylt_1U2PzSK047uiIhWcjykG19UtqXBey_f_TKUzM,1697
188
+ pixeltable/utils/arrow.py,sha256=W48Rg5glpP7cdPblymY88HWuqpzLDb-vU-ohyJycnoc,10316
189
+ pixeltable/utils/av.py,sha256=rj-ksxiW-88dHjBZ5J3a49iaHDNlzfP9B199ka97OX0,9442
190
+ pixeltable/utils/azure_store.py,sha256=rGseJ1N71SFo4LjoRXwnv7LMAnK_6zUZxhzH2nL7xA0,12716
191
+ pixeltable/utils/coco.py,sha256=Y1DWVYguZD4VhKyf7JruYfHWvhkJLq39fzbiSm5cdyY,7304
192
+ pixeltable/utils/code.py,sha256=1WdqqWIG6_L0Ye1eWiJi9Jrb0v1XINKUy7V9esYh3oE,1249
193
+ pixeltable/utils/console_output.py,sha256=Xodh5K3bI_2WsL6ySTVHXM7S3FZKi7RLwIqFIxip-mg,1232
194
+ pixeltable/utils/coroutine.py,sha256=d87kLlkVIZq2u0kTE7kJ5Tc_yjEkdGi5sXAuxjLLxXY,896
195
+ pixeltable/utils/dbms.py,sha256=IibwfOlQlOwJA99EPsXLUV_JhOydzeElOm5dawuOl7Y,3165
196
+ pixeltable/utils/description_helper.py,sha256=kqNduYCN6a68q3zPyyfU9_CXDiuB28AGBSqcznubefs,3690
197
+ pixeltable/utils/documents.py,sha256=vYwr6yyNsSIS7VHXVL3kop7i9nLVRIO6MFnXzjU_rTU,3062
198
+ pixeltable/utils/exception_handler.py,sha256=KW-m5uzv42sH9l6zfwgnDLaiR5sSwvq3JTOdlCwfX0w,1450
199
+ pixeltable/utils/filecache.py,sha256=1Uyh5kYDCEP1qd1EtSVEEn1LOkSR6Y5iLM1ED1LS-DI,10855
200
+ pixeltable/utils/formatter.py,sha256=uEbEAC-d72dKf18RXxQerPLRnjVJMKL5vNIRt5CJz_I,10063
201
+ pixeltable/utils/gcs_store.py,sha256=L4AKuB_t2ACpu9dRhK0rZWc7ouzyhdb_Aclq1vBS_oU,11351
202
+ pixeltable/utils/http_server.py,sha256=6khOAtpVj1lDIm9Dx8VIECLm87cFEp4IFbAg8T92A2o,2441
203
+ pixeltable/utils/iceberg.py,sha256=COeNqqy5RRMkDGLS8CTnaUeAccG10x2fwP3e1veuqIA,522
204
+ pixeltable/utils/image.py,sha256=xQNyfylvPnDnmJrHQI9URzzbieIpq5qyK7QLod_hezU,545
205
+ pixeltable/utils/lancedb.py,sha256=Otr-t47YACRo0Cq9-FyelcUuan1Kgs4gxCOpLOckj3s,2988
206
+ pixeltable/utils/local_store.py,sha256=pBhlJw3jkMXsoT-ND5k1TvFkUpAElMQbPWbHV9kaa3M,13480
207
+ pixeltable/utils/misc.py,sha256=HxTAxPVrZGtPPDGefXzzprYlT8TGiZa4mZkfHNsfdWs,137
208
+ pixeltable/utils/object_stores.py,sha256=6X0BISql3TfyuuDi7pe9aOx3A-VsR6ei3OWMSkh6kdY,22764
209
+ pixeltable/utils/pydantic.py,sha256=-ztUsuRXA7B6bywb5Yy1h5pNQ2DnsT1d0oHMxqtK3WY,2011
210
+ pixeltable/utils/pytorch.py,sha256=77x2g4N6dkfYvqbxjYi_rBRiNnMMZAb2cNtBw0hOCHg,3582
211
+ pixeltable/utils/s3_store.py,sha256=rpUrgMbrI06AE2TnQTODjkspo9OutOX6knCeTrShhXA,16657
212
+ pixeltable/utils/sql.py,sha256=Sa4Lh-VGe8GToU5W7DRiWf2lMl9B6saPqemiT0ZdHEc,806
213
+ pixeltable/utils/transactional_directory.py,sha256=OFKmu90oP7KwBAljwjnzP_w8euGdAXob3y4Nx9SCNHA,1357
214
+ pixeltable-0.4.20.dist-info/METADATA,sha256=Q36F-nXu5Tqd3na65Tq8whGnxzbQ1Yy_j4LaQlyI6qs,25549
215
+ pixeltable-0.4.20.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
216
+ pixeltable-0.4.20.dist-info/entry_points.txt,sha256=rrKugZmxDtGnXCnEQ5UJMaaSYY7-g1cLjUZ4W1moIhM,98
217
+ pixeltable-0.4.20.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
218
+ pixeltable-0.4.20.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.1.3
2
+ Generator: hatchling 1.27.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [mkdocstrings.python.templates]
2
+ extension-name = tool.doc_plugins.mkdocstrings:get_templates_path
pixeltable/__version__.py DELETED
@@ -1,3 +0,0 @@
1
- # These version placeholders will be replaced during build.
2
- __version__ = '0.4.0rc3'
3
- __version_tuple__ = (0, 4, "0rc3")
@@ -1,17 +0,0 @@
1
- """
2
- Extended integrations for Pixeltable. This package contains experimental or demonstration features that
3
- are not intended for production use. Long-term support cannot be guaranteed, usually because the features
4
- have dependencies whose future support is unclear.
5
- """
6
-
7
- # ruff: noqa: F401
8
-
9
- from pixeltable.utils.code import local_public_names
10
-
11
- from . import functions
12
-
13
- __all__ = local_public_names(__name__)
14
-
15
-
16
- def __dir__() -> list[str]:
17
- return __all__
@@ -1,11 +0,0 @@
1
- # ruff: noqa: F401
2
-
3
- from pixeltable.utils.code import local_public_names
4
-
5
- from . import whisperx, yolox
6
-
7
- __all__ = local_public_names(__name__)
8
-
9
-
10
- def __dir__() -> list[str]:
11
- return __all__
@@ -1,77 +0,0 @@
1
- from typing import TYPE_CHECKING, Optional
2
-
3
- from pixeltable.utils.code import local_public_names
4
-
5
- if TYPE_CHECKING:
6
- from whisperx.asr import FasterWhisperPipeline # type: ignore[import-untyped]
7
-
8
- import pixeltable as pxt
9
-
10
-
11
- @pxt.udf
12
- def transcribe(
13
- audio: pxt.Audio,
14
- *,
15
- model: str,
16
- compute_type: Optional[str] = None,
17
- language: Optional[str] = None,
18
- chunk_size: int = 30,
19
- ) -> dict:
20
- """
21
- Transcribe an audio file using WhisperX.
22
-
23
- This UDF runs a transcription model _locally_ using the WhisperX library,
24
- equivalent to the WhisperX `transcribe` function, as described in the
25
- [WhisperX library documentation](https://github.com/m-bain/whisperX).
26
-
27
- WhisperX is part of the `pixeltable.ext` package: long-term support in Pixeltable is not guaranteed.
28
-
29
- __Requirements:__
30
-
31
- - `pip install whisperx`
32
-
33
- Args:
34
- audio: The audio file to transcribe.
35
- model: The name of the model to use for transcription.
36
-
37
- See the [WhisperX library documentation](https://github.com/m-bain/whisperX) for details
38
- on the remaining parameters.
39
-
40
- Returns:
41
- A dictionary containing the transcription and various other metadata.
42
-
43
- Examples:
44
- Add a computed column that applies the model `tiny.en` to an existing Pixeltable column `tbl.audio`
45
- of the table `tbl`:
46
-
47
- >>> tbl.add_computed_column(result=transcribe(tbl.audio, model='tiny.en'))
48
- """
49
- import torch
50
- import whisperx # type: ignore[import-untyped]
51
-
52
- device = 'cuda' if torch.cuda.is_available() else 'cpu'
53
- compute_type = compute_type or ('float16' if device == 'cuda' else 'int8')
54
- model = _lookup_model(model, device, compute_type)
55
- audio_array = whisperx.load_audio(audio)
56
- result = model.transcribe(audio_array, batch_size=16, language=language, chunk_size=chunk_size)
57
- return result
58
-
59
-
60
- def _lookup_model(model_id: str, device: str, compute_type: str) -> 'FasterWhisperPipeline':
61
- import whisperx
62
-
63
- key = (model_id, device, compute_type)
64
- if key not in _model_cache:
65
- model = whisperx.load_model(model_id, device, compute_type=compute_type)
66
- _model_cache[key] = model
67
- return _model_cache[key]
68
-
69
-
70
- _model_cache: dict[tuple[str, str, str], 'FasterWhisperPipeline'] = {}
71
-
72
-
73
- __all__ = local_public_names(__name__)
74
-
75
-
76
- def __dir__() -> list[str]:
77
- return __all__
@@ -1,77 +0,0 @@
1
- import glob
2
- import os
3
- import re
4
- import shutil
5
- import uuid
6
- from collections import defaultdict
7
- from pathlib import Path
8
- from typing import Optional
9
- from uuid import UUID
10
-
11
- from pixeltable.env import Env
12
-
13
-
14
- class MediaStore:
15
- """
16
- Utilities to manage media files stored in Env.media_dir
17
-
18
- Media file names are a composite of: table id, column id, version, uuid:
19
- the table id/column id/version are redundant but useful for identifying all files for a table
20
- or all files created for a particular version of a table
21
- """
22
-
23
- pattern = re.compile(r'([0-9a-fA-F]+)_(\d+)_(\d+)_([0-9a-fA-F]+)') # tbl_id, col_id, version, uuid
24
-
25
- @classmethod
26
- def prepare_media_path(cls, tbl_id: UUID, col_id: int, version: int, ext: Optional[str] = None) -> Path:
27
- """
28
- Construct a new, unique Path name for a persisted media file, and create the parent directory
29
- for the new Path if it does not already exist. The Path will reside in
30
- the environment's media_dir.
31
- """
32
- id_hex = uuid.uuid4().hex
33
- parent = Env.get().media_dir / tbl_id.hex / id_hex[:2] / id_hex[:4]
34
- parent.mkdir(parents=True, exist_ok=True)
35
- return parent / f'{tbl_id.hex}_{col_id}_{version}_{id_hex}{ext or ""}'
36
-
37
- @classmethod
38
- def delete(cls, tbl_id: UUID, version: Optional[int] = None) -> None:
39
- """Delete all files belonging to tbl_id. If version is not None, delete
40
- only those files belonging to the specified version."""
41
- assert tbl_id is not None
42
- if version is None:
43
- # Remove the entire folder for this table id.
44
- path = Env.get().media_dir / tbl_id.hex
45
- if path.exists():
46
- shutil.rmtree(path)
47
- else:
48
- # Remove only the elements for the specified version.
49
- paths = glob.glob(str(Env.get().media_dir / tbl_id.hex) + f'/**/{tbl_id.hex}_*_{version}_*', recursive=True)
50
- for p in paths:
51
- os.remove(p)
52
-
53
- @classmethod
54
- def count(cls, tbl_id: UUID) -> int:
55
- """
56
- Return number of files for given tbl_id.
57
- """
58
- paths = glob.glob(str(Env.get().media_dir / tbl_id.hex) + f'/**/{tbl_id.hex}_*', recursive=True)
59
- return len(paths)
60
-
61
- @classmethod
62
- def stats(cls) -> list[tuple[UUID, int, int, int]]:
63
- paths = glob.glob(str(Env.get().media_dir) + '/**', recursive=True)
64
- # key: (tbl_id, col_id), value: (num_files, size)
65
- d: dict[tuple[UUID, int], list[int]] = defaultdict(lambda: [0, 0])
66
- for p in paths:
67
- if not os.path.isdir(p):
68
- matched = re.match(cls.pattern, Path(p).name)
69
- assert matched is not None
70
- tbl_id, col_id = UUID(hex=matched[1]), int(matched[2])
71
- file_info = os.stat(p)
72
- t = d[tbl_id, col_id]
73
- t[0] += 1
74
- t[1] += file_info.st_size
75
- result = [(tbl_id, col_id, num_files, size) for (tbl_id, col_id), (num_files, size) in d.items()]
76
- result.sort(key=lambda e: e[3], reverse=True)
77
- return result
pixeltable/utils/s3.py DELETED
@@ -1,17 +0,0 @@
1
- from typing import Any
2
-
3
-
4
- def get_client(**kwargs: Any) -> Any:
5
- import boto3
6
- import botocore
7
-
8
- try:
9
- boto3.Session().get_credentials().get_frozen_credentials()
10
- config = botocore.config.Config(**kwargs)
11
- return boto3.client('s3', config=config) # credentials are available
12
- except AttributeError:
13
- # No credentials available, use unsigned mode
14
- config_args = kwargs.copy()
15
- config_args['signature_version'] = botocore.UNSIGNED
16
- config = botocore.config.Config(**config_args)
17
- return boto3.client('s3', config=config)
@@ -1,25 +0,0 @@
1
- import sqlalchemy as sql
2
-
3
- from pixeltable.func.udf import udf
4
-
5
-
6
- @udf
7
- def sample_key(seed: int, *key_fields: int) -> str:
8
- """
9
- Create a sample key from the given seed and key fields.
10
-
11
- Args:
12
- seed: The seed value.
13
- rowids: The rowids to include in the sample key.
14
-
15
- Returns:
16
- A string key for each row
17
- """
18
- raise NotImplementedError('SampleKey creation is not implemented in python.')
19
-
20
-
21
- @sample_key.to_sql
22
- def _(seed: sql.ColumnElement, *key_fields: sql.ColumnElement) -> sql.ColumnElement:
23
- from pixeltable.exec.sql_node import SqlSampleNode
24
-
25
- return SqlSampleNode.key_sql_expr(seed, key_fields)