Skip to main content

🐂 🐍 Oxen Python Interface

The Oxen python interface makes it easy to integrate Oxen datasets directly into machine learning dataloaders or other data pipelines.

Repositories

There are two types of repositories one can interact with, a Repo and a RemoteRepo.

Local Repo

To fully clone all the data to your local machine, you can use the Repo class.

import oxen

repo = oxen.Repo("path/to/repository")
repo.clone("https://hub.oxen.ai/ox/CatDogBBox")

If there is a specific version of your data you want to access, you can specify the branch when cloning.

repo.clone("https://hub.oxen.ai/ox/CatDogBBox", branch="my-pets")

Once you have a repository locally, you can perform the same operations you might via the command line, through the python api.

For example, you can checkout a branch, add a file, commit, and push the data to the same remote you cloned it from.

import oxen

repo = oxen.Repo("path/to/repository")
repo.clone("https://hub.oxen.ai/ox/CatDogBBox")
repo.checkout()

Remote Repo

If you don't want to download the data locally, you can use the RemoteRepo class to interact with a remote repository on OxenHub.

import oxen

repo = oxen.RemoteRepo("https://hub.oxen.ai/ox/CatDogBBox")

To stage and commit files to a specific version of the data, you can checkout an existing branch or create a new one.

repo.create_branch("dev")
repo.checkout("dev")

You can then stage files to the remote repository by specifying the file path and destination directory.

repo.add("new-cat.png", "images") # Stage to images/new-cat.png on remote
repo.commit("Adding another training image")

Note that no "push" command is required here, since the above code creates a commit directly on the remote branch.

Build 🔨

See the prerequisites section of the main readme before developing.

To get and build dependencies, as well as the oxen-python code, run:

uv sync --verbose

To build the PyO3 oxen wrappers only, use maturin and --no-sync:

uv run --no-sync maturin develop

Test

Run pytest:

uv run --verbose pytest -s tests/

If you have already installed all dependencies, and you're not making any changes to liboxen, then you may use --no-sync:

uv run --no-sync pytest -s tests/

Format and lint code with:

uvx ruff check .
uvx ruff format .

Logging

Oxen uses structured logging. It outputs to STDERR by default but can be configured with rotating log files. See Logging for details.

By default, the oxen-python does not perform any logging. Set RUST_LOG to change.

Metadata

Release files for oxenai 0.65.1

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

Built distributions (wheels)

Table of built distributions (wheels) for oxenai 0.65.1
File Actions
oxenai-0.65.1-cp311-abi3-win_amd64.whl CPython 3.11 abi3 Windows x86-64 Details for oxenai-0.65.1-cp311-abi3-win_amd64.whl
oxenai-0.65.1-cp311-abi3-manylinux_2_34_x86_64.whl CPython 3.11 abi3 Linux glibc 2.34+ x86-64 Details for oxenai-0.65.1-cp311-abi3-manylinux_2_34_x86_64.whl
oxenai-0.65.1-cp311-abi3-manylinux_2_34_aarch64.whl CPython 3.11 abi3 Linux glibc 2.34+ ARM64 Details for oxenai-0.65.1-cp311-abi3-manylinux_2_34_aarch64.whl
oxenai-0.65.1-cp311-abi3-manylinux_2_28_x86_64.whl CPython 3.11 abi3 Linux glibc 2.28+ x86-64 Details for oxenai-0.65.1-cp311-abi3-manylinux_2_28_x86_64.whl
oxenai-0.65.1-cp311-abi3-manylinux_2_28_aarch64.whl CPython 3.11 abi3 Linux glibc 2.28+ ARM64 Details for oxenai-0.65.1-cp311-abi3-manylinux_2_28_aarch64.whl
oxenai-0.65.1-cp311-abi3-macosx_11_0_arm64.whl CPython 3.11 abi3 macOS 11.0+ ARM64 Details for oxenai-0.65.1-cp311-abi3-macosx_11_0_arm64.whl
oxenai-0.65.1-cp311-abi3-macosx_10_13_x86_64.whl CPython 3.11 abi3 macOS 10.13+ x86-64 Details for oxenai-0.65.1-cp311-abi3-macosx_10_13_x86_64.whl

Total release size: 237.7 MB

Release files / oxenai-0.65.1-cp311-abi3-win_amd64.whl

Download URL oxenai-0.65.1-cp311-abi3-win_amd64.whl
Size 34.3 MB
Tags CPython 3.11 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
05ed112514f1bd037f2ec57c6c68a61874a53b270970f0252a45324682b12b83
BLAKE2b-256 checksum
How to use checksums
a2d535fda23a1839e0f581dbebe969e0fbffb91ff7be9a388593e50f53d3bb30
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-manylinux_2_34_x86_64.whl

Download URL oxenai-0.65.1-cp311-abi3-manylinux_2_34_x86_64.whl
Size 34.6 MB
Tags CPython 3.11 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
55460057adbcf3ade3271a11fe984d2e66bfce6f199498f8932309dd05f8cbd6
BLAKE2b-256 checksum
How to use checksums
2fe110b4d1675039751954bfb290ac5c2cda06e37940c709ed02d68f3a73c79f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-manylinux_2_34_aarch64.whl

Download URL oxenai-0.65.1-cp311-abi3-manylinux_2_34_aarch64.whl
Size 32.9 MB
Tags CPython 3.11 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
da50f4a6eec9d137269d1181219e518b8be278899e2d7611493d554febcba620
BLAKE2b-256 checksum
How to use checksums
c51a01e590c7361e8643207c951819289fa8c2474e1955202516dd2b5b40e6bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-manylinux_2_28_x86_64.whl

Download URL oxenai-0.65.1-cp311-abi3-manylinux_2_28_x86_64.whl
Size 34.9 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
e52fa890cee35c43a1a783a00407247a484212e941dc32922cc99a7b4d0a8837
BLAKE2b-256 checksum
How to use checksums
223018b2dcf3844a9dd98b54235a9fb79145624c477748cf0dee9eb1aac1e9de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-manylinux_2_28_aarch64.whl

Download URL oxenai-0.65.1-cp311-abi3-manylinux_2_28_aarch64.whl
Size 33.1 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
1ff6e5a58419d008c5173ccac423f5fdc71e0a2d9101bf690d49c14f99b740ce
BLAKE2b-256 checksum
How to use checksums
b870aab8e0cc5c6fff8663fa3c12fc65325bf3e336bacb73c6fe6b90aab03df3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-macosx_11_0_arm64.whl

Download URL oxenai-0.65.1-cp311-abi3-macosx_11_0_arm64.whl
Size 32.5 MB
Tags CPython 3.11 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
48310c0ec99767e4968dda0f271a7a2f35da1c055caf657acc79eba178668fd7
BLAKE2b-256 checksum
How to use checksums
650b0a853eb1ac7937e88aa0304d1f1bb02f83319f4bc775d387bfd162fc1199
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Release files / oxenai-0.65.1-cp311-abi3-macosx_10_13_x86_64.whl

Download URL oxenai-0.65.1-cp311-abi3-macosx_10_13_x86_64.whl
Size 35.4 MB
Tags CPython 3.11 abi3 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
2d89c12edeca927bc12b02172ec4027eb9efd9b0b8b81fa2e28c85288dc75adb
BLAKE2b-256 checksum
How to use checksums
2108e9fe6895d847bd49d1643ec07395538d3164342e9455395d72907c5b03fa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via maturin/1.8.4

Security for oxenai 0.65.1

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.65.1 This release

7 release files No provenance

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