ml-dtypes


Nameml-dtypes JSON
Version 0.5.3 PyPI version JSON
download
home_pageNone
Summaryml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning.
upload_time2025-07-29 18:39:19
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ml_dtypes

[![Unittests](https://github.com/jax-ml/ml_dtypes/actions/workflows/test.yml/badge.svg)](https://github.com/jax-ml/ml_dtypes/actions/workflows/test.yml)
[![Wheel Build](https://github.com/jax-ml/ml_dtypes/actions/workflows/wheels.yml/badge.svg)](https://github.com/jax-ml/ml_dtypes/actions/workflows/wheels.yml)
[![PyPI version](https://badge.fury.io/py/ml_dtypes.svg)](https://badge.fury.io/py/ml_dtypes)

`ml_dtypes` is a stand-alone implementation of several NumPy dtype extensions used in machine learning libraries, including:

- [`bfloat16`](https://en.wikipedia.org/wiki/Bfloat16_floating-point_format):
  an alternative to the standard [`float16`](https://en.wikipedia.org/wiki/Half-precision_floating-point_format) format
- 8-bit floating point representations, parameterized by number of exponent and
  mantissa bits, as well as the bias (if any) and representability of infinity,
  NaN, and signed zero.
  * `float8_e3m4`
  * `float8_e4m3`
  * `float8_e4m3b11fnuz`
  * `float8_e4m3fn`
  * `float8_e4m3fnuz`
  * `float8_e5m2`
  * `float8_e5m2fnuz`
  * `float8_e8m0fnu`
- Microscaling (MX) sub-byte floating point representations:
  * `float4_e2m1fn`
  * `float6_e2m3fn`
  * `float6_e3m2fn`
- Narrow integer encodings:
  * `int2`
  * `int4`
  * `uint2`
  * `uint4`

See below for specifications of these number formats.

## Installation

The `ml_dtypes` package is tested with Python versions 3.9-3.12, and can be installed
with the following command:
```
pip install ml_dtypes
```
To test your installation, you can run the following:
```
pip install absl-py pytest
pytest --pyargs ml_dtypes
```
To build from source, clone the repository and run:
```
git submodule init
git submodule update
pip install .
```

## Example Usage

```python
>>> from ml_dtypes import bfloat16
>>> import numpy as np
>>> np.zeros(4, dtype=bfloat16)
array([0, 0, 0, 0], dtype=bfloat16)
```
Importing `ml_dtypes` also registers the data types with numpy, so that they may
be referred to by their string name:

```python
>>> np.dtype('bfloat16')
dtype(bfloat16)
>>> np.dtype('float8_e5m2')
dtype(float8_e5m2)
```

## Specifications of implemented floating point formats

### `bfloat16`

A `bfloat16` number is a single-precision float truncated at 16 bits.

Exponent: 8, Mantissa: 7, exponent bias: 127. IEEE 754, with NaN and inf.

### `float4_e2m1fn`

Exponent: 2, Mantissa: 1, bias: 1.

Extended range: no inf, no NaN.

Microscaling format, 4 bits (encoding: `0bSEEM`) using byte storage (higher 4
bits are unused). NaN representation is undefined.

Possible absolute values: [`0`, `0.5`, `1`, `1.5`, `2`, `3`, `4`, `6`]

### `float6_e2m3fn`

Exponent: 2, Mantissa: 3, bias: 1.

Extended range: no inf, no NaN.

Microscaling format, 6 bits (encoding: `0bSEEMMM`) using byte storage (higher 2
bits are unused). NaN representation is undefined.

Possible values range: [`-7.5`; `7.5`]

### `float6_e3m2fn`

Exponent: 3, Mantissa: 2, bias: 3.

Extended range: no inf, no NaN.

Microscaling format, 4 bits (encoding: `0bSEEEMM`) using byte storage (higher 2
bits are unused). NaN representation is undefined.

Possible values range: [`-28`; `28`]

### `float8_e3m4`

Exponent: 3, Mantissa: 4, bias: 3. IEEE 754, with NaN and inf.

### `float8_e4m3`

Exponent: 4, Mantissa: 3, bias: 7. IEEE 754, with NaN and inf.

### `float8_e4m3b11fnuz`

Exponent: 4, Mantissa: 3, bias: 11.

Extended range: no inf, NaN represented by 0b1000'0000.

### `float8_e4m3fn`

Exponent: 4, Mantissa: 3, bias: 7.

Extended range: no inf, NaN represented by 0bS111'1111.

The `fn` suffix is for consistency with the corresponding LLVM/MLIR type, signaling this type is not consistent with IEEE-754.  The `f` indicates it is finite values only. The `n` indicates it includes NaNs, but only at the outer range.

### `float8_e4m3fnuz`

8-bit floating point with 3 bit mantissa.

An 8-bit floating point type with 1 sign bit, 4 bits exponent and 3 bits mantissa. The suffix `fnuz` is consistent with LLVM/MLIR naming and is derived from the differences to IEEE floating point conventions. `F` is for "finite" (no infinities), `N` for with special NaN encoding, `UZ` for unsigned zero.

This type has the following characteristics:
 * bit encoding: S1E4M3 - `0bSEEEEMMM`
 * exponent bias: 8
 * infinities: Not supported
 * NaNs: Supported with sign bit set to 1, exponent bits and mantissa bits set to all 0s - `0b10000000`
 * denormals when exponent is 0

### `float8_e5m2`

Exponent: 5, Mantissa: 2, bias: 15. IEEE 754, with NaN and inf.

### `float8_e5m2fnuz`

8-bit floating point with 2 bit mantissa.

An 8-bit floating point type with 1 sign bit, 5 bits exponent and 2 bits mantissa. The suffix `fnuz` is consistent with LLVM/MLIR naming and is derived from the differences to IEEE floating point conventions. `F` is for "finite" (no infinities), `N` for with special NaN encoding, `UZ` for unsigned zero.

This type has the following characteristics:
 * bit encoding: S1E5M2 - `0bSEEEEEMM`
 * exponent bias: 16
 * infinities: Not supported
 * NaNs: Supported with sign bit set to 1, exponent bits and mantissa bits set to all 0s - `0b10000000`
 * denormals when exponent is 0

### `float8_e8m0fnu`

[OpenCompute MX](https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf)
scale format E8M0, which has the following properties:
  * Unsigned format
  * 8 exponent bits
  * Exponent range from -127 to 127
  * No zero and infinity
  * Single NaN value (0xFF).

## `int2`, `int4`, `uint2` and `uint4`

2 and 4-bit integer types, where each element is represented unpacked (i.e.,
padded up to a byte in memory).

NumPy does not support types smaller than a single byte: for example, the
distance between adjacent elements in an array (`.strides`) is expressed as
an integer number of bytes. Relaxing this restriction would be a considerable
engineering project. These types therefore use an unpacked representation, where
each element of the array is padded up to a byte in memory. The lower two or four
bits of each byte contain the representation of the number, whereas the remaining
upper bits are ignored.

## Quirks of low-precision Arithmetic

If you're exploring the use of low-precision dtypes in your code, you should be
careful to anticipate when the precision loss might lead to surprising results.
One example is the behavior of aggregations like `sum`; consider this `bfloat16`
summation in NumPy (run with version 1.24.2):

```python
>>> from ml_dtypes import bfloat16
>>> import numpy as np
>>> rng = np.random.default_rng(seed=0)
>>> vals = rng.uniform(size=10000).astype(bfloat16)
>>> vals.sum()
256
```
The true sum should be close to 5000, but numpy returns exactly 256: this is
because `bfloat16` does not have the precision to increment `256` by values less than
`1`:

```python
>>> bfloat16(256) + bfloat16(1)
256
```
After 256, the next representable value in bfloat16 is 258:

```python
>>> np.nextafter(bfloat16(256), bfloat16(np.inf))
258
```
For better results you can specify that the accumulation should happen in a
higher-precision type like `float32`:

```python
>>> vals.sum(dtype='float32').astype(bfloat16)
4992
```
In contrast to NumPy, projects like [JAX](http://jax.readthedocs.io/) which support
low-precision arithmetic more natively will often do these kinds of higher-precision
accumulations automatically:

```python
>>> import jax.numpy as jnp
>>> jnp.array(vals).sum()
Array(4992, dtype=bfloat16)
```

## License

*This is not an officially supported Google product.*

The `ml_dtypes` source code is licensed under the Apache 2.0 license
(see [LICENSE](LICENSE)). Pre-compiled wheels are built with the
[EIGEN](https://eigen.tuxfamily.org/) project, which is released under the
MPL 2.0 license (see [LICENSE.eigen](LICENSE.eigen)).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "ml-dtypes",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "ml_dtypes authors <ml_dtypes@google.com>",
    "download_url": "https://files.pythonhosted.org/packages/78/a7/aad060393123cfb383956dca68402aff3db1e1caffd5764887ed5153f41b/ml_dtypes-0.5.3.tar.gz",
    "platform": null,
    "description": "# ml_dtypes\n\n[![Unittests](https://github.com/jax-ml/ml_dtypes/actions/workflows/test.yml/badge.svg)](https://github.com/jax-ml/ml_dtypes/actions/workflows/test.yml)\n[![Wheel Build](https://github.com/jax-ml/ml_dtypes/actions/workflows/wheels.yml/badge.svg)](https://github.com/jax-ml/ml_dtypes/actions/workflows/wheels.yml)\n[![PyPI version](https://badge.fury.io/py/ml_dtypes.svg)](https://badge.fury.io/py/ml_dtypes)\n\n`ml_dtypes` is a stand-alone implementation of several NumPy dtype extensions used in machine learning libraries, including:\n\n- [`bfloat16`](https://en.wikipedia.org/wiki/Bfloat16_floating-point_format):\n  an alternative to the standard [`float16`](https://en.wikipedia.org/wiki/Half-precision_floating-point_format) format\n- 8-bit floating point representations, parameterized by number of exponent and\n  mantissa bits, as well as the bias (if any) and representability of infinity,\n  NaN, and signed zero.\n  * `float8_e3m4`\n  * `float8_e4m3`\n  * `float8_e4m3b11fnuz`\n  * `float8_e4m3fn`\n  * `float8_e4m3fnuz`\n  * `float8_e5m2`\n  * `float8_e5m2fnuz`\n  * `float8_e8m0fnu`\n- Microscaling (MX) sub-byte floating point representations:\n  * `float4_e2m1fn`\n  * `float6_e2m3fn`\n  * `float6_e3m2fn`\n- Narrow integer encodings:\n  * `int2`\n  * `int4`\n  * `uint2`\n  * `uint4`\n\nSee below for specifications of these number formats.\n\n## Installation\n\nThe `ml_dtypes` package is tested with Python versions 3.9-3.12, and can be installed\nwith the following command:\n```\npip install ml_dtypes\n```\nTo test your installation, you can run the following:\n```\npip install absl-py pytest\npytest --pyargs ml_dtypes\n```\nTo build from source, clone the repository and run:\n```\ngit submodule init\ngit submodule update\npip install .\n```\n\n## Example Usage\n\n```python\n>>> from ml_dtypes import bfloat16\n>>> import numpy as np\n>>> np.zeros(4, dtype=bfloat16)\narray([0, 0, 0, 0], dtype=bfloat16)\n```\nImporting `ml_dtypes` also registers the data types with numpy, so that they may\nbe referred to by their string name:\n\n```python\n>>> np.dtype('bfloat16')\ndtype(bfloat16)\n>>> np.dtype('float8_e5m2')\ndtype(float8_e5m2)\n```\n\n## Specifications of implemented floating point formats\n\n### `bfloat16`\n\nA `bfloat16` number is a single-precision float truncated at 16 bits.\n\nExponent: 8, Mantissa: 7, exponent bias: 127. IEEE 754, with NaN and inf.\n\n### `float4_e2m1fn`\n\nExponent: 2, Mantissa: 1, bias: 1.\n\nExtended range: no inf, no NaN.\n\nMicroscaling format, 4 bits (encoding: `0bSEEM`) using byte storage (higher 4\nbits are unused). NaN representation is undefined.\n\nPossible absolute values: [`0`, `0.5`, `1`, `1.5`, `2`, `3`, `4`, `6`]\n\n### `float6_e2m3fn`\n\nExponent: 2, Mantissa: 3, bias: 1.\n\nExtended range: no inf, no NaN.\n\nMicroscaling format, 6 bits (encoding: `0bSEEMMM`) using byte storage (higher 2\nbits are unused). NaN representation is undefined.\n\nPossible values range: [`-7.5`; `7.5`]\n\n### `float6_e3m2fn`\n\nExponent: 3, Mantissa: 2, bias: 3.\n\nExtended range: no inf, no NaN.\n\nMicroscaling format, 4 bits (encoding: `0bSEEEMM`) using byte storage (higher 2\nbits are unused). NaN representation is undefined.\n\nPossible values range: [`-28`; `28`]\n\n### `float8_e3m4`\n\nExponent: 3, Mantissa: 4, bias: 3. IEEE 754, with NaN and inf.\n\n### `float8_e4m3`\n\nExponent: 4, Mantissa: 3, bias: 7. IEEE 754, with NaN and inf.\n\n### `float8_e4m3b11fnuz`\n\nExponent: 4, Mantissa: 3, bias: 11.\n\nExtended range: no inf, NaN represented by 0b1000'0000.\n\n### `float8_e4m3fn`\n\nExponent: 4, Mantissa: 3, bias: 7.\n\nExtended range: no inf, NaN represented by 0bS111'1111.\n\nThe `fn` suffix is for consistency with the corresponding LLVM/MLIR type, signaling this type is not consistent with IEEE-754.  The `f` indicates it is finite values only. The `n` indicates it includes NaNs, but only at the outer range.\n\n### `float8_e4m3fnuz`\n\n8-bit floating point with 3 bit mantissa.\n\nAn 8-bit floating point type with 1 sign bit, 4 bits exponent and 3 bits mantissa. The suffix `fnuz` is consistent with LLVM/MLIR naming and is derived from the differences to IEEE floating point conventions. `F` is for \"finite\" (no infinities), `N` for with special NaN encoding, `UZ` for unsigned zero.\n\nThis type has the following characteristics:\n * bit encoding: S1E4M3 - `0bSEEEEMMM`\n * exponent bias: 8\n * infinities: Not supported\n * NaNs: Supported with sign bit set to 1, exponent bits and mantissa bits set to all 0s - `0b10000000`\n * denormals when exponent is 0\n\n### `float8_e5m2`\n\nExponent: 5, Mantissa: 2, bias: 15. IEEE 754, with NaN and inf.\n\n### `float8_e5m2fnuz`\n\n8-bit floating point with 2 bit mantissa.\n\nAn 8-bit floating point type with 1 sign bit, 5 bits exponent and 2 bits mantissa. The suffix `fnuz` is consistent with LLVM/MLIR naming and is derived from the differences to IEEE floating point conventions. `F` is for \"finite\" (no infinities), `N` for with special NaN encoding, `UZ` for unsigned zero.\n\nThis type has the following characteristics:\n * bit encoding: S1E5M2 - `0bSEEEEEMM`\n * exponent bias: 16\n * infinities: Not supported\n * NaNs: Supported with sign bit set to 1, exponent bits and mantissa bits set to all 0s - `0b10000000`\n * denormals when exponent is 0\n\n### `float8_e8m0fnu`\n\n[OpenCompute MX](https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf)\nscale format E8M0, which has the following properties:\n  * Unsigned format\n  * 8 exponent bits\n  * Exponent range from -127 to 127\n  * No zero and infinity\n  * Single NaN value (0xFF).\n\n## `int2`, `int4`, `uint2` and `uint4`\n\n2 and 4-bit integer types, where each element is represented unpacked (i.e.,\npadded up to a byte in memory).\n\nNumPy does not support types smaller than a single byte: for example, the\ndistance between adjacent elements in an array (`.strides`) is expressed as\nan integer number of bytes. Relaxing this restriction would be a considerable\nengineering project. These types therefore use an unpacked representation, where\neach element of the array is padded up to a byte in memory. The lower two or four\nbits of each byte contain the representation of the number, whereas the remaining\nupper bits are ignored.\n\n## Quirks of low-precision Arithmetic\n\nIf you're exploring the use of low-precision dtypes in your code, you should be\ncareful to anticipate when the precision loss might lead to surprising results.\nOne example is the behavior of aggregations like `sum`; consider this `bfloat16`\nsummation in NumPy (run with version 1.24.2):\n\n```python\n>>> from ml_dtypes import bfloat16\n>>> import numpy as np\n>>> rng = np.random.default_rng(seed=0)\n>>> vals = rng.uniform(size=10000).astype(bfloat16)\n>>> vals.sum()\n256\n```\nThe true sum should be close to 5000, but numpy returns exactly 256: this is\nbecause `bfloat16` does not have the precision to increment `256` by values less than\n`1`:\n\n```python\n>>> bfloat16(256) + bfloat16(1)\n256\n```\nAfter 256, the next representable value in bfloat16 is 258:\n\n```python\n>>> np.nextafter(bfloat16(256), bfloat16(np.inf))\n258\n```\nFor better results you can specify that the accumulation should happen in a\nhigher-precision type like `float32`:\n\n```python\n>>> vals.sum(dtype='float32').astype(bfloat16)\n4992\n```\nIn contrast to NumPy, projects like [JAX](http://jax.readthedocs.io/) which support\nlow-precision arithmetic more natively will often do these kinds of higher-precision\naccumulations automatically:\n\n```python\n>>> import jax.numpy as jnp\n>>> jnp.array(vals).sum()\nArray(4992, dtype=bfloat16)\n```\n\n## License\n\n*This is not an officially supported Google product.*\n\nThe `ml_dtypes` source code is licensed under the Apache 2.0 license\n(see [LICENSE](LICENSE)). Pre-compiled wheels are built with the\n[EIGEN](https://eigen.tuxfamily.org/) project, which is released under the\nMPL 2.0 license (see [LICENSE.eigen](LICENSE.eigen)).\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "ml_dtypes is a stand-alone implementation of several NumPy dtype extensions used in machine learning.",
    "version": "0.5.3",
    "project_urls": {
        "homepage": "https://github.com/jax-ml/ml_dtypes",
        "repository": "https://github.com/jax-ml/ml_dtypes"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "acbb1f32124ab6d3a279ea39202fe098aea95b2d81ef0ce1d48612b6bf715e82",
                "md5": "f765c46da1bdbdfc314447a656a1a4e5",
                "sha256": "0a1d68a7cb53e3f640b2b6a34d12c0542da3dd935e560fdf463c0c77f339fc20"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp310-cp310-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "f765c46da1bdbdfc314447a656a1a4e5",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 667409,
            "upload_time": "2025-07-29T18:38:17",
            "upload_time_iso_8601": "2025-07-29T18:38:17.321820Z",
            "url": "https://files.pythonhosted.org/packages/ac/bb/1f32124ab6d3a279ea39202fe098aea95b2d81ef0ce1d48612b6bf715e82/ml_dtypes-0.5.3-cp310-cp310-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1dace002d12ae19136e25bb41c7d14d7e1a1b08f3c0e99a44455ff6339796507",
                "md5": "b3e3a205eb132c5e27cf713434bfe98e",
                "sha256": "0cd5a6c711b5350f3cbc2ac28def81cd1c580075ccb7955e61e9d8f4bfd40d24"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "b3e3a205eb132c5e27cf713434bfe98e",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 4960702,
            "upload_time": "2025-07-29T18:38:19",
            "upload_time_iso_8601": "2025-07-29T18:38:19.616663Z",
            "url": "https://files.pythonhosted.org/packages/1d/ac/e002d12ae19136e25bb41c7d14d7e1a1b08f3c0e99a44455ff6339796507/ml_dtypes-0.5.3-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dd1279e9954e6b3255a4b1becb191a922d6e2e94d03d16a06341ae9261963ae8",
                "md5": "0af9b847674ec6133496c9df3ef9273e",
                "sha256": "bdcf26c2dbc926b8a35ec8cbfad7eff1a8bd8239e12478caca83a1fc2c400dc2"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0af9b847674ec6133496c9df3ef9273e",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 4933471,
            "upload_time": "2025-07-29T18:38:21",
            "upload_time_iso_8601": "2025-07-29T18:38:21.809817Z",
            "url": "https://files.pythonhosted.org/packages/dd/12/79e9954e6b3255a4b1becb191a922d6e2e94d03d16a06341ae9261963ae8/ml_dtypes-0.5.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d5aad1eff619e83cd1ddf6b561d8240063d978e5d887d1861ba09ef01778ec3a",
                "md5": "4aff6051377acedc838be78c0ca80451",
                "sha256": "aecbd7c5272c82e54d5b99d8435fd10915d1bc704b7df15e4d9ca8dc3902be61"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "4aff6051377acedc838be78c0ca80451",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 206330,
            "upload_time": "2025-07-29T18:38:23",
            "upload_time_iso_8601": "2025-07-29T18:38:23.663606Z",
            "url": "https://files.pythonhosted.org/packages/d5/aa/d1eff619e83cd1ddf6b561d8240063d978e5d887d1861ba09ef01778ec3a/ml_dtypes-0.5.3-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "aff1720cb1409b5d0c05cff9040c0e9fba73fa4c67897d33babf905d5d46a070",
                "md5": "dfd7fe774fce8964b3fa5304c8ea5a19",
                "sha256": "4a177b882667c69422402df6ed5c3428ce07ac2c1f844d8a1314944651439458"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp311-cp311-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "dfd7fe774fce8964b3fa5304c8ea5a19",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 667412,
            "upload_time": "2025-07-29T18:38:25",
            "upload_time_iso_8601": "2025-07-29T18:38:25.275839Z",
            "url": "https://files.pythonhosted.org/packages/af/f1/720cb1409b5d0c05cff9040c0e9fba73fa4c67897d33babf905d5d46a070/ml_dtypes-0.5.3-cp311-cp311-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6ad505861ede5d299f6599f86e6bc1291714e2116d96df003cfe23cc54bcc568",
                "md5": "1ab34cbfe3e61c37ebdc69a737c35ed0",
                "sha256": "9849ce7267444c0a717c80c6900997de4f36e2815ce34ac560a3edb2d9a64cd2"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "1ab34cbfe3e61c37ebdc69a737c35ed0",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 4964606,
            "upload_time": "2025-07-29T18:38:27",
            "upload_time_iso_8601": "2025-07-29T18:38:27.045270Z",
            "url": "https://files.pythonhosted.org/packages/6a/d5/05861ede5d299f6599f86e6bc1291714e2116d96df003cfe23cc54bcc568/ml_dtypes-0.5.3-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dbdc72992b68de367741bfab8df3b3fe7c29f982b7279d341aa5bf3e7ef737ea",
                "md5": "a3d32ad8b98409493c834eb198673e38",
                "sha256": "c3f5ae0309d9f888fd825c2e9d0241102fadaca81d888f26f845bc8c13c1e4ee"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a3d32ad8b98409493c834eb198673e38",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 4938435,
            "upload_time": "2025-07-29T18:38:29",
            "upload_time_iso_8601": "2025-07-29T18:38:29.193768Z",
            "url": "https://files.pythonhosted.org/packages/db/dc/72992b68de367741bfab8df3b3fe7c29f982b7279d341aa5bf3e7ef737ea/ml_dtypes-0.5.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "811cd27a930bca31fb07d975a2d7eaf3404f9388114463b9f15032813c98f893",
                "md5": "77aa4befc5d2a8a04c57640af0897e3d",
                "sha256": "58e39349d820b5702bb6f94ea0cb2dc8ec62ee81c0267d9622067d8333596a46"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "77aa4befc5d2a8a04c57640af0897e3d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 206334,
            "upload_time": "2025-07-29T18:38:30",
            "upload_time_iso_8601": "2025-07-29T18:38:30.687906Z",
            "url": "https://files.pythonhosted.org/packages/81/1c/d27a930bca31fb07d975a2d7eaf3404f9388114463b9f15032813c98f893/ml_dtypes-0.5.3-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1ad86922499effa616012cb8dc445280f66d100a7ff39b35c864cfca019b3f89",
                "md5": "2af1e42744381f133bb97c07da21e48a",
                "sha256": "66c2756ae6cfd7f5224e355c893cfd617fa2f747b8bbd8996152cbdebad9a184"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp311-cp311-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "2af1e42744381f133bb97c07da21e48a",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 157584,
            "upload_time": "2025-07-29T18:38:32",
            "upload_time_iso_8601": "2025-07-29T18:38:32.187257Z",
            "url": "https://files.pythonhosted.org/packages/1a/d8/6922499effa616012cb8dc445280f66d100a7ff39b35c864cfca019b3f89/ml_dtypes-0.5.3-cp311-cp311-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0debbc07c88a6ab002b4635e44585d80fa0b350603f11a2097c9d1bfacc03357",
                "md5": "a8b2dc8b299d86aed5dfd21055091cca",
                "sha256": "156418abeeda48ea4797db6776db3c5bdab9ac7be197c1233771e0880c304057"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp312-cp312-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "a8b2dc8b299d86aed5dfd21055091cca",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 663864,
            "upload_time": "2025-07-29T18:38:33",
            "upload_time_iso_8601": "2025-07-29T18:38:33.777478Z",
            "url": "https://files.pythonhosted.org/packages/0d/eb/bc07c88a6ab002b4635e44585d80fa0b350603f11a2097c9d1bfacc03357/ml_dtypes-0.5.3-cp312-cp312-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cf8911af9b0f21b99e6386b6581ab40fb38d03225f9de5f55cf52097047e2826",
                "md5": "b64c573fccaf555a9f921cfdcfe8f7d5",
                "sha256": "1db60c154989af253f6c4a34e8a540c2c9dce4d770784d426945e09908fbb177"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "b64c573fccaf555a9f921cfdcfe8f7d5",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 4951313,
            "upload_time": "2025-07-29T18:38:36",
            "upload_time_iso_8601": "2025-07-29T18:38:36.450954Z",
            "url": "https://files.pythonhosted.org/packages/cf/89/11af9b0f21b99e6386b6581ab40fb38d03225f9de5f55cf52097047e2826/ml_dtypes-0.5.3-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d8a9b98b86426c24900b0c754aad006dce2863df7ce0bb2bcc2c02f9cc7e8489",
                "md5": "892a7db41faf6973fdc3d26f221316b6",
                "sha256": "1b255acada256d1fa8c35ed07b5f6d18bc21d1556f842fbc2d5718aea2cd9e55"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "892a7db41faf6973fdc3d26f221316b6",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 4928805,
            "upload_time": "2025-07-29T18:38:38",
            "upload_time_iso_8601": "2025-07-29T18:38:38.290534Z",
            "url": "https://files.pythonhosted.org/packages/d8/a9/b98b86426c24900b0c754aad006dce2863df7ce0bb2bcc2c02f9cc7e8489/ml_dtypes-0.5.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "50c185e6be4fc09c6175f36fb05a45917837f30af9a5146a5151cb3a3f0f9e09",
                "md5": "6e7c2fd52d0140e92a291d4f58406f42",
                "sha256": "da65e5fd3eea434ccb8984c3624bc234ddcc0d9f4c81864af611aaebcc08a50e"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "6e7c2fd52d0140e92a291d4f58406f42",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 208182,
            "upload_time": "2025-07-29T18:38:39",
            "upload_time_iso_8601": "2025-07-29T18:38:39.720846Z",
            "url": "https://files.pythonhosted.org/packages/50/c1/85e6be4fc09c6175f36fb05a45917837f30af9a5146a5151cb3a3f0f9e09/ml_dtypes-0.5.3-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9e17cf5326d6867be057f232d0610de1458f70a8ce7b6290e4b4a277ea62b4cd",
                "md5": "08dc9c7ac2dd04ad44a9634b922f14ce",
                "sha256": "8bb9cd1ce63096567f5f42851f5843b5a0ea11511e50039a7649619abfb4ba6d"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp312-cp312-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "08dc9c7ac2dd04ad44a9634b922f14ce",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 161560,
            "upload_time": "2025-07-29T18:38:41",
            "upload_time_iso_8601": "2025-07-29T18:38:41.072289Z",
            "url": "https://files.pythonhosted.org/packages/9e/17/cf5326d6867be057f232d0610de1458f70a8ce7b6290e4b4a277ea62b4cd/ml_dtypes-0.5.3-cp312-cp312-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2d871bcc98a66de7b2455dfb292f271452cac9edc4e870796e0d87033524d790",
                "md5": "daee6437b30a982a0d8d6a64133643b2",
                "sha256": "5103856a225465371fe119f2fef737402b705b810bd95ad5f348e6e1a6ae21af"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "daee6437b30a982a0d8d6a64133643b2",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 663781,
            "upload_time": "2025-07-29T18:38:42",
            "upload_time_iso_8601": "2025-07-29T18:38:42.984574Z",
            "url": "https://files.pythonhosted.org/packages/2d/87/1bcc98a66de7b2455dfb292f271452cac9edc4e870796e0d87033524d790/ml_dtypes-0.5.3-cp313-cp313-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fd2cbd2a79ba7c759ee192b5601b675b180a3fd6ccf48ffa27fe1782d280f1a7",
                "md5": "6d8c7a069bd8ec7f23b4ed26c8dd240c",
                "sha256": "4cae435a68861660af81fa3c5af16b70ca11a17275c5b662d9c6f58294e0f113"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "6d8c7a069bd8ec7f23b4ed26c8dd240c",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 4956217,
            "upload_time": "2025-07-29T18:38:44",
            "upload_time_iso_8601": "2025-07-29T18:38:44.650277Z",
            "url": "https://files.pythonhosted.org/packages/fd/2c/bd2a79ba7c759ee192b5601b675b180a3fd6ccf48ffa27fe1782d280f1a7/ml_dtypes-0.5.3-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "14f3091ba84e5395d7fe5b30c081a44dec881cd84b408db1763ee50768b2ab63",
                "md5": "efaf1b869f623291ea7b05ac22031a67",
                "sha256": "6936283b56d74fbec431ca57ce58a90a908fdbd14d4e2d22eea6d72bb208a7b7"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "efaf1b869f623291ea7b05ac22031a67",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 4933109,
            "upload_time": "2025-07-29T18:38:46",
            "upload_time_iso_8601": "2025-07-29T18:38:46.405419Z",
            "url": "https://files.pythonhosted.org/packages/14/f3/091ba84e5395d7fe5b30c081a44dec881cd84b408db1763ee50768b2ab63/ml_dtypes-0.5.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1291e6c7a0d67a152b9330445f9f0cf8ae6eee9b83f990b8c57fe74631e42a90",
                "md5": "a6c37cea54c021ff0fdb5224fe207870",
                "sha256": "93c36a08a6d158db44f2eb9ce3258e53f24a9a4a695325a689494f0fdbc71770"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313t-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "a6c37cea54c021ff0fdb5224fe207870",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 689321,
            "upload_time": "2025-07-29T18:38:52",
            "upload_time_iso_8601": "2025-07-29T18:38:52.030637Z",
            "url": "https://files.pythonhosted.org/packages/12/91/e6c7a0d67a152b9330445f9f0cf8ae6eee9b83f990b8c57fe74631e42a90/ml_dtypes-0.5.3-cp313-cp313t-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9e6cb7b94b84a104a5be1883305b87d4c6bd6ae781504474b4cca067cb2340ec",
                "md5": "01579d0ee2ab1880844a38397d632f94",
                "sha256": "0e44a3761f64bc009d71ddb6d6c71008ba21b53ab6ee588dadab65e2fa79eafc"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "01579d0ee2ab1880844a38397d632f94",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 5274495,
            "upload_time": "2025-07-29T18:38:53",
            "upload_time_iso_8601": "2025-07-29T18:38:53.797085Z",
            "url": "https://files.pythonhosted.org/packages/9e/6c/b7b94b84a104a5be1883305b87d4c6bd6ae781504474b4cca067cb2340ec/ml_dtypes-0.5.3-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5b386266604dffb43378055394ea110570cf261a49876fc48f548dfe876f34cc",
                "md5": "4524ffcb73baaba6126673890ac5a2e3",
                "sha256": "bdf40d2aaabd3913dec11840f0d0ebb1b93134f99af6a0a4fd88ffe924928ab4"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "4524ffcb73baaba6126673890ac5a2e3",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 5285422,
            "upload_time": "2025-07-29T18:38:56",
            "upload_time_iso_8601": "2025-07-29T18:38:56.603094Z",
            "url": "https://files.pythonhosted.org/packages/5b/38/6266604dffb43378055394ea110570cf261a49876fc48f548dfe876f34cc/ml_dtypes-0.5.3-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bc24054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053",
                "md5": "688f58ea251b55965b860902c854a6b9",
                "sha256": "d0f730a17cf4f343b2c7ad50cee3bd19e969e793d2be6ed911f43086460096e4"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "688f58ea251b55965b860902c854a6b9",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 208187,
            "upload_time": "2025-07-29T18:38:48",
            "upload_time_iso_8601": "2025-07-29T18:38:48.240146Z",
            "url": "https://files.pythonhosted.org/packages/bc/24/054036dbe32c43295382c90a1363241684c4d6aaa1ecc3df26bd0c8d5053/ml_dtypes-0.5.3-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a63d7dc3ec6794a4a9004c765e0c341e32355840b698f73fd2daff46f128afc1",
                "md5": "aff79bf8d4082837083d4e895360b914",
                "sha256": "2db74788fc01914a3c7f7da0763427280adfc9cd377e9604b6b64eb8097284bd"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp313-cp313-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "aff79bf8d4082837083d4e895360b914",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.9",
            "size": 161559,
            "upload_time": "2025-07-29T18:38:50",
            "upload_time_iso_8601": "2025-07-29T18:38:50.493215Z",
            "url": "https://files.pythonhosted.org/packages/a6/3d/7dc3ec6794a4a9004c765e0c341e32355840b698f73fd2daff46f128afc1/ml_dtypes-0.5.3-cp313-cp313-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7c888612ff177d043a474b9408f0382605d881eeb4125ba89d4d4b3286573a83",
                "md5": "9f9a237581d7d5a6a5cef8e4fab1aafd",
                "sha256": "aec640bd94c4c85c0d11e2733bd13cbb10438fb004852996ec0efbc6cacdaf70"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "9f9a237581d7d5a6a5cef8e4fab1aafd",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 661182,
            "upload_time": "2025-07-29T18:38:58",
            "upload_time_iso_8601": "2025-07-29T18:38:58.414636Z",
            "url": "https://files.pythonhosted.org/packages/7c/88/8612ff177d043a474b9408f0382605d881eeb4125ba89d4d4b3286573a83/ml_dtypes-0.5.3-cp314-cp314-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6f2b0569a5e88b29240d373e835107c94ae9256fb2191d3156b43b2601859eff",
                "md5": "fbb3c79dfad6d957a31c7d87348e6cf1",
                "sha256": "bda32ce212baa724e03c68771e5c69f39e584ea426bfe1a701cb01508ffc7035"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "fbb3c79dfad6d957a31c7d87348e6cf1",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 4956187,
            "upload_time": "2025-07-29T18:39:00",
            "upload_time_iso_8601": "2025-07-29T18:39:00.611954Z",
            "url": "https://files.pythonhosted.org/packages/6f/2b/0569a5e88b29240d373e835107c94ae9256fb2191d3156b43b2601859eff/ml_dtypes-0.5.3-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5166273c2a06ae44562b104b61e6b14444da00061fd87652506579d7eb2c40b1",
                "md5": "d611999003d588165a32cb33730b8981",
                "sha256": "c205cac07d24a29840c163d6469f61069ce4b065518519216297fc2f261f8db9"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d611999003d588165a32cb33730b8981",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 4930911,
            "upload_time": "2025-07-29T18:39:02",
            "upload_time_iso_8601": "2025-07-29T18:39:02.405630Z",
            "url": "https://files.pythonhosted.org/packages/51/66/273c2a06ae44562b104b61e6b14444da00061fd87652506579d7eb2c40b1/ml_dtypes-0.5.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5321783dfb51f40d2660afeb9bccf3612b99f6a803d980d2a09132b0f9d216ab",
                "md5": "f852e106eb8fe08e03009c92dca8b152",
                "sha256": "e12e29764a0e66a7a31e9b8bf1de5cc0423ea72979f45909acd4292de834ccd3"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314t-macosx_10_13_universal2.whl",
            "has_sig": false,
            "md5_digest": "f852e106eb8fe08e03009c92dca8b152",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 689324,
            "upload_time": "2025-07-29T18:39:07",
            "upload_time_iso_8601": "2025-07-29T18:39:07.567946Z",
            "url": "https://files.pythonhosted.org/packages/53/21/783dfb51f40d2660afeb9bccf3612b99f6a803d980d2a09132b0f9d216ab/ml_dtypes-0.5.3-cp314-cp314t-macosx_10_13_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "09f7a82d249c711abf411ac027b7163f285487f5e615c3e0716c61033ce996ab",
                "md5": "f8ec07b6637976ac043594af716c1ee3",
                "sha256": "19f6c3a4f635c2fc9e2aa7d91416bd7a3d649b48350c51f7f715a09370a90d93"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "f8ec07b6637976ac043594af716c1ee3",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 5275917,
            "upload_time": "2025-07-29T18:39:09",
            "upload_time_iso_8601": "2025-07-29T18:39:09.339510Z",
            "url": "https://files.pythonhosted.org/packages/09/f7/a82d249c711abf411ac027b7163f285487f5e615c3e0716c61033ce996ab/ml_dtypes-0.5.3-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7f3c541c4b30815ab90ebfbb51df15d0b4254f2f9f1e2b4907ab229300d5e6f2",
                "md5": "cb258a5983065898947945064db366c5",
                "sha256": "5ab039ffb40f3dc0aeeeba84fd6c3452781b5e15bef72e2d10bcb33e4bbffc39"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "cb258a5983065898947945064db366c5",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 5285284,
            "upload_time": "2025-07-29T18:39:11",
            "upload_time_iso_8601": "2025-07-29T18:39:11.532881Z",
            "url": "https://files.pythonhosted.org/packages/7f/3c/541c4b30815ab90ebfbb51df15d0b4254f2f9f1e2b4907ab229300d5e6f2/ml_dtypes-0.5.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "93ab606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d",
                "md5": "3fd871cb70a4e3684f5d79271cf088ee",
                "sha256": "cd7c0bb22d4ff86d65ad61b5dd246812e8993fbc95b558553624c33e8b6903ea"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "3fd871cb70a4e3684f5d79271cf088ee",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 216664,
            "upload_time": "2025-07-29T18:39:03",
            "upload_time_iso_8601": "2025-07-29T18:39:03.927189Z",
            "url": "https://files.pythonhosted.org/packages/93/ab/606be3e87dc0821bd360c8c1ee46108025c31a4f96942b63907bb441b87d/ml_dtypes-0.5.3-cp314-cp314-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "30a2e900690ca47d01dffffd66375c5de8c4f8ced0f1ef809ccd3b25b3e6b8fa",
                "md5": "b1e212cc2f2289b13cdd10166f4f0228",
                "sha256": "9d55ea7f7baf2aed61bf1872116cefc9d0c3693b45cae3916897ee27ef4b835e"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp314-cp314-win_arm64.whl",
            "has_sig": false,
            "md5_digest": "b1e212cc2f2289b13cdd10166f4f0228",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.9",
            "size": 160203,
            "upload_time": "2025-07-29T18:39:05",
            "upload_time_iso_8601": "2025-07-29T18:39:05.671347Z",
            "url": "https://files.pythonhosted.org/packages/30/a2/e900690ca47d01dffffd66375c5de8c4f8ced0f1ef809ccd3b25b3e6b8fa/ml_dtypes-0.5.3-cp314-cp314-win_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "192dc61af51173083bbf2a3b0f1a1a01d50ef1830436880027433d1b75271083",
                "md5": "87749cc4f0df953d38bfefbf9df19888",
                "sha256": "5ee72568d46b9533ad54f78b1e1f3067c0534c5065120ea8ecc6f210d22748b3"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp39-cp39-macosx_10_9_universal2.whl",
            "has_sig": false,
            "md5_digest": "87749cc4f0df953d38bfefbf9df19888",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 663552,
            "upload_time": "2025-07-29T18:39:13",
            "upload_time_iso_8601": "2025-07-29T18:39:13.102759Z",
            "url": "https://files.pythonhosted.org/packages/19/2d/c61af51173083bbf2a3b0f1a1a01d50ef1830436880027433d1b75271083/ml_dtypes-0.5.3-cp39-cp39-macosx_10_9_universal2.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "610ea628f2aefd719745e8a13492375a55cedea77c0cfc917b1ce11bde435c68",
                "md5": "66a69b9836dd708a0ed687b9ad600d78",
                "sha256": "01de48de4537dc3c46e684b969a40ec36594e7eeb7c69e9a093e7239f030a28a"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "has_sig": false,
            "md5_digest": "66a69b9836dd708a0ed687b9ad600d78",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 4952704,
            "upload_time": "2025-07-29T18:39:14",
            "upload_time_iso_8601": "2025-07-29T18:39:14.829413Z",
            "url": "https://files.pythonhosted.org/packages/61/0e/a628f2aefd719745e8a13492375a55cedea77c0cfc917b1ce11bde435c68/ml_dtypes-0.5.3-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f82e5ba92f1f99d1f5f62bffec614a5b8161e55c3961257c902fa26dbe909baa",
                "md5": "0f9857476897b58bad5008816fcc5676",
                "sha256": "8b1a6e231b0770f2894910f1dce6d2f31d65884dbf7668f9b08d73623cdca909"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0f9857476897b58bad5008816fcc5676",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 4923538,
            "upload_time": "2025-07-29T18:39:16",
            "upload_time_iso_8601": "2025-07-29T18:39:16.581355Z",
            "url": "https://files.pythonhosted.org/packages/f8/2e/5ba92f1f99d1f5f62bffec614a5b8161e55c3961257c902fa26dbe909baa/ml_dtypes-0.5.3-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "703bf801c69027866ea6e387224551185fedef62ad8e2e71181ec0d9dda905f7",
                "md5": "6c888a4b2011389510dab723e9dba413",
                "sha256": "a4f39b9bf6555fab9bfb536cf5fdd1c1c727e8d22312078702e9ff005354b37f"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "6c888a4b2011389510dab723e9dba413",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 206567,
            "upload_time": "2025-07-29T18:39:18",
            "upload_time_iso_8601": "2025-07-29T18:39:18.047291Z",
            "url": "https://files.pythonhosted.org/packages/70/3b/f801c69027866ea6e387224551185fedef62ad8e2e71181ec0d9dda905f7/ml_dtypes-0.5.3-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "78a7aad060393123cfb383956dca68402aff3db1e1caffd5764887ed5153f41b",
                "md5": "581d831757c3a1223efc6d765aff9cd6",
                "sha256": "95ce33057ba4d05df50b1f3cfefab22e351868a843b3b15a46c65836283670c9"
            },
            "downloads": -1,
            "filename": "ml_dtypes-0.5.3.tar.gz",
            "has_sig": false,
            "md5_digest": "581d831757c3a1223efc6d765aff9cd6",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 692316,
            "upload_time": "2025-07-29T18:39:19",
            "upload_time_iso_8601": "2025-07-29T18:39:19.454582Z",
            "url": "https://files.pythonhosted.org/packages/78/a7/aad060393123cfb383956dca68402aff3db1e1caffd5764887ed5153f41b/ml_dtypes-0.5.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-29 18:39:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jax-ml",
    "github_project": "ml_dtypes",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "ml-dtypes"
}
        
Elapsed time: 0.86919s