pixeltable 0.4.7__py3-none-any.whl → 0.4.9__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.
- pixeltable/__init__.py +1 -1
- pixeltable/catalog/catalog.py +4 -6
- pixeltable/catalog/insertable_table.py +125 -28
- pixeltable/catalog/table.py +51 -15
- pixeltable/catalog/table_version.py +12 -8
- pixeltable/catalog/table_version_path.py +6 -5
- pixeltable/config.py +25 -9
- pixeltable/dataframe.py +3 -3
- pixeltable/env.py +89 -20
- pixeltable/exec/aggregation_node.py +1 -1
- pixeltable/exec/cache_prefetch_node.py +4 -3
- pixeltable/exec/exec_node.py +0 -8
- pixeltable/exec/expr_eval/globals.py +1 -0
- pixeltable/exec/expr_eval/schedulers.py +16 -4
- pixeltable/exec/in_memory_data_node.py +2 -3
- pixeltable/exprs/data_row.py +5 -5
- pixeltable/exprs/function_call.py +59 -21
- pixeltable/exprs/row_builder.py +11 -5
- pixeltable/func/expr_template_function.py +6 -3
- pixeltable/functions/__init__.py +2 -0
- pixeltable/functions/anthropic.py +1 -2
- pixeltable/functions/deepseek.py +5 -1
- pixeltable/functions/gemini.py +11 -2
- pixeltable/functions/huggingface.py +6 -12
- pixeltable/functions/openai.py +2 -1
- pixeltable/functions/video.py +5 -5
- pixeltable/functions/whisperx.py +177 -0
- pixeltable/{ext/functions → functions}/yolox.py +0 -4
- pixeltable/globals.py +16 -3
- pixeltable/io/fiftyone.py +3 -3
- pixeltable/io/label_studio.py +2 -1
- pixeltable/iterators/audio.py +3 -2
- pixeltable/iterators/document.py +0 -6
- pixeltable/metadata/__init__.py +3 -1
- pixeltable/mypy/__init__.py +3 -0
- pixeltable/mypy/mypy_plugin.py +123 -0
- pixeltable/plan.py +0 -16
- pixeltable/share/packager.py +6 -6
- pixeltable/share/publish.py +134 -7
- pixeltable/type_system.py +20 -4
- pixeltable/utils/media_store.py +131 -66
- pixeltable/utils/pydantic.py +60 -0
- {pixeltable-0.4.7.dist-info → pixeltable-0.4.9.dist-info}/METADATA +186 -121
- {pixeltable-0.4.7.dist-info → pixeltable-0.4.9.dist-info}/RECORD +47 -46
- pixeltable/ext/__init__.py +0 -17
- pixeltable/ext/functions/__init__.py +0 -11
- pixeltable/ext/functions/whisperx.py +0 -77
- {pixeltable-0.4.7.dist-info → pixeltable-0.4.9.dist-info}/WHEEL +0 -0
- {pixeltable-0.4.7.dist-info → pixeltable-0.4.9.dist-info}/entry_points.txt +0 -0
- {pixeltable-0.4.7.dist-info → pixeltable-0.4.9.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pixeltable
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.9
|
|
4
4
|
Summary: AI Data Infrastructure: Declarative, Multimodal, and Incremental
|
|
5
5
|
Project-URL: homepage, https://pixeltable.com/
|
|
6
6
|
Project-URL: repository, https://github.com/pixeltable/pixeltable
|
|
@@ -62,14 +62,13 @@ Description-Content-Type: text/markdown
|
|
|
62
62
|
|
|
63
63
|
<h2>Declarative Data Infrastructure for Multimodal AI Apps</h2>
|
|
64
64
|
|
|
65
|
-
Pixeltable is the only Python library providing incremental storage, transformation, indexing, and orchestration of multimodal data.
|
|
66
|
-
|
|
67
65
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
68
66
|

|
|
69
67
|

|
|
70
68
|
<br>
|
|
71
69
|
[](https://github.com/pixeltable/pixeltable/actions/workflows/pytest.yml)
|
|
72
|
-
[](https://github.com/pixeltable/pixeltable/actions/workflows/nightly.yml)
|
|
71
|
+
[](https://github.com/pixeltable/pixeltable/actions/workflows/stress-tests.yml)
|
|
73
72
|
[](https://pypi.org/project/pixeltable/)
|
|
74
73
|
[](https://discord.gg/QPyqFYx2UN)
|
|
75
74
|
|
|
@@ -90,13 +89,19 @@ Pixeltable is the only Python library providing incremental storage, transformat
|
|
|
90
89
|
pip install pixeltable
|
|
91
90
|
```
|
|
92
91
|
|
|
93
|
-
**Pixeltable unifies
|
|
92
|
+
**Pixeltable unifies storage, retrieval, and orchestration for multimodal data.**
|
|
93
|
+
It stores metadata and computed results persistently, typically in a `.pixeltable` directory in your workspace.
|
|
94
|
+
|
|
95
|
+
## Pixeltable Demo
|
|
94
96
|
|
|
95
97
|
https://github.com/user-attachments/assets/b50fd6df-5169-4881-9dbe-1b6e5d06cede
|
|
96
98
|
|
|
97
99
|
## Quick Start
|
|
98
100
|
|
|
99
|
-
With Pixeltable, you define your *entire* data processing and AI workflow declaratively using
|
|
101
|
+
With Pixeltable, you define your *entire* data processing and AI workflow declaratively using
|
|
102
|
+
**[computed columns](https://docs.pixeltable.com/docs/datastore/computed-columns)** on
|
|
103
|
+
**[tables](https://docs.pixeltable.com/docs/datastore/tables-and-operations)**.
|
|
104
|
+
Focus on your application logic, not the data plumbing.
|
|
100
105
|
|
|
101
106
|
```python
|
|
102
107
|
|
|
@@ -115,7 +120,7 @@ from pixeltable.functions import huggingface
|
|
|
115
120
|
# Object detection with automatic model management
|
|
116
121
|
t.add_computed_column(
|
|
117
122
|
detections=huggingface.detr_for_object_detection(
|
|
118
|
-
t.input_image,
|
|
123
|
+
t.input_image,
|
|
119
124
|
model_id='facebook/detr-resnet-50'
|
|
120
125
|
)
|
|
121
126
|
)
|
|
@@ -124,7 +129,7 @@ t.add_computed_column(
|
|
|
124
129
|
t.add_computed_column(detections_text=t.detections.label_text)
|
|
125
130
|
|
|
126
131
|
# OpenAI Vision API integration with built-in rate limiting and async managemennt
|
|
127
|
-
from pixeltable.functions import openai
|
|
132
|
+
from pixeltable.functions import openai
|
|
128
133
|
|
|
129
134
|
t.add_computed_column(
|
|
130
135
|
vision=openai.vision(
|
|
@@ -134,10 +139,12 @@ t.add_computed_column(
|
|
|
134
139
|
)
|
|
135
140
|
)
|
|
136
141
|
|
|
137
|
-
# Insert data
|
|
142
|
+
# Insert data directly from an external URL
|
|
143
|
+
# Automatically triggers computation of all computed columns
|
|
138
144
|
t.insert(input_image='https://raw.github.com/pixeltable/pixeltable/release/docs/resources/images/000000000025.jpg')
|
|
139
145
|
|
|
140
146
|
# Query - All data, metadata, and computed results are persistently stored
|
|
147
|
+
# Structured and unstructured data are returned side-by-side
|
|
141
148
|
results = t.select(
|
|
142
149
|
t.input_image,
|
|
143
150
|
t.detections_text,
|
|
@@ -147,111 +154,163 @@ results = t.select(
|
|
|
147
154
|
|
|
148
155
|
## ✨ What Happened?
|
|
149
156
|
|
|
150
|
-
*
|
|
151
|
-
|
|
152
|
-
*
|
|
153
|
-
|
|
154
|
-
*
|
|
155
|
-
|
|
157
|
+
* **Data Ingestion & Storage:** References [files](https://docs.pixeltable.com/docs/datastore/bringing-data)
|
|
158
|
+
(images, videos, audio, docs) in place, handles structured data.
|
|
159
|
+
* **Transformation & Processing:** Applies *any* Python function ([UDFs](https://docs.pixeltable.com/docs/datastore/custom-functions))
|
|
160
|
+
or built-in operations ([chunking, frame extraction](https://docs.pixeltable.com/docs/datastore/iterators)) automatically.
|
|
161
|
+
* **AI Model Integration:** Runs inference ([embeddings](https://docs.pixeltable.com/docs/datastore/embedding-index),
|
|
162
|
+
[object detection](https://docs.pixeltable.com/docs/examples/vision/yolox),
|
|
163
|
+
[LLMs](https://docs.pixeltable.com/docs/integrations/frameworks#cloud-llm-providers)) as part of the data pipeline.
|
|
164
|
+
* **Indexing & Retrieval:** Creates and manages vector indexes for fast
|
|
165
|
+
[semantic search](https://docs.pixeltable.com/docs/datastore/embedding-index#phase-3%3A-query)
|
|
166
|
+
alongside traditional filtering.
|
|
167
|
+
* **Incremental Computation:** Only [recomputes](https://docs.pixeltable.com/docs/overview/quick-start) what's
|
|
168
|
+
necessary when data or code changes, saving time and cost.
|
|
169
|
+
* **Versioning & Lineage:** Automatically tracks data and schema changes for reproducibility. See below for an example
|
|
170
|
+
that uses "time travel" to query an older version of a table.
|
|
171
|
+
|
|
172
|
+
Pixeltable can ingest data from local storage or directly from a URL. When external media files are referenced by URL,
|
|
173
|
+
as in the `insert` statement above, Pixeltable caches them locally before processing. See the
|
|
174
|
+
[Working with External Files](https://github.com/pixeltable/pixeltable/blob/main/docs/notebooks/feature-guides/working-with-external-files.ipynb)
|
|
175
|
+
notebook for more details.
|
|
176
|
+
|
|
177
|
+
## 🗄️ Where Did My Data Go?
|
|
178
|
+
|
|
179
|
+
Pixeltable workloads generate various outputs, including both structured outputs (such as bounding boxes for detected
|
|
180
|
+
objects) and/or unstructured outputs (such as generated images or video). By default, everything resides in your
|
|
181
|
+
Pixeltable user directory at `~/.pixeltable`. Structured data is stored in a Postgres instance in `~/.pixeltable`.
|
|
182
|
+
Generated media (images, video, audio, documents) are stored outside the Postgres database, in separate flat files in
|
|
183
|
+
`~/.pixeltable/media`. Those media files are referenced by URL in the database, and Pixeltable provides the "glue" for
|
|
184
|
+
a unified table interface over both structured and unstructured data.
|
|
185
|
+
|
|
186
|
+
In general, the user is not expected to interact directly with the data in `~/.pixeltable`; the data store is fully
|
|
187
|
+
managed by Pixeltable and is intended to be accessed through the Pixeltable Python SDK.
|
|
188
|
+
|
|
189
|
+
## ⚖️ Key Principles
|
|
156
190
|
|
|
157
|
-
**
|
|
191
|
+
* **[Unified Multimodal Interface:](https://docs.pixeltable.com/docs/datastore/tables-and-operations)** `pxt.Image`,
|
|
192
|
+
`pxt.Video`, `pxt.Audio`, `pxt.Document`, etc. – manage diverse data consistently.
|
|
158
193
|
|
|
194
|
+
```python
|
|
195
|
+
t = pxt.create_table(
|
|
196
|
+
'media',
|
|
197
|
+
{
|
|
198
|
+
'img': pxt.Image,
|
|
199
|
+
'video': pxt.Video
|
|
200
|
+
}
|
|
201
|
+
)
|
|
202
|
+
```
|
|
159
203
|
|
|
160
|
-
|
|
204
|
+
* **[Declarative Computed Columns:](https://docs.pixeltable.com/docs/datastore/computed-columns)** Define processing
|
|
205
|
+
steps once; they run automatically on new/updated data.
|
|
206
|
+
|
|
207
|
+
```python
|
|
208
|
+
t.add_computed_column(
|
|
209
|
+
classification=huggingface.vit_for_image_classification(
|
|
210
|
+
t.image
|
|
211
|
+
)
|
|
212
|
+
)
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
* **[Built-in Vector Search:](https://docs.pixeltable.com/docs/datastore/embedding-index)** Add embedding indexes and
|
|
216
|
+
perform similarity searches directly on tables/views.
|
|
217
|
+
|
|
218
|
+
```python
|
|
219
|
+
t.add_embedding_index(
|
|
220
|
+
'img',
|
|
221
|
+
embedding=clip.using(
|
|
222
|
+
model_id='openai/clip-vit-base-patch32'
|
|
223
|
+
)
|
|
224
|
+
)
|
|
225
|
+
|
|
226
|
+
sim = t.img.similarity("cat playing with yarn")
|
|
227
|
+
```
|
|
161
228
|
|
|
162
|
-
* **[
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
'
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
* **[Declarative Computed Columns:](https://docs.pixeltable.com/docs/datastore/computed-columns)** Define processing steps once; they run automatically on new/updated data.
|
|
174
|
-
```python
|
|
175
|
-
t.add_computed_column(
|
|
176
|
-
classification=huggingface.vit_for_image_classification(
|
|
177
|
-
t.image
|
|
229
|
+
* **[On-the-Fly Data Views:](https://docs.pixeltable.com/docs/datastore/views)** Create virtual tables using iterators
|
|
230
|
+
for efficient processing without data duplication.
|
|
231
|
+
|
|
232
|
+
```python
|
|
233
|
+
frames = pxt.create_view(
|
|
234
|
+
'frames',
|
|
235
|
+
videos,
|
|
236
|
+
iterator=FrameIterator.create(
|
|
237
|
+
video=videos.video,
|
|
238
|
+
fps=1
|
|
239
|
+
)
|
|
178
240
|
)
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
* **[Seamless AI Integration:](https://docs.pixeltable.com/docs/integrations/frameworks)** Built-in functions for
|
|
244
|
+
OpenAI, Anthropic, Hugging Face, CLIP, YOLOX, and more.
|
|
245
|
+
|
|
246
|
+
```python
|
|
247
|
+
t.add_computed_column(
|
|
248
|
+
response=openai.chat_completions(
|
|
249
|
+
messages=[{"role": "user", "content": t.prompt}]
|
|
250
|
+
)
|
|
188
251
|
)
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
* **[Bring Your Own Code:](https://docs.pixeltable.com/docs/datastore/custom-functions)** Extend Pixeltable with simple
|
|
255
|
+
Python User-Defined Functions.
|
|
256
|
+
|
|
257
|
+
```python
|
|
258
|
+
@pxt.udf
|
|
259
|
+
def format_prompt(context: list, question: str) -> str:
|
|
260
|
+
return f"Context: {context}\nQuestion: {question}"
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
* **[Agentic Workflows / Tool Calling:](https://docs.pixeltable.com/docs/examples/chat/tools)** Register `@pxt.udf` or
|
|
264
|
+
`@pxt.query` functions as tools and orchestrate LLM-based tool use (incl. multimodal).
|
|
265
|
+
|
|
266
|
+
```python
|
|
267
|
+
# Example tools: a UDF and a Query function for RAG
|
|
268
|
+
tools = pxt.tools(get_weather_udf, search_context_query)
|
|
269
|
+
|
|
270
|
+
# LLM decides which tool to call; Pixeltable executes it
|
|
271
|
+
t.add_computed_column(
|
|
272
|
+
tool_output=invoke_tools(tools, t.llm_tool_choice)
|
|
202
273
|
)
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
274
|
+
```
|
|
275
|
+
|
|
276
|
+
* **[Data Persistence:](https://docs.pixeltable.com/docs/datastore/tables-and-operations#data-operations)** All data,
|
|
277
|
+
metadata, and computed results are automatically stored and versioned.
|
|
278
|
+
|
|
279
|
+
```python
|
|
280
|
+
t = pxt.get_table('my_table') # Get a handle to an existing table
|
|
281
|
+
t.select(t.account, t.balance).collect() # Query its contents
|
|
282
|
+
t.revert() # Undo the last modification to the table and restore its previous state
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
* **[Time Travel:](https://docs.pixeltable.com/docs/datastore/tables-and-operations#data-operations)** By default,
|
|
286
|
+
Pixeltable preserves the full change history of each table, and any prior version can be selected and queried.
|
|
287
|
+
|
|
288
|
+
```python
|
|
289
|
+
t.history() # Display a human-readable list of all prior versions of the table
|
|
290
|
+
old_version = pxt.get_table('my_table:472') # Get a handle to a specific table version
|
|
291
|
+
old_version.select(t.account, t.balance).collect() # Query the older version
|
|
292
|
+
```
|
|
293
|
+
|
|
294
|
+
* **[SQL-like Python Querying:](https://docs.pixeltable.com/docs/datastore/filtering-and-selecting)** Familiar syntax
|
|
295
|
+
combined with powerful AI capabilities.
|
|
296
|
+
|
|
297
|
+
```python
|
|
298
|
+
results = (
|
|
299
|
+
t.where(t.score > 0.8)
|
|
300
|
+
.order_by(t.timestamp)
|
|
301
|
+
.select(t.image, score=t.score)
|
|
302
|
+
.limit(10)
|
|
303
|
+
.collect()
|
|
211
304
|
)
|
|
212
|
-
|
|
213
|
-
```
|
|
214
|
-
|
|
215
|
-
* **[Bring Your Own Code:](https://docs.pixeltable.com/docs/datastore/custom-functions)** Extend Pixeltable with simple Python User-Defined Functions.
|
|
216
|
-
```python
|
|
217
|
-
@pxt.udf
|
|
218
|
-
def format_prompt(context: list, question: str) -> str:
|
|
219
|
-
return f"Context: {context}\nQuestion: {question}"
|
|
220
|
-
```
|
|
221
|
-
|
|
222
|
-
* **[Agentic Workflows / Tool Calling:](https://docs.pixeltable.com/docs/examples/chat/tools)** Register `@pxt.udf` or `@pxt.query` functions as tools and orchestrate LLM-based tool use (incl. multimodal).
|
|
223
|
-
```python
|
|
224
|
-
# Example tools: a UDF and a Query function for RAG
|
|
225
|
-
tools = pxt.tools(get_weather_udf, search_context_query)
|
|
226
|
-
|
|
227
|
-
# LLM decides which tool to call; Pixeltable executes it
|
|
228
|
-
t.add_computed_column(
|
|
229
|
-
tool_output=invoke_tools(tools, t.llm_tool_choice)
|
|
230
|
-
)
|
|
231
|
-
```
|
|
232
|
-
|
|
233
|
-
* **[Persistent & Versioned:](https://docs.pixeltable.com/docs/datastore/tables-and-operations#data-operations)** All data, metadata, and computed results are automatically stored.
|
|
234
|
-
```python
|
|
235
|
-
t.revert() # Revert to a previous version
|
|
236
|
-
stored_table = pxt.get_table('my_existing_table') # Retrieve persisted table
|
|
237
|
-
```
|
|
238
|
-
|
|
239
|
-
* **[SQL-like Python Querying:](https://docs.pixeltable.com/docs/datastore/filtering-and-selecting)** Familiar syntax combined with powerful AI capabilities.
|
|
240
|
-
```python
|
|
241
|
-
results = (
|
|
242
|
-
t.where(t.score > 0.8)
|
|
243
|
-
.order_by(t.timestamp)
|
|
244
|
-
.select(t.image, score=t.score)
|
|
245
|
-
.limit(10)
|
|
246
|
-
.collect()
|
|
247
|
-
)
|
|
248
|
-
```
|
|
305
|
+
```
|
|
249
306
|
|
|
250
307
|
## 💡 Key Examples
|
|
251
308
|
|
|
252
|
-
*(See the [Full Quick Start](https://docs.pixeltable.com/docs/overview/quick-start) or
|
|
309
|
+
*(See the [Full Quick Start](https://docs.pixeltable.com/docs/overview/quick-start) or
|
|
310
|
+
[Notebook Gallery](#-notebook-gallery) for more details)*
|
|
253
311
|
|
|
254
312
|
**1. Multimodal Data Store and Data Transformation (Computed Column):**
|
|
313
|
+
|
|
255
314
|
```bash
|
|
256
315
|
pip install pixeltable
|
|
257
316
|
```
|
|
@@ -261,14 +320,14 @@ import pixeltable as pxt
|
|
|
261
320
|
|
|
262
321
|
# Create a table
|
|
263
322
|
t = pxt.create_table(
|
|
264
|
-
'films',
|
|
265
|
-
{'name': pxt.String, 'revenue': pxt.Float, 'budget': pxt.Float},
|
|
323
|
+
'films',
|
|
324
|
+
{'name': pxt.String, 'revenue': pxt.Float, 'budget': pxt.Float},
|
|
266
325
|
if_exists="replace"
|
|
267
326
|
)
|
|
268
327
|
|
|
269
328
|
t.insert([
|
|
270
|
-
|
|
271
|
-
|
|
329
|
+
{'name': 'Inside Out', 'revenue': 800.5, 'budget': 200.0},
|
|
330
|
+
{'name': 'Toy Story', 'revenue': 1073.4, 'budget': 200.0}
|
|
272
331
|
])
|
|
273
332
|
|
|
274
333
|
# Add a computed column for profit - runs automatically!
|
|
@@ -410,13 +469,13 @@ qa.add_computed_column(context=get_relevant_context(qa.prompt))
|
|
|
410
469
|
qa.add_computed_column(
|
|
411
470
|
final_prompt=pxtf.string.format(
|
|
412
471
|
"""
|
|
413
|
-
PASSAGES:
|
|
472
|
+
PASSAGES:
|
|
414
473
|
{0}
|
|
415
|
-
|
|
416
|
-
QUESTION:
|
|
474
|
+
|
|
475
|
+
QUESTION:
|
|
417
476
|
{1}
|
|
418
|
-
""",
|
|
419
|
-
qa.context,
|
|
477
|
+
""",
|
|
478
|
+
qa.context,
|
|
420
479
|
qa.prompt
|
|
421
480
|
)
|
|
422
481
|
)
|
|
@@ -457,28 +516,34 @@ Explore Pixeltable's capabilities interactively:
|
|
|
457
516
|
|
|
458
517
|
## 🚨 Maintaining Production-Ready Multimodal AI Apps is Still Too Hard
|
|
459
518
|
|
|
460
|
-
Building robust AI applications, especially [multimodal](https://docs.pixeltable.com/docs/datastore/bringing-data) ones,
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
*
|
|
464
|
-
*
|
|
465
|
-
*
|
|
466
|
-
*
|
|
519
|
+
Building robust AI applications, especially [multimodal](https://docs.pixeltable.com/docs/datastore/bringing-data) ones,
|
|
520
|
+
requires stitching together numerous tools:
|
|
521
|
+
|
|
522
|
+
* ETL pipelines for data loading and transformation.
|
|
523
|
+
* Vector databases for semantic search.
|
|
524
|
+
* Feature stores for ML models.
|
|
525
|
+
* Orchestrators for scheduling.
|
|
526
|
+
* Model serving infrastructure for inference.
|
|
527
|
+
* Separate systems for parallelization, caching, versioning, and lineage tracking.
|
|
467
528
|
|
|
468
529
|
This complex "data plumbing" slows down development, increases costs, and makes applications brittle and hard to reproduce.
|
|
469
530
|
|
|
470
531
|
## 🔮 Roadmap (2025)
|
|
471
532
|
|
|
472
533
|
### Cloud Infrastructure and Deployment
|
|
534
|
+
|
|
473
535
|
We're working on a hosted Pixeltable service that will:
|
|
474
536
|
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
537
|
+
* Enable Multimodal Data Sharing of Pixeltable Tables and Views | [Waitlist](https://www.pixeltable.com/waitlist)
|
|
538
|
+
* Provide a persistent cloud instance
|
|
539
|
+
* Turn Pixeltable workflows (Tables, Queries, UDFs) into API endpoints/[MCP Servers](https://github.com/pixeltable/pixeltable-mcp-server)
|
|
478
540
|
|
|
479
541
|
## 🤝 Contributing
|
|
480
542
|
|
|
481
|
-
We love contributions! Whether it's reporting bugs, suggesting features, improving documentation, or submitting code
|
|
543
|
+
We love contributions! Whether it's reporting bugs, suggesting features, improving documentation, or submitting code
|
|
544
|
+
changes, please check out our [Contributing Guide](CONTRIBUTING.md) and join the
|
|
545
|
+
[Discussions](https://github.com/pixeltable/pixeltable/discussions) or our
|
|
546
|
+
[Discord Server](https://discord.gg/QPyqFYx2UN).
|
|
482
547
|
|
|
483
548
|
## 🏢 License
|
|
484
549
|
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
pixeltable/__init__.py,sha256=
|
|
1
|
+
pixeltable/__init__.py,sha256=wJ_4oQdkBAaaVKM8XiZKKSsWPnoemZxh34o6_5vDcxk,1562
|
|
2
2
|
pixeltable/__version__.py,sha256=LnMIuAxx6nAQDMev_jnZyUdgsaiE3F8lulfXQBRl9qQ,112
|
|
3
|
-
pixeltable/config.py,sha256
|
|
4
|
-
pixeltable/dataframe.py,sha256=
|
|
5
|
-
pixeltable/env.py,sha256=
|
|
3
|
+
pixeltable/config.py,sha256=-aoSVF0Aak83IC-u-XANw3if76TDq5VnnWNWoFDR5Hc,8390
|
|
4
|
+
pixeltable/dataframe.py,sha256=I6iEJGD4pivUN-cPVFq_rcniZN7C55xpr37sMJ2BIdE,62986
|
|
5
|
+
pixeltable/env.py,sha256=EZXZPx-OKNo-QqOik1tZyJKSK0brM_b3p2r9ksS6JJs,42964
|
|
6
6
|
pixeltable/exceptions.py,sha256=Gm8d3TL2iiv6Pj2DLd29wp_j41qNBhxXL9iTQnL4Nk4,1116
|
|
7
|
-
pixeltable/globals.py,sha256=
|
|
8
|
-
pixeltable/plan.py,sha256=
|
|
7
|
+
pixeltable/globals.py,sha256=8NijkEmtjY5me6J8zF4G-t1v5_z4q7btOK2yjUREUak,39118
|
|
8
|
+
pixeltable/plan.py,sha256=4yAe7ExAqaSvkFxwK7LPH_HpmoumwqoLeOo7czJ8CyQ,48001
|
|
9
9
|
pixeltable/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
10
|
pixeltable/store.py,sha256=CneWUmgN-EwaPYLcizlAxONC7WYwMr8SNpSFeNBBmOA,22885
|
|
11
|
-
pixeltable/type_system.py,sha256=
|
|
11
|
+
pixeltable/type_system.py,sha256=UfPZZy4zJ2kGvdHXI9rqxOGAjgIxCZ9QGvvidPWcq-M,56153
|
|
12
12
|
pixeltable/catalog/__init__.py,sha256=zw6hiyAIjMBxCExtsr7G51ul2XQ9fTQQKcs45rIy7xA,682
|
|
13
|
-
pixeltable/catalog/catalog.py,sha256=
|
|
13
|
+
pixeltable/catalog/catalog.py,sha256=gaq10XFwkr6jyv8yVi5xV3_oiDkPvqVe55vxOo14W6k,93853
|
|
14
14
|
pixeltable/catalog/column.py,sha256=MXa5o3ku94T8ZFEL7wnAvqvlk65fOmmHPqIvrUVf3uo,13514
|
|
15
15
|
pixeltable/catalog/dir.py,sha256=VYTscPlKR6XhupPTXlJ8txAHxS5GSpPJ3LIleDJagVQ,2047
|
|
16
16
|
pixeltable/catalog/globals.py,sha256=uMIDsbeDzFxZbcgKDTOiT5plC1gAKgz1oxxdh1odIPw,2648
|
|
17
|
-
pixeltable/catalog/insertable_table.py,sha256=
|
|
17
|
+
pixeltable/catalog/insertable_table.py,sha256=VUuJ8z7OtMqgy_LMzkn1KzeLXdR-9poTttClscQ_uaU,13899
|
|
18
18
|
pixeltable/catalog/named_function.py,sha256=vZ-j7P4HugWh9OmUzBMwyRYvO3tQn9jWyJz_1stPavU,1210
|
|
19
19
|
pixeltable/catalog/path.py,sha256=O3FfxrvyX2crijBhp_2k4-3mG3BFxwba-tlPB74QtJQ,3780
|
|
20
20
|
pixeltable/catalog/schema_object.py,sha256=rQ6-3rzqnOHyEEHi97kai2S7BO3D9AkH7rirnfbGc14,1785
|
|
21
|
-
pixeltable/catalog/table.py,sha256=
|
|
22
|
-
pixeltable/catalog/table_version.py,sha256=
|
|
21
|
+
pixeltable/catalog/table.py,sha256=NLo8mcM8SKM8jC4uzRT5elhrC0XTGunjQYznqrCz3w0,81315
|
|
22
|
+
pixeltable/catalog/table_version.py,sha256=jTYKzAdQuHBrknQLADBqjLhKwwqeVxmAPosMKsL051Q,64983
|
|
23
23
|
pixeltable/catalog/table_version_handle.py,sha256=FTPRqcGY-h-POcWyZbd9b8P2D5zIw5OSUvwF_dbyCGo,3608
|
|
24
|
-
pixeltable/catalog/table_version_path.py,sha256=
|
|
24
|
+
pixeltable/catalog/table_version_path.py,sha256=IaFVDH06_6ZMuBv5eLNCRTlWizpvz95jgAzqp4OVx_o,9713
|
|
25
25
|
pixeltable/catalog/tbl_ops.py,sha256=Vdcz4Nzvdw09zcQaCEaOr9Uufk2rQHgG0vBvMbQp9R8,1145
|
|
26
26
|
pixeltable/catalog/update_status.py,sha256=tF3KkDc6kvEQ7Tg3VMj-n774uKi1iLla61wLyeuwDRs,6888
|
|
27
27
|
pixeltable/catalog/view.py,sha256=VSBy_8eO76X1ZFtT8T6syjksb-gtcNA-XPMGndRdBy0,15179
|
|
28
28
|
pixeltable/exec/__init__.py,sha256=hQvj4ra4ubxu94qyuCBTHKsuYGzundkTTluOTIb5Bx8,524
|
|
29
|
-
pixeltable/exec/aggregation_node.py,sha256=
|
|
30
|
-
pixeltable/exec/cache_prefetch_node.py,sha256=
|
|
29
|
+
pixeltable/exec/aggregation_node.py,sha256=CTMR_p1_TGE-iVUP3jLvlmp5rssjukCKCRv3SjMCOo0,4502
|
|
30
|
+
pixeltable/exec/cache_prefetch_node.py,sha256=tTFjDKnhWVWA5cVhm44afNp65cyKWIOO3wBU7fd69UM,11905
|
|
31
31
|
pixeltable/exec/component_iteration_node.py,sha256=7k8Wfzjc15SO0V8rc-zYTiB3DQ-euMtNQIOsve_FY7I,4797
|
|
32
32
|
pixeltable/exec/data_row_batch.py,sha256=kqSM33A3w8nEzUsBJ-sz3DFVfQYibz57djdm_ZYvBnk,1737
|
|
33
33
|
pixeltable/exec/exec_context.py,sha256=jKeLStfkjwCKKAooC-7a7qZUnZU5O0_JQhanhVerV9c,984
|
|
34
|
-
pixeltable/exec/exec_node.py,sha256=
|
|
35
|
-
pixeltable/exec/in_memory_data_node.py,sha256=
|
|
34
|
+
pixeltable/exec/exec_node.py,sha256=auRbL43-NR2G0rnjs8aK4Q2qAV3IeKDNqduVnoO-2AY,3315
|
|
35
|
+
pixeltable/exec/in_memory_data_node.py,sha256=fp8sE5TH1DJSaxKb5BVTjNVW1Nmzh2ysCjMJMLaNSus,3513
|
|
36
36
|
pixeltable/exec/row_update_node.py,sha256=zU0eSyn81-vRrjAMOadRqU8luTshnPUtIbS7npyLBKY,2798
|
|
37
37
|
pixeltable/exec/sql_node.py,sha256=EHZNvbkzECJUgCQtqFjC1yGr6PkSYZXM3wPlAGcGuAI,27436
|
|
38
38
|
pixeltable/exec/expr_eval/__init__.py,sha256=sQThSEByK_DLfB-_-18RFhpARx49cSXYEkpCDyi0vQI,61
|
|
39
39
|
pixeltable/exec/expr_eval/evaluators.py,sha256=-6s_y29Wh8p35SVKkXtnA0NkzcHVw1Z8PgHGiFrMsqs,17135
|
|
40
40
|
pixeltable/exec/expr_eval/expr_eval_node.py,sha256=JIbyo61yTr4RUMyXbTFkMb88h4JWsdRjieBy9VikWTE,18919
|
|
41
|
-
pixeltable/exec/expr_eval/globals.py,sha256=
|
|
41
|
+
pixeltable/exec/expr_eval/globals.py,sha256=FL9DwFub1fc8ppzzTdrQytBwylyDkH4mIwciWnIGBcc,7816
|
|
42
42
|
pixeltable/exec/expr_eval/row_buffer.py,sha256=YY0thdlMNNReEOTyPp36xKPeMeXSZ0VrI9bJsXgo7sU,2744
|
|
43
|
-
pixeltable/exec/expr_eval/schedulers.py,sha256=
|
|
43
|
+
pixeltable/exec/expr_eval/schedulers.py,sha256=pNTHiwL8omHa_kodv61gynBHFbJnSg5CktvezrO_yc8,24337
|
|
44
44
|
pixeltable/exprs/__init__.py,sha256=AxSMjKNavCT9F6vBaNR-nwX2iupAI5hbMb5hEj65Tfk,1096
|
|
45
45
|
pixeltable/exprs/arithmetic_expr.py,sha256=sZPao0qdFWbrDx0eiAVxw1wGHJXZ5ZoCpQaScysBldE,7333
|
|
46
46
|
pixeltable/exprs/array_slice.py,sha256=C8O0cmGHdc-iVe2FFdW_2jRVR4Gwurzeot6ESEk6RTA,2167
|
|
@@ -48,11 +48,11 @@ pixeltable/exprs/column_property_ref.py,sha256=rq8VD34fZwAZuN9wIqQEwVay7LTPBKvXX
|
|
|
48
48
|
pixeltable/exprs/column_ref.py,sha256=MH83bYsef5UC4vWU71PE-lPiVd8hVw4tT6sjdCCvWNw,15473
|
|
49
49
|
pixeltable/exprs/comparison.py,sha256=lgaRx000ZaNH10A4hrtsi5XoZKE-CNEONGMi7jxJfcM,5133
|
|
50
50
|
pixeltable/exprs/compound_predicate.py,sha256=vJVRVueAmaKnjiHCLWyh8wHgktzzK0DVqbOIQJgTjF8,3801
|
|
51
|
-
pixeltable/exprs/data_row.py,sha256=
|
|
51
|
+
pixeltable/exprs/data_row.py,sha256=Pi7oIh3YJ7lh0loeGgIGm9uRhCvOcD8wJNdatHpBMKw,12417
|
|
52
52
|
pixeltable/exprs/expr.py,sha256=T558PJBeVaHCGgv_TBDUIn-fOZJtSMkz26jGUTpvCVY,35961
|
|
53
53
|
pixeltable/exprs/expr_dict.py,sha256=2ZeZ0eACx3VrRNEOjipuT5WxOIzjXQ_DSip8NTH0KRo,1584
|
|
54
54
|
pixeltable/exprs/expr_set.py,sha256=OlRTbHAAYH2fOEs1HE-8DIu7Z247xVfoT_9Y58GZoOQ,2559
|
|
55
|
-
pixeltable/exprs/function_call.py,sha256=
|
|
55
|
+
pixeltable/exprs/function_call.py,sha256=aVDLIggWU-9_zt8-lM2hAzgWkkuu-zVRbVpZinZTEWg,24311
|
|
56
56
|
pixeltable/exprs/globals.py,sha256=33fq5Ec15z_SkIqz9ILICx18wuGAazpFDUkc_Ppl03c,2288
|
|
57
57
|
pixeltable/exprs/in_predicate.py,sha256=u98JmBX9XsglKe5uCy1NUMnyi3wioBri_tue2vI9_sk,3799
|
|
58
58
|
pixeltable/exprs/inline_expr.py,sha256=XYVKKXZN9BtHN5qlvZna-mgdOlot6WcmPu5usRBYei0,7972
|
|
@@ -62,21 +62,17 @@ pixeltable/exprs/json_path.py,sha256=XgVhxeJEa9a48Dg2FgzE0CH4N1Qk2ZCaTJC9UOui3lo
|
|
|
62
62
|
pixeltable/exprs/literal.py,sha256=OCJL_pw_WKqx3bXMEwL6yNaKVAKDtGRzSZUFwucRxZI,4860
|
|
63
63
|
pixeltable/exprs/method_ref.py,sha256=NNhJTGo7luZLh8EJdFIZAax9LiiqqDCEK1AwPmHip0w,2642
|
|
64
64
|
pixeltable/exprs/object_ref.py,sha256=idYFcT27jv0BjtJT3paL37xDrZZc35_3eCJyQOIqdZU,1999
|
|
65
|
-
pixeltable/exprs/row_builder.py,sha256=
|
|
65
|
+
pixeltable/exprs/row_builder.py,sha256=GfHPSSNKxHP3puYioKwiwR-2PMa5eYvw1HHwgQIarPQ,23241
|
|
66
66
|
pixeltable/exprs/rowid_ref.py,sha256=8MvQs3Uu01Gz__WXw9BCJv0CHrSaFDuQtU7rUr1AWEk,5008
|
|
67
67
|
pixeltable/exprs/similarity_expr.py,sha256=i0UUnMSKKGXd3Uksu6FU2NvkfG0qzfzfi-GPy-LdutM,3688
|
|
68
68
|
pixeltable/exprs/sql_element_cache.py,sha256=c7Q6vFK4xnf9vmcRYnXiAcwPBBwmw0dolftM4BwDO8c,1359
|
|
69
69
|
pixeltable/exprs/string_op.py,sha256=PGWRH1yUaqj7xszdumIBOTHzVkXE0k831jXxIeFPDog,4131
|
|
70
70
|
pixeltable/exprs/type_cast.py,sha256=_nDzTxg5kXVGLewI0FrH2zmwJzgptdxYd5Jvuyig0UI,2322
|
|
71
71
|
pixeltable/exprs/variable.py,sha256=UwWwaNECbtwyC8v0g8iqCa3a6mO8z9lK7ta5NrlCwvs,1493
|
|
72
|
-
pixeltable/ext/__init__.py,sha256=UgDXWzGWiQIrwOuEvWTePLBcR2kecllPAE7gp-42Awg,457
|
|
73
|
-
pixeltable/ext/functions/__init__.py,sha256=Ox3kUHn5IslVEmEKsjrHfkHDrUkmLl9RCO2YkrPJkgc,193
|
|
74
|
-
pixeltable/ext/functions/whisperx.py,sha256=qda6kFQSvZTY2asfrYPwHb1cvSa03LbhJ-Wf9b7qPhw,2355
|
|
75
|
-
pixeltable/ext/functions/yolox.py,sha256=dX22nMb-0n2hZi7WhZ1Y4LIpFk5loyeXXuSUcc2Fgrg,3724
|
|
76
72
|
pixeltable/func/__init__.py,sha256=SQPtGr_9dZNyXzxaZQcP3oVLKnbbs4UqV6sg8XUQHxQ,535
|
|
77
73
|
pixeltable/func/aggregate_function.py,sha256=5_MgqHAlMaacX2sPIHv_auTvYXtqR5MIZy_WqYQSdho,13264
|
|
78
74
|
pixeltable/func/callable_function.py,sha256=g_pA-g631YcFGLix9PpHYfgjOeS2qF0Csm1VxX8fah0,9278
|
|
79
|
-
pixeltable/func/expr_template_function.py,sha256=
|
|
75
|
+
pixeltable/func/expr_template_function.py,sha256=S3GXrbeAyefCJ3n00VMbC2kqnBKI_MxUC7rf61wkJLE,5867
|
|
80
76
|
pixeltable/func/function.py,sha256=3nSXRdGFGi471x7_TMVdSgXs1SQuLv4HaUJA7NLhv_M,23140
|
|
81
77
|
pixeltable/func/function_registry.py,sha256=7AQ1bdF2DJbTRn9xx6s5cC_VHtCBXGt_GyJJEjJHcMw,12308
|
|
82
78
|
pixeltable/func/globals.py,sha256=5Wo4GPxYgHRRk5nvV0h_lAthKSalxKvj5n1p-uMPR0U,1501
|
|
@@ -85,32 +81,34 @@ pixeltable/func/query_template_function.py,sha256=aX6GgANSdDTQwrObEV-B_la_oVRVky
|
|
|
85
81
|
pixeltable/func/signature.py,sha256=LdHbdim14Zu7Xt1pMhOCzl6Xn2fq5CQQpwSXmu28umw,14988
|
|
86
82
|
pixeltable/func/tools.py,sha256=2_M_u0Jiy5-uToZziB4O54aTuJeaytPmh71q3I2ydNw,6062
|
|
87
83
|
pixeltable/func/udf.py,sha256=6tKpMt37t3BmXwRyA5fFAd6OM4D5EPEd2KuAr7DQhr0,13231
|
|
88
|
-
pixeltable/functions/__init__.py,sha256=
|
|
89
|
-
pixeltable/functions/anthropic.py,sha256=
|
|
84
|
+
pixeltable/functions/__init__.py,sha256=ZeRB7ksbzjdrvePXtd_mNxyP2RhjvN0ayl5nv7TdWcQ,613
|
|
85
|
+
pixeltable/functions/anthropic.py,sha256=2Ja-pryC_3Yd1sXW-pibRuvKjgyfYqOhhl6nBWNOBt0,10504
|
|
90
86
|
pixeltable/functions/audio.py,sha256=6_tUhSZgxhOQQJemvZYNEoKNjWdr3SgJsvLkKCSmtfw,1633
|
|
91
87
|
pixeltable/functions/bedrock.py,sha256=lTCFHjYunF3minBGWcjXR90yJ8resFjXr4niyKhfxms,4217
|
|
92
88
|
pixeltable/functions/date.py,sha256=qs1svJ9FVod3OTa5hQNKIuashb6tVhW_2EAEXYGQX74,5308
|
|
93
|
-
pixeltable/functions/deepseek.py,sha256=
|
|
89
|
+
pixeltable/functions/deepseek.py,sha256=iw59TKKcw3VqbHMHB2ugtcTPeTVKuHp_3pfkjF6DYmE,3550
|
|
94
90
|
pixeltable/functions/fireworks.py,sha256=q7eWlYfiWbA0d9r3CB_NAe1fw3q-Z7qsw2gyGJNgWLQ,4786
|
|
95
|
-
pixeltable/functions/gemini.py,sha256=
|
|
91
|
+
pixeltable/functions/gemini.py,sha256=beGMdpcL55mLaMMJkIL_TZrGdLJRL1RP-GkEuC6m8fs,8781
|
|
96
92
|
pixeltable/functions/globals.py,sha256=OyPJUJ4S6VWyzxstxIzk3xzYBGIEMwgk1RmSTWTZzdI,5106
|
|
97
93
|
pixeltable/functions/groq.py,sha256=FpR_LJpfZfzyhEvoBMMbQpQ-VQSRzBsS9U21qaINwww,3593
|
|
98
|
-
pixeltable/functions/huggingface.py,sha256=
|
|
94
|
+
pixeltable/functions/huggingface.py,sha256=Y-io3EungSs5ibr43vLEXs4dz_Ej20F1nglD0fyLrXA,20371
|
|
99
95
|
pixeltable/functions/image.py,sha256=IKXljMma-uU88efptC3F4aywau7DYcD-Nqd3YpmRNRw,13971
|
|
100
96
|
pixeltable/functions/json.py,sha256=d7-AvwytUQtQYF_JnWJkptT_Yq0NgMpWfVk-m3U6qTY,807
|
|
101
97
|
pixeltable/functions/llama_cpp.py,sha256=uop0K6oNxCnQXbdiL-_6PVsusc1xqCtwTipAyIbQ-Uc,4119
|
|
102
98
|
pixeltable/functions/math.py,sha256=jhlD7v4eY-6KdmsFEBqb-W_vspGahOosUvFahWFzxrU,4969
|
|
103
99
|
pixeltable/functions/mistralai.py,sha256=Fk52mfWUfxVy-yCxhH6wrGS7nLLSiOOrWxbTkkiQ-O8,5542
|
|
104
100
|
pixeltable/functions/ollama.py,sha256=4-6h9Foq_7Ut7JtEHGkeg1KbuKaFywSuMrKiw0xAyCA,4231
|
|
105
|
-
pixeltable/functions/openai.py,sha256=
|
|
101
|
+
pixeltable/functions/openai.py,sha256=qeErzHgJ2D5KFhUxnzcqZ2DrvvT2q-UoMp3tNZP5fgg,28782
|
|
106
102
|
pixeltable/functions/replicate.py,sha256=sPvRGr0j0kCDc6Vz3mPUioFflApijukvZWJJUO2bqIQ,2429
|
|
107
103
|
pixeltable/functions/string.py,sha256=LdBNOna5PUSPmM5VlJ_qhmwzyFhumW0k6Dvx2rXSZtc,25356
|
|
108
104
|
pixeltable/functions/timestamp.py,sha256=3GVCVIWdry96Qk5XXuvbJ58Tp30iY5snBibzl2CHjQc,9143
|
|
109
105
|
pixeltable/functions/together.py,sha256=A8J19BXywyWQ6a2_n05-8uIG5jquOBGqPmW3mb-NrIc,8842
|
|
110
106
|
pixeltable/functions/util.py,sha256=uQNkyBSkTVMe1wbUI2Q0nz-mM3qPVTF86yK8c9OFIcE,954
|
|
111
|
-
pixeltable/functions/video.py,sha256=
|
|
107
|
+
pixeltable/functions/video.py,sha256=Z0X0Z-oCS-c4cqjlfCPLUxvTUAkQdxDZ-tL-jAIKKA0,10590
|
|
112
108
|
pixeltable/functions/vision.py,sha256=17h9bOm3NJyQzFMBwXDHMqnkcuCspyQJgHdBOXV1Ip8,15380
|
|
113
109
|
pixeltable/functions/whisper.py,sha256=c9E6trhc2UcShVaGaEBCUEpArke1ql3MV5We0qSgmuU,2960
|
|
110
|
+
pixeltable/functions/whisperx.py,sha256=BT9gwXEf5V1lgDxynkrrH6gsuCLqjCzfMJKj5DaOtSM,7661
|
|
111
|
+
pixeltable/functions/yolox.py,sha256=ZdYr6WIqTCHOJoZSoXe4CbME54dYeeeOhkOi1I7VtcE,3518
|
|
114
112
|
pixeltable/index/__init__.py,sha256=97aFuxiP_oz1ldn5iq8IWApkOV8XG6ZIBW5-9rkS0vM,122
|
|
115
113
|
pixeltable/index/base.py,sha256=200s7v3Zy810bRlbSAYzxxaEjVssl6r8esTHiSvWRwQ,1704
|
|
116
114
|
pixeltable/index/btree.py,sha256=8B06D67ay0DFUtEBC5q4bLjxMq7ILpKyyoLAiSaamzA,2503
|
|
@@ -118,22 +116,22 @@ pixeltable/index/embedding_index.py,sha256=B_k_3UJmSv7t2ljUg8GC_D4t1jc03PVsTAvxq
|
|
|
118
116
|
pixeltable/io/__init__.py,sha256=chVGh3ygtZwSY6g_skIyCsjxwzo2847jDq9YGObAY98,608
|
|
119
117
|
pixeltable/io/datarows.py,sha256=s2fDQTttGxq7cS5JwKFEJRSKn6WsXTaGdmm9VJSl_2M,6154
|
|
120
118
|
pixeltable/io/external_store.py,sha256=rOYBwTqcZZVU2toWxJ_9Iy2w2YO0DhuABrM2xGmqHSo,14787
|
|
121
|
-
pixeltable/io/fiftyone.py,sha256=
|
|
119
|
+
pixeltable/io/fiftyone.py,sha256=JcAL9zFszSTcsws6ioF1KZZJFmUeg-11W-c4Gyh3FyQ,6891
|
|
122
120
|
pixeltable/io/globals.py,sha256=B9ubI9Z0m2wGPZXWmZm10vlaP0UCuUsVyrMWvyudZSc,11360
|
|
123
121
|
pixeltable/io/hf_datasets.py,sha256=5WfWfXoQppG1Bx_pS5n44KO1Vo_mEb_S82PLB8cLfAU,5606
|
|
124
|
-
pixeltable/io/label_studio.py,sha256=
|
|
122
|
+
pixeltable/io/label_studio.py,sha256=OCQBVgGjXRSdukFQv2ZKdaBmpxanqH9ibDLxZd1L3mc,31469
|
|
125
123
|
pixeltable/io/pandas.py,sha256=xQmkwbqE9_fjbbPUgeG5yNICrbVVK73UHxDL-cgrQw0,9007
|
|
126
124
|
pixeltable/io/parquet.py,sha256=qoVDuCoW-Tq14IlzN_psoNP7z83hIQ3ZEg_pKzHSqoY,7796
|
|
127
125
|
pixeltable/io/table_data_conduit.py,sha256=--UWwG6agBtOA5PLPfjxp2XKoAQ-f5nSPJqOgA5DAAI,22062
|
|
128
126
|
pixeltable/io/utils.py,sha256=qzBTmqdIawXMt2bfXQOraYnEstL69eC2Z33nl8RrwJk,4244
|
|
129
127
|
pixeltable/iterators/__init__.py,sha256=bU4EmbX85J1URmRw6G71f2I77b1ctqngEOwDmRB3T0w,455
|
|
130
|
-
pixeltable/iterators/audio.py,sha256=
|
|
128
|
+
pixeltable/iterators/audio.py,sha256=HYE8JcqaJsTGdrq4NkwV5tn7lcyMp6Fjrm59efOLzb0,9671
|
|
131
129
|
pixeltable/iterators/base.py,sha256=ZC0ZvXL4iw6AmT8cu-Mdx-T2UG9nmJYV1C6LK4efAfw,1669
|
|
132
|
-
pixeltable/iterators/document.py,sha256=
|
|
130
|
+
pixeltable/iterators/document.py,sha256=7NIN5W5jHVm4v5_FzGsH0XJigtPCm8DfXJUc3_hEtHQ,20073
|
|
133
131
|
pixeltable/iterators/image.py,sha256=RrFdf5cnFIQzWKJk4uYi1m1p2qAiz909THYhRQ27DbY,3603
|
|
134
132
|
pixeltable/iterators/string.py,sha256=URj5edWp-CsorjN_8nnfWGvtIFs_Zh4VPm6htlJbFkU,1257
|
|
135
133
|
pixeltable/iterators/video.py,sha256=PKztCS_FEtu-AoHR6X-wJG6UJddX195lS-9eQp5ClGc,10810
|
|
136
|
-
pixeltable/metadata/__init__.py,sha256=
|
|
134
|
+
pixeltable/metadata/__init__.py,sha256=oTO9kN6h4xJ2lsk4a2bq6ejAD-4wToy7b5_i3Pq1Qnc,3289
|
|
137
135
|
pixeltable/metadata/notes.py,sha256=3fdZDFpL1-b194Ejv0Y0YP-vbnV-XvVP9wOmZM9XARA,1545
|
|
138
136
|
pixeltable/metadata/schema.py,sha256=fs9W2SLh32Ehxc9AChVH7YCtlSSnQkgGMbEyOh0B4W0,13416
|
|
139
137
|
pixeltable/metadata/utils.py,sha256=NJQXWhhK1hdOZ4H3hh9N0mqbl-I9JqMUqrfA6OWLflE,2682
|
|
@@ -167,9 +165,11 @@ pixeltable/metadata/converters/convert_37.py,sha256=IVZGtKFaaYMGBs39V_H_okWvpxxa
|
|
|
167
165
|
pixeltable/metadata/converters/convert_38.py,sha256=YyNyocwzzdJRcI0YSCo_70Q4hSk63235iE4IxhwSEzs,1169
|
|
168
166
|
pixeltable/metadata/converters/convert_39.py,sha256=YaEfgStxtYGRbuRLFw8wTAZVJRzIU6zL6nPU2zuDcEU,4658
|
|
169
167
|
pixeltable/metadata/converters/util.py,sha256=QUBOj2F_6rCAdIo0lgD1IVgAM15Vmq7ikQspB4s0eQ8,7732
|
|
168
|
+
pixeltable/mypy/__init__.py,sha256=cD_oHXClR_bDM8qVNIfaOAgRhQjPfcWvLcinz79ua6o,54
|
|
169
|
+
pixeltable/mypy/mypy_plugin.py,sha256=KCjzKOeKW5CBqJOq9Ch7ZJ25ICPc4nlTB49DxtC6oDM,5460
|
|
170
170
|
pixeltable/share/__init__.py,sha256=AtR4nS6YkfkFRkXA-zZXFTK5pSQjHry8MnxdVLUk5SA,68
|
|
171
|
-
pixeltable/share/packager.py,sha256=
|
|
172
|
-
pixeltable/share/publish.py,sha256=
|
|
171
|
+
pixeltable/share/packager.py,sha256=5rSKnQCs3YP5h48d79bXEK4L8tLUSeTSbXaB8X9SmBI,31265
|
|
172
|
+
pixeltable/share/publish.py,sha256=KS_R59AuVkHWkXHwELP74xgSHs8Z5z8SBPMcjzttt44,11469
|
|
173
173
|
pixeltable/utils/__init__.py,sha256=45qEM20L2VuIe-Cc3BTKWFqQb-S7A8qDtmmgl77zYK0,1728
|
|
174
174
|
pixeltable/utils/arrow.py,sha256=Rooa02GL5k--D2utlKATtYKrrlsHbbi6JmkarXMux1M,6384
|
|
175
175
|
pixeltable/utils/coco.py,sha256=Y1DWVYguZD4VhKyf7JruYfHWvhkJLq39fzbiSm5cdyY,7304
|
|
@@ -184,13 +184,14 @@ pixeltable/utils/filecache.py,sha256=3TTEqhGg0pEAP_l0GKn34uspC4dha1jPab1Ka9_oTBM
|
|
|
184
184
|
pixeltable/utils/formatter.py,sha256=tbMxE9rBw6wdKUnJhNZ8h9uAF8dZKcihQ2KesqAag9A,10096
|
|
185
185
|
pixeltable/utils/http_server.py,sha256=6khOAtpVj1lDIm9Dx8VIECLm87cFEp4IFbAg8T92A2o,2441
|
|
186
186
|
pixeltable/utils/iceberg.py,sha256=COeNqqy5RRMkDGLS8CTnaUeAccG10x2fwP3e1veuqIA,522
|
|
187
|
-
pixeltable/utils/media_store.py,sha256=
|
|
187
|
+
pixeltable/utils/media_store.py,sha256=HVOuK5JTTvgSH_st0lsapv39Lnu29QGpkKUtZQybBTA,10560
|
|
188
|
+
pixeltable/utils/pydantic.py,sha256=-ztUsuRXA7B6bywb5Yy1h5pNQ2DnsT1d0oHMxqtK3WY,2011
|
|
188
189
|
pixeltable/utils/pytorch.py,sha256=564VHRdDHwD9h0v5lBHEDTJ8c6zx8wuzWYx8ZYjBxlI,3621
|
|
189
190
|
pixeltable/utils/s3.py,sha256=pxip2MlCqd2Qon2dzJXzfxvwtZyc-BAsjAnLL4J_OXY,587
|
|
190
191
|
pixeltable/utils/sql.py,sha256=Sa4Lh-VGe8GToU5W7DRiWf2lMl9B6saPqemiT0ZdHEc,806
|
|
191
192
|
pixeltable/utils/transactional_directory.py,sha256=OFKmu90oP7KwBAljwjnzP_w8euGdAXob3y4Nx9SCNHA,1357
|
|
192
|
-
pixeltable-0.4.
|
|
193
|
-
pixeltable-0.4.
|
|
194
|
-
pixeltable-0.4.
|
|
195
|
-
pixeltable-0.4.
|
|
196
|
-
pixeltable-0.4.
|
|
193
|
+
pixeltable-0.4.9.dist-info/METADATA,sha256=OvTlQgjU2P7wXoyAQhd8p4MrQU1jv5btGrtIHhRF9so,24247
|
|
194
|
+
pixeltable-0.4.9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
195
|
+
pixeltable-0.4.9.dist-info/entry_points.txt,sha256=rrKugZmxDtGnXCnEQ5UJMaaSYY7-g1cLjUZ4W1moIhM,98
|
|
196
|
+
pixeltable-0.4.9.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
197
|
+
pixeltable-0.4.9.dist-info/RECORD,,
|