Skip to main content
Pixeltable Logo

License tests status nightly status stress-tests status PyPI Package Python

Quickstart | Documentation | Cloud | Skill | llms-full.txt | skill.md | Discord

A unified multimodal backend that is one schema you keep, not a stack you assemble

Most stacks glue a blob store, a warehouse, a vector database, an orchestrator, and custom endpoints. You pay for the joints. Pixeltable is the database, the orchestration, and the serving: tables, computed columns, indexes, and endpoints in one Python file (app.py). Insert a row. Transforms run.

Locally, pxt schema update creates the tables. pxt service update starts the endpoints. On Cloud, use the same file after you set PIXELTABLE_API_KEY (create the key in the dashboard) and run pxt db update. Python 3.11+ on Linux, macOS, or Windows.

pip install 'pixeltable[serve]'
pxt init
pxt service example --out app.py
pxt schema update app.py my_app
pxt service update app.py my_app

The generated file looks like this. pxt service example writes a longer file than the snippet (a UDF and a compute route), which you can delete.

import pixeltable as pxt
import pixeltable.functions as pxtf
from pixeltable.serving import FastAPIRouter

TableModel = pxt.model_base()


class Docs(TableModel, name='docs'):
    title: pxt.String
    body: pxt.String | None
    title_upper = pxtf.string.upper(title)


ingest = FastAPIRouter(name='ingest')
ingest.add_insert_route(
    Docs,
    path='/docs',
    inputs=[Docs.title, Docs.body],
    outputs=[Docs.title, Docs.title_upper],
)

title: pxt.String is a value you insert. title_upper = ... is computed on insert and on update. The same file can hold pxt.Image, pxt.Video, pxt.Audio, or pxt.Document: media pipelines, RAG. pxt service list prints the URL (the port is assigned):

pxt service list
# ingest  http://127.0.0.1:<port>  ...
curl -X POST http://127.0.0.1:<port>/docs \
  -H 'Content-Type: application/json' \
  -d '{"title": "Hello", "body": "world"}'

pxt schema update creates the catalog namespace my_app and its tables. That is not a folder on disk. It does not start the endpoints. After the tables exist, pxt service update starts them.

To put the same file on Pixeltable Cloud, create an API key in the Cloud dashboard, set PIXELTABLE_API_KEY, name the database in pixeltable.toml, then run the three commands below. pxt db update creates or updates the hosted database. It does not insert rows and does not start app endpoints. pxt schema update creates tables there. pxt service update starts the endpoints on the host. pxt service run always serves from this process and cannot target Cloud:

pxt db update pxt://org:mydb
pxt schema update app.py pxt://org:mydb
pxt service update app.py pxt://org:mydb

Same steps: Quickstart.

Chat agent or video search

uvx pixeltable-new copies one app from the starter kit. The default copy is a chat app; pass agent as the last argument to pxt schema update. --video copies video search; pass videointel.

uvx pixeltable-new myapp
cd myapp
uv sync
pxt schema update app.py agent
pxt service update app.py agent

Inserting into the knowledge table needs no API key. The /ask route needs ANTHROPIC_API_KEY.

To mount the routes on an existing FastAPI app, app.include_router(...). HTTP serving. To skip endpoints, run pxt schema update, insert from Python, then export_sql. Self-hosting.

Coding agents

Hand the agent get-started.md. That playbook installs the package, the skill, and MCP. How the skill writes app.py: AI coding agents. Docs capability file: skill.md.

npx skills add pixeltable/pixeltable-skill

Skill 2.7.0+ writes a TableModel in app.py, then pxt schema update. If the agent writes create_table in app code, schema.py, or pxt serve, the installed skill is stale: this page wins. Reinstall the skill. Do not copy this repo's AGENTS.md into an application; that file is for Pixeltable contributors.

Notebooks and tests still use pxt.create_table(). An app puts tables in app.py and creates them with pxt schema update.

License

Apache 2.0. Contributing · Discord

Release files for pixeltable 0.7.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for pixeltable 0.7.5
File Interpreter ABI Platform
pixeltable-0.7.5-py3-none-any.whl Python 3 none any Details

Release files / pixeltable-0.7.5-py3-none-any.whl

Download URL pixeltable-0.7.5-py3-none-any.whl
Size 1.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
c551025dcd671300897f79f40aee176ee2040e94a06db5761d001c5b12560de3
BLAKE2b-256 checksum
How to use checksums
21ed9ea2d68ad5e8c83030e2a96f2bbcd0d4c1445babec75b848925c07fbf79d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.7.10

1 release file

0.7.9

1 release file

0.7.8

1 release file

0.7.7

1 release file

0.7.6

1 release file

This release

0.7.5 This release

1 release file

0.7.4

1 release file

0.7.3

1 release file

0.7.2

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.8

1 release file

0.6.7

1 release file

0.6.6

1 release file

0.6.5

1 release file

0.6.4

1 release file

0.6.3

1 release file

0.6.2

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.28

1 release file

0.5.27

1 release file

0.5.26

1 release file

0.5.25

1 release file

0.5.24

1 release file

0.5.23

1 release file

0.5.22

1 release file

0.5.21

1 release file

0.5.20

1 release file

0.5.19

1 release file

0.5.18

1 release file

0.5.17

1 release file

0.5.16

1 release file

0.5.15

1 release file

0.5.14

1 release file

0.5.13

1 release file

0.5.12

1 release file

0.5.11

1 release file

0.5.10

1 release file

0.5.9

1 release file

0.5.8

1 release file

0.5.7

1 release file

0.5.6

1 release file

0.5.5

1 release file

0.5.4

1 release file

0.5.3

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.24

1 release file

0.4.23

1 release file

0.4.22

1 release file

0.4.21

1 release file

0.4.20

1 release file

0.4.19

1 release file

0.4.18

1 release file

0.4.17

1 release file

0.4.16

1 release file

0.4.15

1 release file

0.4.14

1 release file

0.4.13

1 release file

0.4.12

1 release file

0.4.11

1 release file

0.4.10

1 release file

0.4.9

1 release file

0.4.8

1 release file

0.4.7

1 release file

0.4.6

1 release file

0.4.5

2 release files

0.4.4

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.15

2 release files

0.3.14

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.30

2 release files

0.2.29

2 release files

0.2.28

2 release files

0.2.26

2 release files

0.2.25

2 release files

0.2.24

2 release files

0.2.23

2 release files

0.2.21

2 release files

0.2.19

2 release files

0.2.18

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.12

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page