pixeltable 0.2.11__py3-none-any.whl → 0.2.13__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 (48) hide show
  1. pixeltable/__init__.py +2 -2
  2. pixeltable/__version__.py +2 -2
  3. pixeltable/catalog/insertable_table.py +2 -2
  4. pixeltable/catalog/schema_object.py +28 -2
  5. pixeltable/catalog/table.py +68 -30
  6. pixeltable/catalog/table_version.py +14 -43
  7. pixeltable/catalog/view.py +2 -2
  8. pixeltable/dataframe.py +8 -7
  9. pixeltable/exec/expr_eval_node.py +8 -1
  10. pixeltable/exec/sql_scan_node.py +1 -1
  11. pixeltable/exprs/__init__.py +0 -1
  12. pixeltable/exprs/column_ref.py +2 -7
  13. pixeltable/exprs/comparison.py +5 -5
  14. pixeltable/exprs/compound_predicate.py +12 -12
  15. pixeltable/exprs/expr.py +32 -0
  16. pixeltable/exprs/in_predicate.py +3 -3
  17. pixeltable/exprs/is_null.py +5 -5
  18. pixeltable/exprs/similarity_expr.py +27 -16
  19. pixeltable/func/aggregate_function.py +10 -4
  20. pixeltable/func/callable_function.py +4 -0
  21. pixeltable/func/function_registry.py +2 -0
  22. pixeltable/functions/globals.py +36 -1
  23. pixeltable/functions/huggingface.py +62 -4
  24. pixeltable/functions/image.py +17 -0
  25. pixeltable/functions/openai.py +1 -1
  26. pixeltable/functions/string.py +622 -7
  27. pixeltable/functions/video.py +26 -8
  28. pixeltable/globals.py +54 -50
  29. pixeltable/index/embedding_index.py +28 -27
  30. pixeltable/io/external_store.py +2 -2
  31. pixeltable/io/globals.py +54 -5
  32. pixeltable/io/label_studio.py +45 -5
  33. pixeltable/io/pandas.py +18 -7
  34. pixeltable/metadata/__init__.py +1 -1
  35. pixeltable/metadata/converters/convert_17.py +26 -0
  36. pixeltable/plan.py +6 -6
  37. pixeltable/tool/create_test_db_dump.py +2 -2
  38. pixeltable/tool/doc_plugins/griffe.py +77 -0
  39. pixeltable/tool/doc_plugins/mkdocstrings.py +6 -0
  40. pixeltable/tool/doc_plugins/templates/material/udf.html.jinja +135 -0
  41. pixeltable/utils/s3.py +1 -1
  42. pixeltable-0.2.13.dist-info/METADATA +206 -0
  43. {pixeltable-0.2.11.dist-info → pixeltable-0.2.13.dist-info}/RECORD +46 -42
  44. pixeltable-0.2.13.dist-info/entry_points.txt +3 -0
  45. pixeltable/exprs/predicate.py +0 -44
  46. pixeltable-0.2.11.dist-info/METADATA +0 -137
  47. {pixeltable-0.2.11.dist-info → pixeltable-0.2.13.dist-info}/LICENSE +0 -0
  48. {pixeltable-0.2.11.dist-info → pixeltable-0.2.13.dist-info}/WHEEL +0 -0
@@ -1,20 +1,20 @@
1
- pixeltable/__init__.py,sha256=GNlV3jQKDQKTrOq8BVvPsnd9W9ROneP9-1C-zgNSWsg,1275
2
- pixeltable/__version__.py,sha256=EOLZYNHwHWPLWPMk2nm8H1fHHCn1KsQtw2ovnB_eAnY,114
1
+ pixeltable/__init__.py,sha256=SkhQ6olglhj3NdcyVYzsTwpTZs8uVmtJa9INfsQV9gk,1267
2
+ pixeltable/__version__.py,sha256=dloDN3rTmGtjqAgx8iRqSPKXEoW7iCNCWm0C23Ryib4,114
3
3
  pixeltable/catalog/__init__.py,sha256=E41bxaPeQIcgRYzTWc2vkDOboQhRymrJf4IcHQO7o_8,453
4
4
  pixeltable/catalog/catalog.py,sha256=8gsFWm6o9Qg4_BEO6oejdpmP4MAOlhmuKRaJP0o2UPU,7906
5
5
  pixeltable/catalog/column.py,sha256=Dmc6CgFLExJy3tdvuX0Emjc8SgqZvmCbAHozibO1-G0,9417
6
6
  pixeltable/catalog/dir.py,sha256=DWl9nnCOoiYLKWp31MNMvLmryXeQiQZu5YJcd4tpy38,921
7
7
  pixeltable/catalog/globals.py,sha256=tNb_6jzAKJWD4MH1Y9g2UhVQkiomYfbHQZ2GIcg7vUI,974
8
- pixeltable/catalog/insertable_table.py,sha256=u2yMCw1lWSIeRAknIKQmSMWS_3oLTn1kCR1Hk79OvrI,5883
8
+ pixeltable/catalog/insertable_table.py,sha256=qYNuestCC-oR8bEoO1K7WMRWtCTB6RwF3X2LeK3kWG4,5878
9
9
  pixeltable/catalog/named_function.py,sha256=UhHaimM_uJHS-0RQcqGOgvWeZtMfKsIgSeKSRwT2moU,1149
10
10
  pixeltable/catalog/path.py,sha256=QgccEi_QOfaKt8YsR2zLtd_z7z7QQkU_1kprJFi2SPQ,1677
11
11
  pixeltable/catalog/path_dict.py,sha256=xfvxg1Ze5jZCARUGASF2DRbQPh7pRVTYhuJ_u82gYUo,5941
12
- pixeltable/catalog/schema_object.py,sha256=Sf8aGARpsPeRUz1NjsZ97oSBMyElsctP39uU9x9Ic80,964
13
- pixeltable/catalog/table.py,sha256=5CSEASIJqWJ0l1mDERYMqj_5rD--y4F8yhqq3Uu0lAI,39473
14
- pixeltable/catalog/table_version.py,sha256=JrwwvG1vizCDJ-11GgTwnCg2XSOqyrJ6w2wbqmWYR60,58582
12
+ pixeltable/catalog/schema_object.py,sha256=1GuxN68P3c7g0gmY8doB6qoUGJsalyECWaO-KEi96D0,1879
13
+ pixeltable/catalog/table.py,sha256=Ul6lZ29uj6KDDLx6KkCBB8e_hpN0FhygU0IqWcTaRuA,41136
14
+ pixeltable/catalog/table_version.py,sha256=ukMVumBdlMvA2gktsyjhXyLm2qhObTSi1pXoiOkUN_I,57040
15
15
  pixeltable/catalog/table_version_path.py,sha256=6JZlgKMYa3Xf8p_2Z-iDIFIcfuYRyjbpc3_CC9l1HME,6396
16
- pixeltable/catalog/view.py,sha256=3OAk-NBPlSagMCsdVtcx35jHD80SIYCuOy5dc1kM7Fs,10403
17
- pixeltable/dataframe.py,sha256=O8tAgOqFa_twjak-hDIBoXB5MZx-ZyzYOCeQr8jCO-0,34339
16
+ pixeltable/catalog/view.py,sha256=ImMpJn_SZF2a7t54BdZjo1Y09fE8CN9FJUhGpTBhCQI,10393
17
+ pixeltable/dataframe.py,sha256=T8Vi17wy8KT3squF_CsrCf8LYPEof7kH5dBKrVCW5n4,34497
18
18
  pixeltable/env.py,sha256=WO_WLfRj9Fft6QyW89S9cw47RTg1ALviStu9pNygJEQ,21635
19
19
  pixeltable/exceptions.py,sha256=MSP9zeL0AmXT93XqjdvgGN4rzno1_KRrGriq6hpemnw,376
20
20
  pixeltable/exec/__init__.py,sha256=RK7SKvrQ7Ky3G_LXDP4Bf7lHmMM_uYZl8dJaZYs0FjY,454
@@ -24,46 +24,45 @@ pixeltable/exec/component_iteration_node.py,sha256=Uz6zEeaJMcbvF3S0W0qmLI_uWsZsa
24
24
  pixeltable/exec/data_row_batch.py,sha256=1IDYHBkSQ60dwOnAGnS-Wpp3AsnbMqKcY40zUT7ku-Q,3392
25
25
  pixeltable/exec/exec_context.py,sha256=0rg5V8HzSy-BvqmSbGr-U4aJ4eOZg2JN0x6zjYQGtBc,1090
26
26
  pixeltable/exec/exec_node.py,sha256=ixkv3p_EfF53UDWgwLjQGKR1LNIQxzgDXsTzzJj6ea4,2211
27
- pixeltable/exec/expr_eval_node.py,sha256=fEzbeZ0J-kylRQ2M0nSlUeLFRTHlwNzlvBo1yqWQ2rg,10856
27
+ pixeltable/exec/expr_eval_node.py,sha256=eLyUwxA6HE9gHOE_oBT5nfVgd4oK2TQ6gaOM5RnCA8Q,11465
28
28
  pixeltable/exec/in_memory_data_node.py,sha256=vvjr5-r94mRddOYIpKF8zDWCJPJrG0YpQVtYSyKlyVU,3502
29
29
  pixeltable/exec/media_validation_node.py,sha256=OKfRyKpcn7AZdACy_HD4NsDC87ZfNFs1tdrQz2NiIVw,1514
30
- pixeltable/exec/sql_scan_node.py,sha256=CGUoBKnhuDDkLepqCmS-1vjSvG8aiIhvAZHdZZFTRSM,10295
31
- pixeltable/exprs/__init__.py,sha256=7dwrdk-NpF66OT-m5yNtFEhq-o1T476dnXHjluw2K1s,951
30
+ pixeltable/exec/sql_scan_node.py,sha256=xyf82fnwdCH5PwJUns7BlkHAzSeWDx9ew6OSKfe-bCg,10290
31
+ pixeltable/exprs/__init__.py,sha256=jmJZJYojZoXqU1GU3nFMPoJsabV5PFhEhs7GAldYXbE,918
32
32
  pixeltable/exprs/arithmetic_expr.py,sha256=sWBYCBKI6IHj9ASwDcm2BlkQ5gleVtKtmpiPvzFNBJM,4386
33
33
  pixeltable/exprs/array_slice.py,sha256=VmWc6iFusrM85MjyEBBCfXG1Jnt8-Gr6-J88BXxNoOE,2131
34
34
  pixeltable/exprs/column_property_ref.py,sha256=0PHiBys0fxe2LgjaMId5UHob4E-ZggyPLnnW41RgA0E,2706
35
- pixeltable/exprs/column_ref.py,sha256=jmKUHuRev3PI-58BqYQVcBPLQ3E7bM1mPlFSVlwa5b0,5554
36
- pixeltable/exprs/comparison.py,sha256=hP3M_lMWcFgENBICFosZPw2lRm1R6_qM_O9bKPmWJGI,4789
37
- pixeltable/exprs/compound_predicate.py,sha256=Gh22MKi625m5A_RunVRd-a1XFi-fitikqBVz2VNXKrs,3830
35
+ pixeltable/exprs/column_ref.py,sha256=rlw6Ic_atAfPZpEBNAqbRZauMeEUci2rDyVoHd1pA1I,5195
36
+ pixeltable/exprs/comparison.py,sha256=bWa_KZTir_5teKGEXf6cNzJWk55S9-XPPFdY8zoPn6U,4793
37
+ pixeltable/exprs/compound_predicate.py,sha256=y80Kc3LmifYP4Zqa8Etujb4jnItro2D6cS10WYQIGiI,3758
38
38
  pixeltable/exprs/data_row.py,sha256=RTBw1cBt29g_9g_hgdEYZ5aiHl7WZMBaBC2fOMOfwOc,8668
39
- pixeltable/exprs/expr.py,sha256=mxpBHOiKbHRX9FXLZWd5UjhPu2NjuXsO6v1RRjuH4GY,24813
39
+ pixeltable/exprs/expr.py,sha256=3zVh6XaXpppY_i-dy3vq5wmB9rFdnvIiykJrow-fGms,26335
40
40
  pixeltable/exprs/expr_set.py,sha256=Q64Q2yI0CTq2Ma_E-BUYlMotSstVuMm4OFZnBCedHRk,1222
41
41
  pixeltable/exprs/function_call.py,sha256=UKqErJyPUa6-Q-SqkVsK_tT4ti--z_YvQEmj1jHGc8w,17149
42
42
  pixeltable/exprs/globals.py,sha256=KhK4xwkLHv4NsXXcLdjRu2OFSvEnlC7GG-8Gs_IbQtI,1858
43
43
  pixeltable/exprs/image_member_access.py,sha256=KSYdTIaLh53dNRjv3SJFchPMPo7o5diJSQkV1NsyB4Y,3547
44
- pixeltable/exprs/in_predicate.py,sha256=burxrBCH1MXqU-wrNWJvD0PRGzJdWy85intOSftQK54,3696
44
+ pixeltable/exprs/in_predicate.py,sha256=ASxkSLeGdOjGN4QgWQA0zF1SkKOmHU_IV0spNpjvTGQ,3707
45
45
  pixeltable/exprs/inline_array.py,sha256=293WuUEhYXrcp8-AnPDVIWQBPQMrPviB88A619Ls_Es,4499
46
46
  pixeltable/exprs/inline_dict.py,sha256=TWYokJ14Nq-evODcYFVO471WSEDbz6cJqIdRb2PkbZQ,3885
47
- pixeltable/exprs/is_null.py,sha256=nvpOXtQj1UeYJpkCWzbaGuQElzrA2HSG3XNQugOv-pw,1041
47
+ pixeltable/exprs/is_null.py,sha256=K5EQCgpgLk-VfqO58b2T98qR9uui5ryhmskU2Ap8lWg,1016
48
48
  pixeltable/exprs/json_mapper.py,sha256=I60VNgus64ai80gnFCIsRn0VRWYXMkqH5VNvnATsN9s,4559
49
49
  pixeltable/exprs/json_path.py,sha256=Wz_5zFsyc9TPhsSbsDjDmQ3Nb0uVIwMCx5nh-cQYBiE,6526
50
50
  pixeltable/exprs/literal.py,sha256=5NNza-WL1dd3hNznwwkr_yAcTGXSIRYUszGfy30lruI,2396
51
51
  pixeltable/exprs/object_ref.py,sha256=eTcx84aWRI59fIiGvbdv3_cfL0XW4xEFQ4lwpLpJkM8,1250
52
- pixeltable/exprs/predicate.py,sha256=OSDgjfSqiK7J_5GZMUXMvjfyomKEGi0JNxeB073SGXw,1859
53
52
  pixeltable/exprs/row_builder.py,sha256=0OYd51J2ECPHkk2iN3MfYpS7LqnHTV5l5ubsVcy0dJA,15926
54
53
  pixeltable/exprs/rowid_ref.py,sha256=74w4rEy21YysTVbyKNc3op-pYFqDAx8VJdtl7ZPpxHs,4268
55
- pixeltable/exprs/similarity_expr.py,sha256=i5urJiSD43lJIi0AnMZhNvl7q5I8P3BPRuMx4IaAym0,3015
54
+ pixeltable/exprs/similarity_expr.py,sha256=DqLOWtwPn9LxBRPm-d5Qz0yZ7w9YTOP8w0rgbr-6Lyg,3702
56
55
  pixeltable/exprs/type_cast.py,sha256=JMg8p1qYoFfiAXfJPSbTEnfrK7lRO_JMaqlPHOrhNQU,1793
57
56
  pixeltable/exprs/variable.py,sha256=Kg_O4ytcHYZFijIyMHYBJn063cTKU1-YE583FAz8Qaw,1361
58
57
  pixeltable/ext/__init__.py,sha256=0uugfuME1FybVo-MdxaVNGagRjhcvNTnv5MZUem6Cyo,269
59
58
  pixeltable/ext/functions/whisperx.py,sha256=CnpSPZJgufXa01vgUubVkyxQuZIdublJzkwbm5kS1YQ,1078
60
59
  pixeltable/ext/functions/yolox.py,sha256=8e-S9SD0xpwkMlSHnpm6aZc7lToHZnEnbZvM_M1alwU,3688
61
60
  pixeltable/func/__init__.py,sha256=WjftUGyNkd6bF_qSxqZ5Gd7Elf8oExb3dUlpydhdFTo,407
62
- pixeltable/func/aggregate_function.py,sha256=PCY-pW1cJZPx3rsHzcBDddmDoxV7IEt5n3afyeAhZ8M,9329
63
- pixeltable/func/callable_function.py,sha256=eD-h1KlihM4SDbCKr2HJtP8XTxAV7L0bxPCdyt-71JY,4598
61
+ pixeltable/func/aggregate_function.py,sha256=pyF479nBrN2mZ8mAnsbmt2T8KxsDAVNgpUXiqHM2Nt8,9486
62
+ pixeltable/func/callable_function.py,sha256=YGmClf6XX90eFuGFHDo0rbeGQZlFtwa0BJrfIg5c9yk,4714
64
63
  pixeltable/func/expr_template_function.py,sha256=_5xkhODJRiObOAPErvVhlpLaBpXTcjhovibCeB_1AB0,4058
65
64
  pixeltable/func/function.py,sha256=cVmu3scwveMc2hgcvhAkAEuqvahL1sKD-txz4bs21pc,5539
66
- pixeltable/func/function_registry.py,sha256=1ibSQxEPm3Zd3r497vSlckQiDG9sfCnyJx3zcSm9t7c,11456
65
+ pixeltable/func/function_registry.py,sha256=atg8JoxXdLPbxJsQYEyGuzwCzN5rSeRSh-5aMgu7G4g,11567
67
66
  pixeltable/func/globals.py,sha256=sEwn6lGgHMp6VQORb_P5qRd_-Q2_bUSqvqM9-XPN_ec,1483
68
67
  pixeltable/func/query_template_function.py,sha256=BUU0KZYkqVPjIFg6g6msU4PzVGf2fkEKveDaEMGXhzI,3680
69
68
  pixeltable/func/signature.py,sha256=6Lwf32auSnmhYGrN4NkHk07BmG2a73TNICbWnelkH1s,8638
@@ -71,45 +70,49 @@ pixeltable/func/udf.py,sha256=TtFgA9gXUGasd3yj22S6NAsanPJhmmZI_ewbcrTB_VY,6798
71
70
  pixeltable/functions/__init__.py,sha256=mC_0y7aLAqamgOj94S5e9yQ4HbnqPiXy-1_t2s6SPqY,290
72
71
  pixeltable/functions/eval.py,sha256=FMn95e0GG-ge7ss6dkDOV-7KQK9mSPvn-UyFB2rgBFI,8492
73
72
  pixeltable/functions/fireworks.py,sha256=sbZy3HRn8o01nT4k1lOJJ_jGrjhBNkYmj1_TraoYCiM,1090
74
- pixeltable/functions/globals.py,sha256=MVKcwvfRaqBMV58KBxp5ACMsTbj29WD97AOg1N5ZheY,1596
75
- pixeltable/functions/huggingface.py,sha256=qFdFpBX4R8Iz6fB0PKOwicdfvnEV7DQhtdcvsIQz55I,7372
76
- pixeltable/functions/image.py,sha256=lC5PVvx0hXlINGcURLrLeTT7xUMXla6QUC1T9t4-A0Y,5440
77
- pixeltable/functions/openai.py,sha256=Q6imhdlyZRuWNgBq9msqXMT8up_0e9jSsZPfSJ5DgUY,7839
78
- pixeltable/functions/string.py,sha256=Ae_weygd9Aj98buLC4tPLRYGg3LGSJEpXaqr93TF4nw,645
73
+ pixeltable/functions/globals.py,sha256=9yz5XzhGhh4kuvHJ8eiFvy9SCPYaZrF5ltwscMH9xEg,2692
74
+ pixeltable/functions/huggingface.py,sha256=qjDjH9TP8VGOn_Ly7TOtKSE0pEYsJgKiiSYGOUIKktM,9603
75
+ pixeltable/functions/image.py,sha256=2dlwSDEDSax1nfQ-X6GJo3eo8k4q9wosT3ZOaEsJJeA,5858
76
+ pixeltable/functions/openai.py,sha256=D0cDXe_zy1kUdKqM9T3qs7OBAUCrAINUy5P0DO0OSXc,7814
77
+ pixeltable/functions/string.py,sha256=fFRFqB7Vv-Fm2P9vNU-zpVDbRbFAEl91tZiI20xlMwE,19553
79
78
  pixeltable/functions/together.py,sha256=2vHOoXMUIpeYwTYGTr3hDHePzy8zepvoeyORgV_9n34,4412
80
79
  pixeltable/functions/util.py,sha256=F2iiIL7UfhYdCVzdCa3efYqWbaeLKFrbycKnuPkG57M,650
81
- pixeltable/functions/video.py,sha256=yn52MimAVrSzUyAUtyxbd1RWveX_TyjwsomBuhK9V60,6516
80
+ pixeltable/functions/video.py,sha256=YDys3gB0C-0JZlxshVlLl2w8LPkRC9LTaRSRKkxjmcc,7045
82
81
  pixeltable/functions/whisper.py,sha256=s7C4eV5tCJed-4Joob5LojGFEHPgapmT8awFPVxBKgQ,2199
83
- pixeltable/globals.py,sha256=xSj0pmgmRavmD_-TOFhNXd8slskOC2R95el9L7pyzxM,14795
82
+ pixeltable/globals.py,sha256=RNlJDTf6w350YaCco5JXYxYY2j1rcSzgBNazmIHB48c,14823
84
83
  pixeltable/index/__init__.py,sha256=XBwetNQQwnz0fiKwonOKhyy_U32l_cjt77kNvEIdjWs,102
85
84
  pixeltable/index/base.py,sha256=YAQ5Dz1mfI0dfu9rxWHWroE8TjB90yKfPtXAzoADq38,1568
86
85
  pixeltable/index/btree.py,sha256=NE4GYhcJWYJhdKyeHI0sQBlFvUaIgGOF9KLyCZOfFjE,1822
87
- pixeltable/index/embedding_index.py,sha256=AYphEggN-0B4GNrm4nMmi46CEtrQw5tguyk67BK2sWo,7627
86
+ pixeltable/index/embedding_index.py,sha256=U1wAjcTYvw3uJf3QHIOzBV8FLOUn8IeaFsLzUb_QTmc,7829
88
87
  pixeltable/io/__init__.py,sha256=DdqOteR1Y-yRvFS0VojXHryBtIGzH8nAN-1MBj3LGRk,493
89
- pixeltable/io/external_store.py,sha256=ZtDkfHMBo73JMKJ-q3J5FMWztYog38APn8kg81nCg34,16434
90
- pixeltable/io/globals.py,sha256=lfaXosEu1e2xkWhwUCUJNhpnZxXlBdf6jPlf8cf4F50,4546
88
+ pixeltable/io/external_store.py,sha256=owha7bEmA1ZvpZvBLBS6LHi9uLq1rUIkrMTGarsbjOU,16422
89
+ pixeltable/io/globals.py,sha256=47ZejGdm_tIBVKg-vk6eSOwvmoeDEkBF7eesCRa_MSk,7065
91
90
  pixeltable/io/hf_datasets.py,sha256=h5M1NkXOvEU8kaeT3AON1A18Vmhnc1lVo5a3TZ5AAic,8004
92
- pixeltable/io/label_studio.py,sha256=ZWXTuIFk4CheM2ON0VDyb_34L9BJUY7iUJLcPvrll7c,28782
93
- pixeltable/io/pandas.py,sha256=cDHUDW2CGiBbsEJB9zE5vkXopTKxDdI-CZxNcp0OnIk,6478
91
+ pixeltable/io/label_studio.py,sha256=ipcgyFkKurP9IsBScLVK7UVddWJWXQ8M1p_3bh9Z60s,31018
92
+ pixeltable/io/pandas.py,sha256=wRlWSsfvkiDePK3TjjrMHZFPMmlcAfrZ8JiAxsrOWQ0,7097
94
93
  pixeltable/io/parquet.py,sha256=i4hvYHsARe2GnZHxNmI66Vf3tr1sIFLN6KGCJYvH3o8,8149
95
94
  pixeltable/iterators/__init__.py,sha256=sjldFckkT8aVRiKgEP6faeAK2NQBdzbmpwAeRhI1FkM,366
96
95
  pixeltable/iterators/base.py,sha256=cnEh1tNN2JAxRzrLTg3dhun3N1oNQ8vifCm6ts3_UiE,1687
97
96
  pixeltable/iterators/document.py,sha256=netSCJatG8NcgbHZ69BvQVICdAorQlYi8OlcpqwLQD4,19436
98
97
  pixeltable/iterators/string.py,sha256=NG_fWc_GAITDfzl6MvrDOMrSoMcZdMZf6hPQztCSatE,1305
99
98
  pixeltable/iterators/video.py,sha256=xtxODL1AfZwTfHVzWekhTCLA8gwTJIvJFdxC0KecD9Q,3836
100
- pixeltable/metadata/__init__.py,sha256=uxufhyUkogiMhztO3OoS59Rqs5pWOHqFJqPO5mZfrVA,2172
99
+ pixeltable/metadata/__init__.py,sha256=R4K9KSnefmvSCxXbBKTLAHD3QuHXgQ3a0wTs-eg94Os,2172
101
100
  pixeltable/metadata/converters/convert_10.py,sha256=J1_r7LNNAWTdb042AwqFpJ4sEB-i4qhUdk5iOjcZk34,719
102
101
  pixeltable/metadata/converters/convert_12.py,sha256=Ci-qyZW1gqci-8wnjeOB5afdq7KTuN-hVSV9OqSPx8g,162
103
102
  pixeltable/metadata/converters/convert_13.py,sha256=yFR6lD3pOrZ46ZQBFKYvxiIYa7rRxh46Bsq7yiCBNak,1356
104
103
  pixeltable/metadata/converters/convert_14.py,sha256=o4Dwu5wujJYILN-2chg3xCSUsh4cnn0sImv6rc75rSM,388
105
104
  pixeltable/metadata/converters/convert_15.py,sha256=N-Lt3OdOrUprN-z1gFcxniZgAtZ7jzup_YUZzXX6EtY,1709
106
105
  pixeltable/metadata/converters/convert_16.py,sha256=SvcWOYgLwRw_gLTnLbCSI9f2cpdkXazYOmmtJUOOzv4,476
106
+ pixeltable/metadata/converters/convert_17.py,sha256=vJg4y2lg53WSj9OSntWsdUiCr6yRgMQm0eFbs_Geqjg,861
107
107
  pixeltable/metadata/converters/util.py,sha256=AcYs3yUICl93y8whf0pkeWZoCzE4JuUMafmcYMyJUCY,2618
108
108
  pixeltable/metadata/schema.py,sha256=WJZ1YPgS88rFElXbjYgDhcrI4VReR1I9VPOnTkoHvoI,8418
109
- pixeltable/plan.py,sha256=MXWgwQXD40GB57xQiq_wjXF3OL0XTEjjhQslMfFTt3w,32831
109
+ pixeltable/plan.py,sha256=Eq77DtzWDgMEfEuw4w_MWAkbk9uE9P3yVtgLuSuyVJ0,32801
110
110
  pixeltable/store.py,sha256=UDn-UMYuL6dTUym3yFsVhv9hUtnP_QtzhDJzsFInApc,18853
111
- pixeltable/tool/create_test_db_dump.py,sha256=AYYHJKSDx7CMjNH6WUoOlUCICFZKRqQn7sSL3jKkDEw,10727
111
+ pixeltable/tool/create_test_db_dump.py,sha256=VAU1pTZwSG3HM9LS2i8dKvwVfa-JZq7ZV06CaGQkxDg,10725
112
112
  pixeltable/tool/create_test_video.py,sha256=OLfccymYReIpzE8osZn4rQvLXxxiPC_l0vc06U74hVM,2899
113
+ pixeltable/tool/doc_plugins/griffe.py,sha256=K0HC6slt-FPmYgJ42po07dMqx6FGzs6zMeSMUyDbUUI,3290
114
+ pixeltable/tool/doc_plugins/mkdocstrings.py,sha256=afq7XOaSC5WRmugkh-FMFMK8PqOgIlDIsJdD8cuPhtE,207
115
+ pixeltable/tool/doc_plugins/templates/material/udf.html.jinja,sha256=R-7Q57nmDd5BUea-F1-MjwjK3pq7uBHXNoSo8_QjZG4,4890
113
116
  pixeltable/tool/embed_udf.py,sha256=llHUhjGnCMp7Wyz7eHgKZV2v6o2ZWSgLQKscESuHK_o,269
114
117
  pixeltable/type_system.py,sha256=oXnDVoP90ic6WSTF_DcgWDLx0MYKEU0ggGTesAKahic,29505
115
118
  pixeltable/utils/__init__.py,sha256=UYlrf6TIWJT0g-Hac0b34-dEk478B5Qx8dGco34YlIk,439
@@ -123,10 +126,11 @@ pixeltable/utils/help.py,sha256=cCnxJ4VP9MJ57iDqExmnDcM-JG3a1lw_q7g-D7bpSVI,252
123
126
  pixeltable/utils/http_server.py,sha256=WQ5ILMzlz4TlwI9j5YqAPgEZyhrN1GytMNDbLD9occk,2422
124
127
  pixeltable/utils/media_store.py,sha256=x71wnJDZDHcdd13VCfL4AkHQ6IJB41gNA-zBvXJwFos,3116
125
128
  pixeltable/utils/pytorch.py,sha256=BR4tgfUWw-2rwWTOgzXj5qdMBpe1Arpp5SK4ax6jjpk,3483
126
- pixeltable/utils/s3.py,sha256=rkanuhk9DWvSfmbOLQW1j1Iov4sl2KhxGGKN-AJ8LSE,432
129
+ pixeltable/utils/s3.py,sha256=DBfXp0SYubhiKckdAD7PsiVBX_YfVP8Rcu6DCG_3SaQ,433
127
130
  pixeltable/utils/sql.py,sha256=5n5_OmXAGtqFdL6z5XvgnU-vlx6Ba6f1WJrO1ZwUle8,765
128
131
  pixeltable/utils/transactional_directory.py,sha256=UGzCrGtLR3hEEf8sYGuWBzLVFAEQml3vdIavigWeTBM,1349
129
- pixeltable-0.2.11.dist-info/LICENSE,sha256=0UNMmwuqWPC0xDY1NWMm4uNJ2_MyA1pnTNRgQTvuBiQ,746
130
- pixeltable-0.2.11.dist-info/METADATA,sha256=c4rIZLuAKseDSgl84ndgoMupaq9XUThLxwFmaBeyjtA,9815
131
- pixeltable-0.2.11.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
132
- pixeltable-0.2.11.dist-info/RECORD,,
132
+ pixeltable-0.2.13.dist-info/LICENSE,sha256=0UNMmwuqWPC0xDY1NWMm4uNJ2_MyA1pnTNRgQTvuBiQ,746
133
+ pixeltable-0.2.13.dist-info/METADATA,sha256=Ht5bkHn7MOBEVy-9nb7en-JijNrCNAeulHU4991XZvc,11242
134
+ pixeltable-0.2.13.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
135
+ pixeltable-0.2.13.dist-info/entry_points.txt,sha256=TNI1Gb5vPwFrTdw6TimSYjO8FeK8c_HuPr28vcf7o_I,108
136
+ pixeltable-0.2.13.dist-info/RECORD,,
@@ -0,0 +1,3 @@
1
+ [mkdocstrings.python.templates]
2
+ extension-name=pixeltable.tool.doc_plugins.mkdocstrings:get_templates_path
3
+
@@ -1,44 +0,0 @@
1
- from __future__ import annotations
2
- from typing import Optional, List, Tuple, Callable
3
-
4
- from .expr import Expr
5
- from .globals import LogicalOperator
6
- import pixeltable
7
- import pixeltable.type_system as ts
8
-
9
-
10
- class Predicate(Expr):
11
- def __init__(self) -> None:
12
- super().__init__(ts.BoolType())
13
-
14
- def split_conjuncts(
15
- self, condition: Callable[[Predicate], bool]) -> Tuple[List[Predicate], Optional[Predicate]]:
16
- """
17
- Returns clauses of a conjunction that meet condition in the first element.
18
- The second element contains remaining clauses, rolled into a conjunction.
19
- """
20
- if condition(self):
21
- return [self], None
22
- else:
23
- return [], self
24
-
25
- def __and__(self, other: object) -> 'pixeltable.exprs.CompoundPredicate':
26
- if not isinstance(other, Expr):
27
- raise TypeError(f'Other needs to be an expression: {type(other)}')
28
- if not other.col_type.is_bool_type():
29
- raise TypeError(f'Other needs to be an expression that returns a boolean: {other.col_type}')
30
- from .compound_predicate import CompoundPredicate
31
- return CompoundPredicate(LogicalOperator.AND, [self, other])
32
-
33
- def __or__(self, other: object) -> 'pixeltable.exprs.CompoundPredicate':
34
- if not isinstance(other, Expr):
35
- raise TypeError(f'Other needs to be an expression: {type(other)}')
36
- if not other.col_type.is_bool_type():
37
- raise TypeError(f'Other needs to be an expression that returns a boolean: {other.col_type}')
38
- from .compound_predicate import CompoundPredicate
39
- return CompoundPredicate(LogicalOperator.OR, [self, other])
40
-
41
- def __invert__(self) -> 'pixeltable.exprs.CompoundPredicate':
42
- from .compound_predicate import CompoundPredicate
43
- return CompoundPredicate(LogicalOperator.NOT, [self])
44
-
@@ -1,137 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: pixeltable
3
- Version: 0.2.11
4
- Summary: Pixeltable: The Multimodal AI Data Plane
5
- Author: Marcel Kornacker
6
- Author-email: marcelk@gmail.com
7
- Requires-Python: >=3.9,<4.0
8
- Classifier: Programming Language :: Python :: 3
9
- Classifier: Programming Language :: Python :: 3.9
10
- Classifier: Programming Language :: Python :: 3.10
11
- Classifier: Programming Language :: Python :: 3.11
12
- Classifier: Programming Language :: Python :: 3.12
13
- Requires-Dist: av (>=10.0.0)
14
- Requires-Dist: beautifulsoup4 (>=4.0.0,<5.0.0)
15
- Requires-Dist: cloudpickle (>=2.2.1,<3.0.0)
16
- Requires-Dist: ftfy (>=6.2.0,<7.0.0)
17
- Requires-Dist: jinja2 (>=3.1.3,<4.0.0)
18
- Requires-Dist: jmespath (>=1.0.1,<2.0.0)
19
- Requires-Dist: mistune (>=3.0.2,<4.0.0)
20
- Requires-Dist: more-itertools (>=10.2,<11.0)
21
- Requires-Dist: numpy (>=1.25)
22
- Requires-Dist: opencv-python-headless (>=4.7.0.68,<5.0.0.0)
23
- Requires-Dist: pandas (>=2.0,<3.0)
24
- Requires-Dist: pgserver (==0.1.4)
25
- Requires-Dist: pgvector (>=0.2.1,<0.3.0)
26
- Requires-Dist: pillow (>=9.3.0)
27
- Requires-Dist: psutil (>=5.9.5,<6.0.0)
28
- Requires-Dist: psycopg2-binary (>=2.9.5,<3.0.0)
29
- Requires-Dist: pymupdf (>=1.24.1,<2.0.0)
30
- Requires-Dist: pyyaml (>=6.0.1,<7.0.0)
31
- Requires-Dist: requests (>=2.31.0,<3.0.0)
32
- Requires-Dist: setuptools (==69.1.1)
33
- Requires-Dist: sqlalchemy[mypy] (>=2.0.23,<3.0.0)
34
- Requires-Dist: tenacity (>=8.2,<9.0)
35
- Requires-Dist: tqdm (>=4.64)
36
- Description-Content-Type: text/markdown
37
-
38
- <div align="center">
39
- <img src="https://raw.githubusercontent.com/pixeltable/pixeltable/master/docs/release/pixeltable-banner.png" alt="Pixeltable" width="45%" />
40
-
41
- # Unifying Data, Models, and Orchestration for AI Products
42
-
43
- [![License](https://img.shields.io/badge/License-Apache%202.0-darkblue.svg)](https://opensource.org/licenses/Apache-2.0)
44
- ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pixeltable?logo=python&logoColor=white)
45
- [![Platform Support](https://img.shields.io/badge/platform-Linux%20%7C%20macOS%20%7C%20Windows-8A2BE2)]()
46
- [![pytest status](https://github.com/pixeltable/pixeltable/actions/workflows/pytest.yml/badge.svg)](https://github.com/pixeltable/pixeltable/actions)
47
- [![PyPI Package](https://img.shields.io/pypi/v/pixeltable?color=darkorange)](https://pypi.org/project/pixeltable/)
48
-
49
- [Installation](https://pixeltable.github.io/pixeltable/getting-started/) | [Documentation](https://pixeltable.readme.io/) | [API Reference](https://pixeltable.github.io/pixeltable/) | [Code Samples](https://pixeltable.readme.io/recipes) | [Examples](https://github.com/pixeltable/pixeltable/tree/master/docs/release/tutorials)
50
- </div>
51
-
52
- Pixeltable is a Python library that lets AI engineers and data scientists focus on exploration, modeling, and app development without dealing with the customary data plumbing.
53
-
54
- ## What problems does Pixeltable solve?
55
-
56
- Today’s solutions for AI app development require extensive custom coding and infrastructure plumbing. Tracking lineage and versions between and across data transformations, models, and deployment is cumbersome. With Pixeltable you can store, transform, index, and iterate on your data within the same table interface, whether it's text, images, embeddings, or even video. Built-in lineage and versioning ensure transparency and reproducibility, while the development-to-production mirror streamlines deployment.
57
-
58
- ## 💾 Installation
59
-
60
- ```python
61
- %pip install pixeltable
62
- ```
63
-
64
- To verify that it's working:
65
-
66
- ```python
67
- import pixeltable as pxt
68
- pxt.init()
69
- ```
70
- > [!NOTE]
71
- > Check out the [Pixeltable Basics](https://pixeltable.readme.io/docs/pixeltable-basics) tutorial for a tour of its most important features.
72
-
73
- ## 💡 Get Started
74
- Learn how to create tables, populate them with data, and enhance them with built-in or user-defined transformations and AI operations.
75
-
76
- | Topic | Notebook | API |
77
- |:--------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------:|
78
- | Get Started | <a target="_blank" href="https://colab.research.google.com/github/pixeltable/pixeltable/blob/master/docs/release/tutorials/pixeltable-basics.ipynb"> <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/> </a> | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://pixeltable.github.io/pixeltable/api/pixeltable/) |
79
- | User-Defined Functions (UDFs) | <a target="_blank" href="https://colab.research.google.com/github/pixeltable/pixeltable/blob/master/docs/release/howto/udfs-in-pixeltable.ipynb"> <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/> </a> | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://pixeltable.github.io/pixeltable/api/iterators/document-splitter/) |
80
- | Comparing Object Detection Models | <a target="_blank" href="https://colab.research.google.com/github/pixeltable/pixeltable/blob/master/docs/release/tutorials/object-detection-in-videos.ipynb"> <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/> </a> | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://pixeltable.github.io/pixeltable/api-cheat-sheet/#frame-extraction-for-video-data) |
81
- | Experimenting with Chunking (RAG) | <a target="_blank" href="https://colab.research.google.com/github/pixeltable/pixeltable/blob/master/docs/release/tutorials/rag-operations.ipynb"> <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/> | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://pixeltable.github.io/pixeltable/api/iterators/document-splitter/) |
82
- | Working with External Files | <a target="_blank" href="https://colab.research.google.com/github/pixeltable/pixeltable/blob/master/docs/release/howto/working-with-external-files.ipynb"> <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/> </a> | [![API](https://img.shields.io/badge/api-reference-blue.svg)](https://pixeltable.github.io/pixeltable/api-cheat-sheet/#inserting-data-into-a-table) |
83
-
84
- ## ❓ FAQ
85
-
86
- ### What does Pixeltable provide me with? Pixeltable provides:
87
-
88
- - Data storage and versioning
89
- - Combined Data and Model Lineage
90
- - Indexing (e.g. embedding vectors) and Data Retrieval
91
- - Orchestration of multimodal workloads
92
- - Incremental updates
93
- - Code is automatically production-ready
94
-
95
- ### Why should you use Pixeltable?
96
-
97
- - **It gives you transparency and reproducibility**
98
- - All generated data is automatically recorded and versioned
99
- - You will never need to re-run a workload because you lost track of the input data
100
- - **It saves you money**
101
- - All data changes are automatically incremental
102
- - You never need to re-run pipelines from scratch because you’re adding data
103
- - **It integrates with any existing Python code or libraries**
104
- - Bring your ever-changing code and workloads
105
- - You choose the models, tools, and AI practices (e.g., your embedding model for a vector index); Pixeltable orchestrates the data
106
-
107
- ### What is Pixeltable not providing?
108
-
109
- - Pixeltable is not a low-code, prescriptive AI solution. We empower you to use the best frameworks and techniques for your specific needs.
110
- - We do not aim to replace your existing AI toolkit, but rather enhance it by streamlining the underlying data infrastructure and orchestration.
111
-
112
- > [!TIP]
113
- > Check out the [Integrations](https://pixeltable.readme.io/docs/working-with-openai) section, and feel free to submit a request for additional ones.
114
-
115
- ## 📙 Example of Use Cases
116
-
117
- - **Interact with video data at the frame level** without having to think about frame extraction, intermediate file storage, or storage space explosion.
118
- - **Augment your data incrementally and interactively with built-in functions and UDFs**, such as image transformations, model inference, and visualizations, without having to think about data pipelines, incremental updates, or capturing function output.
119
- - **Interact with all the data relevant to your AI application** (video, images, documents, audio, structured data, JSON) through a simple dataframe-style API directly in Python. This includes:
120
- - similarity search on embeddings, supported by high-dimensional vector indexing;
121
- - path expressions and transformations on JSON data;
122
- - PIL and OpenCV image operations;
123
- - assembling frames into videos.
124
- - **Perform keyword and image similarity search at the video frame level** without having to worry about frame storage.
125
- - **Access all Pixeltable-resident data directly as a PyTorch dataset** in your training scripts.
126
- - **Understand the compute and storage costs of your data at the granularity** of individual augmentations and get cost projections before adding new data and new augmentations.
127
- - **Rely on Pixeltable's automatic versioning and snapshot functionality** to protect against regressions and to ensure reproducibility.
128
-
129
- ## 🐛 Contributions & Feedback
130
-
131
- Are you experiencing issues or bugs with Pixeltable? File an [Issue](https://github.com/pixeltable/pixeltable/issues).
132
- </br>Do you want to contribute? Feel free to open a [PR](https://github.com/pixeltable/pixeltable/pulls).
133
-
134
- ## :classical_building: License
135
-
136
- This library is licensed under the Apache 2.0 License.
137
-