Skip to content

Strata

Content-addressed notebooks for ML and data workflows.

Strata Notebook is an interactive notebook where every cell output is an artifact. Same code + same inputs = instant cache hit. Change one cell, and only that cell and its dependents re-execute — everything else is served from the artifact store in milliseconds.


Strata Notebook

An interactive notebook with content-addressed caching, automatic dependency tracking, and cascade execution. Each cell output is an artifact. Change upstream code, and downstream cells automatically invalidate — but everything that hasn't changed is served instantly from cache.

Key features:

  • Content-addressed caching (same code + inputs = cache hit)
  • Automatic DAG from variable analysis
  • Distributed workers (@worker gpu-fly dispatches to remote GPU)
  • Prompt cells with {{ variable }} LLM injection
  • AI assistant with streaming chat and agent mode
  • Per-notebook Python environments via uv
  • Headless runner (strata run) for CI

:octicons-arrow-right-24: Notebook Quickstart


Strata Core

The notebook is built on Strata Core — a standalone materialization and artifact layer. Core can also be used independently as a Python client library and REST API for any workflow that needs provenance-based caching, lineage tracking, or Iceberg table scanning.

from strata import StrataClient

client = StrataClient()
artifact = client.materialize(
    inputs=["file:///warehouse#db.events"],
    transform={"executor": "scan@v1", "params": {}},
)
table = client.fetch(artifact.uri)

:octicons-arrow-right-24: Core API Quickstart


Quick Start

docker compose up -d --build

Then open http://localhost:8765.

uv sync
cd frontend && npm ci && npm run build && cd ..
uv run strata-server

Then open http://localhost:8765.

See Installation for full details.

Status

Strata is currently in alpha. Both surfaces (Notebook and Core) are functional but the API may change before 1.0.