Repolode
pixeltable

pixeltable/pixeltable

A Python backend where multimodal data, computed columns, vector indexes and HTTP routes are declared together in one file.

Stars
1,659
Forks
235
Open issues
34
Last commit
14 hours ago

What is it?

Pixeltable is a Python library and database for AI applications that work with video, images, audio and documents. A table stores references to files alongside regular columns, and processing steps such as audio extraction, transcription, or embedding are defined as computed columns. When a row is inserted, the engine runs those steps, stores the results and updates any indexes automatically. Each computed column records which columns it depends on, so changing one step only reruns the affected rows.

The project aims to replace the usual combination of a file bucket, metadata database, vector store, orchestrator and sync scripts with a single declared schema. Tables can also serve as HTTP endpoints through FastAPIRouter, and every change to a table is versioned, with commands to view history and revert. Rate limiting and retries for model provider calls are handled by the engine, and the CLI covers project setup, schema updates and recomputation.

Files can be stored on local disk or in S3, GCS or Azure buckets. Pixeltable Cloud offers a hosted version of the same app with managed storage. The library requires Python 3.11 or later.

Key features

  • 01Stores video, image, audio and document files as table columns with references to their location.
  • 02Computed columns run model calls or media processing on each inserted row and store the results.
  • 03Embedding indexes are built and maintained by the table for similarity search.
  • 04Recomputes only the affected rows when a column's logic changes.
  • 05Declares HTTP insert and query routes next to the table definitions.
  • 06Keeps versioned table history with commands to inspect and revert changes.

Use cases

  • Building retrieval-augmented generation over documents that are added or removed over time.
  • Running transcription and summarization pipelines on uploaded videos through an API.
  • Producing frames, transcripts or detections from video and image collections.
  • Serving multimodal search or processing endpoints without writing a separate FastAPI app.

Quick start

  1. 1

    Install Pixeltable with the serving extra

    pip install 'pixeltable[serve]' openai
  2. 2

    Make this folder a Pixeltable project

    pxt init
  3. 3

    Create the table and its index from app.py

    pxt schema update app.py my_app
  4. 4

    Start the service and note the URL it prints

    pxt service update app.py my_app

Things to know

  • The example app calls OpenAI models, so it needs an OpenAI API key and will incur API costs.
  • Requires Python 3.11 or later.

In collections

Topics

FAQ

What is pixeltable?
A Python backend where multimodal data, computed columns, vector indexes and HTTP routes are declared together in one file. Pixeltable is a Python library and database for AI applications that work with video, images, audio and documents. A table stores references to files alongside regular columns, and processing steps such as audio extraction, transcription, or embedding are defined as computed columns. When a row is inserted, the engine runs those steps, stores the results and updates any indexes automatically. Each computed column records which columns it depends on, so changing one step only reruns the affected rows.
Is pixeltable free to use? What license does it have?
pixeltable is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is pixeltable still maintained?
Actively maintained. The last commit to pixeltable was on Nov 7, 2026.
What can I use pixeltable for?
Building retrieval-augmented generation over documents that are added or removed over time. Running transcription and summarization pipelines on uploaded videos through an API. Producing frames, transcripts or detections from video and image collections. Serving multimodal search or processing endpoints without writing a separate FastAPI app.
How do I install pixeltable?
Install Pixeltable with the serving extra: pip install 'pixeltable[serve]' openai Make this folder a Pixeltable project: pxt init Create the table and its index from app.py: pxt schema update app.py my_app Start the service and note the URL it prints: pxt service update app.py my_app
Where can I get pixeltable?
The source code and installation instructions are on GitHub: https://github.com/pixeltable/pixeltable

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects