pixeltable
pixeltable/pixeltable
Unified multimodal backend for AI data apps
Unified multimodal backend for AI data apps
Categories
Tags
Similar tools
ECC
affaan-m/ECC
The agent harness performance optimization system
hermes-agent
NousResearch/hermes-agent
The self-improving AI agent built by Nous Research
AutoGPT
Significant-Gravitas/AutoGPT
AutoGPT: Build, Deploy, and Run AI Agents
ollama
ollama/ollama
Get up and running with Kimi-K2.6, GLM-5.1, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.
prompts.chat
f/prompts.chat
The world's largest open-source prompt library for AI
transformers
huggingface/transformers
🤗 Transformers: the model-definition framework for state-of-the-art machine learning models
Install
pip install pixeltableREADME
Quick Start | Documentation | CLI | Dashboard | llms-full.txt | Starter Kit | AI Coding Skill | Discord
Make Building Multimodal AI Data Apps Dead Simple
Pixeltable is the unified multimodal backend for AI data apps. One Python API: store media, run models, index embeddings, serve endpoints, and version everything in a single system instead of gluing together blob storage, a vector DB, an orchestrator, and edge functions. Chunking, embeddings, agents, and serving run from computed columns on insert, not glue scripts you maintain separately. Transactions, caching, retries, and observability are built in. Extend with @pxt.udf, @pxt.uda, and @pxt.query.
Core Capabilities
Expand any row for what Pixeltable replaces, a quick example, and doc links. Examples assume import pixeltable as pxt.
Store: unified multimodal interface
pxt.Image, pxt.Video, pxt.Audio, pxt.Document, pxt.Json: one table for structured and media data with destination= for S3, GCS, Azure, R2, and more. Not S3 + Postgres + boto3 sync.
t = pxt.create_table(
'media',
{
'img': pxt.Image,
'video': pxt.Video,
'audio': pxt.Audio,
'document': pxt.Document,
'metadata': pxt.Json,
},
)
Import / export: I/O without glue scripts
create_table(source=...), path/URL insert(), Hugging Face, export_parquet(), PyTorch, COCO, and more. Not per-format ETL scripts.
# Create a table from a file, URL, or Hugging Face dataset
pxt.create_table('app/data', source='data.csv')
pxt.create_table('app/reviews', source=hf_dataset)
# Append rows into an existing table from a path or URL
t.insert('s3://my-bucket/new_rows.parquet')
# Export to analytics/ML formats
pxt.io.export_parquet(t, 'data.parquet')
pytorch_ds = t.to_pytorch_dataset('pt') # PyTorch DataLoader ready
coco_path = t.to_coco_dataset() # COCO annotations
CSV import · Hugging Face · PyTorch export · ML data wrangling
Iterate: explode media into rows
create_view() with iterators splits documents into chunks, video into frames, audio into segments, and typed JSON lists into rows. Not FFmpeg/spaCy pipelines with child tables and foreign keys. For custom explode logic, use @pxt.iterator.
from pixeltable.functions.document import document_splitter
from pixeltable.functions.json imp