Pydantic support for Jaxtyping array annotations
Project description
Py Jaxtyping
Pydantic support for Jaxtyping array annotations
Usage
Instead of Int[np.ndarray, 'B 256 64 3']
, do PyArray[Int, int, 'B 256 64 3']
You can use it with jaxtyping
as normal, but also it will:
- Serialize to nested lists
- Validate the correct shape and datatypes from serialized lists
Example
from pydantic import BaseModel, ConfigDict
from py_jaxtyping import PyArray
from jaxtyping import Int
import numpy as np
class Sample(BaseModel):
model_config = ConfigDict(arbitrary_types_allowed=True)
img: PyArray[Int, int, "W H 3"]
label: str
Sample.model_validate({
'img': np.ones((256, 64, 3)),
'label': 'car'
})
# checks out!
Sample.model_validate({
'img': np.ones((256, 64, 1)),
'label': 'car'
})
# fails: invalid dims :/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
py_jaxtyping-0.1.5.tar.gz
(2.8 kB
view details)
Built Distribution
File details
Details for the file py_jaxtyping-0.1.5.tar.gz
.
File metadata
- Download URL: py_jaxtyping-0.1.5.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 196fa11613a56ff506b2d3d977d57be6860a5635f4199e432a33d014d1ae5c73 |
|
MD5 | ff002142a77e57f40b4aaa11c784b68a |
|
BLAKE2b-256 | 6f3d3debfa3b3499bc898b5246e1504d75dc1c2c13eaccfc3b98d1418c36796c |
File details
Details for the file py_jaxtyping-0.1.5-py3-none-any.whl
.
File metadata
- Download URL: py_jaxtyping-0.1.5-py3-none-any.whl
- Upload date:
- Size: 3.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e3f22dac8bd01081387731e8932ebacd6e0035072b2c53c913ebbef5f50283e |
|
MD5 | 3fc2c4c296c220b5532fc474478dafc6 |
|
BLAKE2b-256 | c7d1b58f144895eba1a333e8592c7bad089872a8796c33eaff977678acbf1121 |