Skip to main content

OuterProduct SDK

outerproduct-sdk is the sole public Python package for OuterProduct. It owns the Workspace API, runtime serialization, Files, Unity Catalog adaptation, Flight SQL, and UC-governed object storage. OuterProductClient is the only public client and owns all UC and non-UC operations for one automatically selected Workspace.

Natural workspace API

op.init() reads OUTERPRODUCT_API_KEY and OUTERPRODUCT_BASE_URL, ensures workspaces/default, and returns an already-scoped client. Pass workspace= to select another Workspace; callers never create or unwrap a second client.

import outerproduct_sdk as op

client = op.init()
catalogs = client.list_catalogs()

base_image = (await client.list_images())[0]
image = await client.build_image(
    base_image.name,
    display_name="analytics",
    description="Pinned analytics dependencies",
    pypi_dependencies=("numpy==2.3.2", "polars>=1.33"),
)
created = await client.create_compute_environment(
    image.name,
    cpu=1,
)

compute_environment = client.get_runtime_handle(created.name)


async def add(
    runtime: op.OuterProductClient,
    left: int,
    right: int,
) -> int:
    return left + right


async def add_twice(
    runtime: op.OuterProductClient,
    left: int,
    right: int,
) -> int:
    pending = await runtime.submit(add, left, right)
    first = await pending.refresh()
    return await runtime.compute(add, first.result(), right)


run = await compute_environment.submit(add_twice, 20, 22)
result = await compute_environment.compute(add, 20, 22)

await client.write_file("results/answer.txt", str(result).encode())
answer = await client.read_file("results/answer.txt")

Images are immutable registry artifacts. build_image() layers canonical PyPI requirements onto an existing workspace image and returns only after the new digest is published. ComputeEnvironments are immutable snapshots. Their create_compute_environment(), get_compute_environment(), and list_compute_environments() lifecycle methods live directly on the client. submit() returns after the scheduler acknowledges a durable computation. compute() submits and polls to a terminal state, yielding to asyncio between polls. Natural computed functions are async and receive their runtime workspace as the first positional parameter. Inside a computed function, runtime.submit() and runtime.compute() start child computations in the same compute environment. Their result types remain Run[T] and T, respectively.

Unity Catalog CRUD remains part of the flat Workspace API, including on the client injected into managed computations. The flattened methods retain the generated Unity Catalog signatures for static type checkers. Temporary table/volume/path/model credentials, Files, Flight SQL, compute_environments, and runs are flat Workspace methods too. JSON literals, objects implementing the SDK serialization contract, and Pydantic models can cross run boundaries.

Storage boundaries

File operations are flat methods on the workspace-scoped client. ComputeEnvironment volumes map Unity Catalog volumes to container paths and are materialized for each managed invocation; they are not a provider-native POSIX mount or a write-back filesystem.

Use store_from_url, store_from_volume, store_from_table, or store_from_path for refresh-aware UC-governed object stores. download_s3_prefix(client, prefix, target) securely streams such a prefix into a local directory with bounded concurrency.

Packaging

The published distribution is one wheel with one native extension. Internal serialization and UC object-store Python sources are vendored under outerproduct_sdk._vendor; the wheel has no dependency on separately published OuterProduct client packages. Third-party runtime dependencies remain ordinary wheel dependencies.

Release files for outerproduct-sdk 0.1.14

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

Source distribution (sdist)

Source distribution for outerproduct-sdk 0.1.14
File Size Uploaded
outerproduct_sdk-0.1.14.tar.gz 1.2 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for outerproduct-sdk 0.1.14
File
outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Details
outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64 Details
outerproduct_sdk-0.1.14-cp314-cp314t-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 15.0+ ARM64 Details
outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_x86_64.whl CPython 3.12 abi3 Linux glibc 2.28+ x86-64 Details
outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_aarch64.whl CPython 3.12 abi3 Linux glibc 2.28+ ARM64 Details
outerproduct_sdk-0.1.14-cp312-abi3-macosx_15_0_arm64.whl CPython 3.12 abi3 macOS 15.0+ ARM64 Details

Total release size: 26.9 MB

Release files / outerproduct_sdk-0.1.14.tar.gz

Download URL outerproduct_sdk-0.1.14.tar.gz
Size 1.2 MB
Tags Source
SHA-256 checksum
How to use checksums
771787dd9fb1fa177b6bdf4ecd7c914361bd96d6dc4b754182fcea84314be770
BLAKE2b-256 checksum
How to use checksums
5af9ecc95be6bad18adbef12949420801c285a1eeb27f3705bd7760206baa842
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_x86_64.whl

Download URL outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_x86_64.whl
Size 4.4 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6c1c2f59f443a9323ada43d269fad76e39d3be41c4887d048b020ca821b8fa45
BLAKE2b-256 checksum
How to use checksums
145c983b18bcbbeebbd94374cced76e11a323bdd5d555584545299c79c05a7fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_aarch64.whl

Download URL outerproduct_sdk-0.1.14-cp314-cp314t-manylinux_2_28_aarch64.whl
Size 4.3 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
0b0a25649471283821e52161eccddc640534fcbd84b2f02cbb5ef85bb2a8662d
BLAKE2b-256 checksum
How to use checksums
165ec7e9678622cf35eded5fc34f9cfb165566ece929e8bc9747712b3ca34516
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp314-cp314t-macosx_15_0_arm64.whl

Download URL outerproduct_sdk-0.1.14-cp314-cp314t-macosx_15_0_arm64.whl
Size 4.2 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
0e682809bfd1e22cdedd070b2b130026f476bc9f7d7225a5b1a3a51e636f3961
BLAKE2b-256 checksum
How to use checksums
22add30fd1584207946a794a6b42a36cedcd05cd88994a7868770baa4e94eff8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_x86_64.whl

Download URL outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_x86_64.whl
Size 4.4 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
49d5ef189bad7f1c788a1c79cdbcaf3eb70d2e7ec17ba87feed56a688faacf73
BLAKE2b-256 checksum
How to use checksums
52a460b7bd636c43aced3d40911ffec19d0739d59c0c32aefeb47af93677778a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_aarch64.whl

Download URL outerproduct_sdk-0.1.14-cp312-abi3-manylinux_2_28_aarch64.whl
Size 4.3 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
a2041ca39b4f3c1bc0869db762df7d3daaa8393fa81905bf5990140803dc18c4
BLAKE2b-256 checksum
How to use checksums
1b5a0133f570751d581868db7478f3c593a8109df16d402ef631ce6d22685795
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release files / outerproduct_sdk-0.1.14-cp312-abi3-macosx_15_0_arm64.whl

Download URL outerproduct_sdk-0.1.14-cp312-abi3-macosx_15_0_arm64.whl
Size 4.2 MB
Tags CPython 3.12 abi3 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
78ed1e987f2ddcd4463ca080dea9e26af4c1f68218b264a744d93ed80d4d5411
BLAKE2b-256 checksum
How to use checksums
8f9d72119315684ffbb1e28087a2e7bec9641084c939c923becffa312bf0f0c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 4, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.17

7 release files

0.1.16

7 release files

This release

0.1.14 This release

7 release files

0.1.12

6 release files

0.1.11

6 release files

0.1.10

6 release files

0.1.9

7 release files

0.1.7

5 release files

0.1.5

4 release files

0.1.4

4 release files

0.1.3

4 release files

0.1.0

4 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