Skip to main content

Python-first Development for AI Compilers

Project description

MLC Logo

MLC-Python

Python-first Development for AI Compilers.

MLC is a Python-first toolkit that streamlines the development of AI compilers, runtimes, and compound AI systems with its Pythonic dataclasses, structure-aware tooling, and Python-based text formats.

Beyond pure Python, MLC natively supports zero-copy interoperation with C++ plugins, and enables a smooth engineering practice transitioning from Python to hybrid or Python-free development.

:inbox_tray: Installation

pip install -U mlc-python

:key: Key Features

:building_construction: Define IRs with MLC Dataclasses

MLC provides Pythonic dataclasses:

import mlc.dataclasses as mlcd

@mlcd.py_class("demo.MyClass")
class MyClass(mlcd.PyClass):
  a: int
  b: str
  c: float | None

instance = MyClass(12, "test", c=None)

Type safety. MLC dataclass enforces strict type checking using Cython and C++.

>>> instance.c = 10; print(instance)
demo.MyClass(a=12, b='test', c=10.0)

>>> instance.c = "wrong type"
TypeError: must be real number, not str

>>> instance.non_exist = 1
AttributeError: 'MyClass' object has no attribute 'non_exist' and no __dict__ for setting new attributes

Serialization. MLC dataclasses are picklable and JSON-serializable.

>>> MyClass.from_json(instance.json())
demo.MyClass(a=12, b='test', c=None)

>>> import pickle; pickle.loads(pickle.dumps(instance))
demo.MyClass(a=12, b='test', c=None)

:snake: Design Python-based Text Formats for IRs

Printer. MLC looks up method __ir_print__ to convert IR nodes to Python AST:

[Example]. Copy the toy IR definition to REPL and then create a Func node below:

>>> a, b, c, d, e = Var("a"), Var("b"), Var("c"), Var("d"), Var("e")
>>> f = Func("f", [a, b, c],
  stmts=[
    Assign(lhs=d, rhs=Add(a, b)),  # d = a + b
    Assign(lhs=e, rhs=Add(d, c)),  # e = d + c
  ],
  ret=e)
  • Method mlc.printer.to_python converts an IR node to Python-based text;
>>> print(mlcp.to_python(f))  # Stringify to Python
def f(a, b, c):
  d = a + b
  e = d + c
  return e
  • Method mlc.printer.print_python further renders the text with proper syntax highlighting. [Screenshot]
>>> mlcp.print_python(f)  # Syntax highlighting

AST Parser. MLC has a concise set of APIs for implementing parser with Python's AST module, including:

  • Inspection API that obtains source code of a Python class or function and the variables they capture;
  • Variable management APIs that help with proper scoping;
  • AST fragment evaluation APIs;
  • Error rendering APIs.

[Example]. With MLC APIs, a parser can be implemented with 100 lines of code for the Python text format above defined by __ir_printer__.

:dart: Test IRs with MLC Structure-Aware Tooling

By annotating IR definitions with structure, MLC supports structural equality and structural hashing to detect structural equivalence between IRs:

Define a toy IR with `structure`.
import mlc.dataclasses as mlcd

@mlcd.py_class
class Expr(mlcd.PyClass):
  def __add__(self, other):
    return Add(a=self, b=other)

@mlcd.py_class(structure="nobind")
class Add(Expr):
  a: Expr
  b: Expr

@mlcd.py_class(structure="var")
class Var(Expr):
  name: str = mlcd.field(structure=None) # excludes `name` from defined structure

@mlcd.py_class(structure="bind")
class Let(Expr):
  rhs: Expr
  lhs: Var = mlcd.field(structure="bind") # `Let.lhs` is the def-site
  body: Expr

Structural equality. Member method eq_s compares the structural equality (alpha equivalence) of two IRs represented by MLC's structured dataclass.

>>> x, y, z = Var("x"), Var("y"), Var("z")
>>> L1 = Let(rhs=x + y, lhs=z, body=z)  # let z = x + y; z
>>> L2 = Let(rhs=y + z, lhs=x, body=x)  # let x = y + z; x
>>> L3 = Let(rhs=x + x, lhs=z, body=z)  # let z = x + x; z
>>> L1.eq_s(L2)
True
>>> L1.eq_s(L3, assert_mode=True)
ValueError: Structural equality check failed at {root}.rhs.b: Inconsistent binding. RHS has been bound to a different node while LHS is not bound

Structural hashing. The structure of MLC dataclasses can be hashed via hash_s, which guarantees if two dataclasses are alpha-equivalent, they will share the same structural hash:

>>> L1_hash, L2_hash, L3_hash = L1.hash_s(), L2.hash_s(), L3.hash_s()
>>> assert L1_hash == L2_hash
>>> assert L1_hash != L3_hash

:zap: Migrate Gradually to C++ with MLC Plugins

(🚧 Under construction)

MLC seamlessly supports zero-copy bidirectional interoperabilty with C++ plugins with no extra dependency. By gradually migrating classes and methods one at a time, a pure Python prototype can be transitioned to hybrid or Python-free development.

:fuelpump: Development

:gear: Editable Build

pip install --verbose --editable ".[dev]"
pre-commit install

:ferris_wheel: Create Wheels

This project uses cibuildwheel to build cross-platform wheels. See .github/workflows/wheels.ym for more details.

export CIBW_BUILD_VERBOSITY=3
export CIBW_BUILD="cp3*-manylinux_x86_64"
python -m pip install pipx
pipx run cibuildwheel==2.22.0 --output-dir wheelhouse

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

mlc_python-0.2.4-cp313-cp313-win_amd64.whl (6.9 MB view details)

Uploaded CPython 3.13 Windows x86-64

mlc_python-0.2.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

mlc_python-0.2.4-cp313-cp313-macosx_11_0_arm64.whl (14.8 MB view details)

Uploaded CPython 3.13 macOS 11.0+ ARM64

mlc_python-0.2.4-cp313-cp313-macosx_10_13_x86_64.whl (14.6 MB view details)

Uploaded CPython 3.13 macOS 10.13+ x86-64

mlc_python-0.2.4-cp312-cp312-win_amd64.whl (6.9 MB view details)

Uploaded CPython 3.12 Windows x86-64

mlc_python-0.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (31.6 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

mlc_python-0.2.4-cp312-cp312-macosx_11_0_arm64.whl (14.8 MB view details)

Uploaded CPython 3.12 macOS 11.0+ ARM64

mlc_python-0.2.4-cp312-cp312-macosx_10_13_x86_64.whl (14.6 MB view details)

Uploaded CPython 3.12 macOS 10.13+ x86-64

mlc_python-0.2.4-cp311-cp311-win_amd64.whl (6.9 MB view details)

Uploaded CPython 3.11 Windows x86-64

mlc_python-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (31.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

mlc_python-0.2.4-cp311-cp311-macosx_11_0_arm64.whl (14.8 MB view details)

Uploaded CPython 3.11 macOS 11.0+ ARM64

mlc_python-0.2.4-cp311-cp311-macosx_10_9_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

mlc_python-0.2.4-cp310-cp310-win_amd64.whl (6.9 MB view details)

Uploaded CPython 3.10 Windows x86-64

mlc_python-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (31.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

mlc_python-0.2.4-cp310-cp310-macosx_11_0_arm64.whl (14.8 MB view details)

Uploaded CPython 3.10 macOS 11.0+ ARM64

mlc_python-0.2.4-cp310-cp310-macosx_10_9_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

mlc_python-0.2.4-cp39-cp39-win_amd64.whl (6.9 MB view details)

Uploaded CPython 3.9 Windows x86-64

mlc_python-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (31.4 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

mlc_python-0.2.4-cp39-cp39-macosx_11_0_arm64.whl (14.8 MB view details)

Uploaded CPython 3.9 macOS 11.0+ ARM64

mlc_python-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl (14.2 MB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

File details

Details for the file mlc_python-0.2.4-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 e73ae762902bd73690252b9922f76d10d3923577b25356def420bcf8f57dd2fd
MD5 6c3a76317960536ee0e1f1ba7c7c7361
BLAKE2b-256 f9ce394eb2637932c7c2a82b79b1c6d3e3c79e88b96e98febaa4344f5d788b1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp313-cp313-win_amd64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 299a196d0b7499b66b562a430c6a79f6d84fe1eb1694b0cc7dda4198a241f668
MD5 565410ba120e6afe136d6dcbf6e24d89
BLAKE2b-256 f5dd60f6ed79c198e1b99fd24ed17f5413a4e726b09b2bf4f1100e8759584305

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 81106a492f4ab43d4dfa3f9f4d1c71fae618306a48313f71be2f80d22282d69c
MD5 86ea9cb84b5b5fbfbc27d420243c3198
BLAKE2b-256 87b3878329e119ffcd3183fba829ca02fc434f7b0613e5d7f34deed021100560

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 16251f69556c91d4999f6968c8ddb07687ac626680ff03d0cb4487870f2905c1
MD5 06c2c54e8532c2ba52ac8b7e899f98be
BLAKE2b-256 c3126588acdf5644b279ad6add4fcbded41dd6c95a58291218f6714f276110bc

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 72241ae1db6d1bb8c60c372c097ada9448abb4823d295dbbccdd1ed79356a545
MD5 c43dd6d6b4960a11371935ea12061259
BLAKE2b-256 0a0e5c4df2ded063be9d13ae70813d52be55e9db217593036946248b6f1eaa71

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp312-cp312-win_amd64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b54c39565d928c01c287ad3efbfebd1c3bcba4887efafb2a2ca9d8b99e520149
MD5 a562e4b16ab8c5f0e6987da7e3026c52
BLAKE2b-256 f09ec48b393a4859f02fac12e00d2af6388b1e6b7129a512f7f61d40907578e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f3c22b223770e047d393bd6323ebcfea67dfb0f0fcf6b27b0d973129f791becc
MD5 35166407401b909c9a41469161734fbb
BLAKE2b-256 18df2fd6efd4ed9610fef4ddfb1ffb22719f3c77bd5417d76f1d579b45805146

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 83eaf114958bdf8d25be0e3059e0d07e954882840582b15f4dd0bdbac7231693
MD5 5f662e76160a5e96d42e28bf2659e779
BLAKE2b-256 56cdb265554687d1bf713556094141f64cdece89e62982fe334a0b989b8ff6fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 895a98453cc7c99f571d127eb2e8723a8d84f480b2af311692d816e7f52ecabb
MD5 f4c85ff03448f033551b65043c8521ab
BLAKE2b-256 d592aab7b3cad1c2010e5f48eb373b1bfd1f738a69bcae20ca39c11c7e622162

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp311-cp311-win_amd64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 696d7d6df99ed184cbb3bb830da7010743aec4df148d5c6c0b318c58c6d0126e
MD5 089a442e934bca4ee96eb1991ab416c9
BLAKE2b-256 172def896aeb5d64b0b5541ac2d33fe3c2204695305ea8a6284f8a8cb5692ed8

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c7b23553e7fcedc3ee23557cfd942595e310466b6fba4c05e782a9e8f5fde1cd
MD5 9327e8beee72992445d1f4f9f236a002
BLAKE2b-256 6f1d41d10cd502b3b6ee93e1892134de0c0af7f5bb9754530b7301ded0645597

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 0ef0cc1a55f6aca89b8e12502c21ca56bd61cdcde1a99c38b08d42be5f01d189
MD5 0928dc6c68c67fa806c7aef443137b52
BLAKE2b-256 817a261f189b1762b4f7143e87491cf38e6bb7c725d79f4711eb585e3e4b3f1c

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 2b51712964a95106345cd739520f5a016c812c2af5cabd06bfc71256bd988b05
MD5 226e24828bd1df2e6120c762181644ce
BLAKE2b-256 368eac1ae4e904d72350a7c13b230a7f9d4df0c280278a0f02d3be2cbe0d1a77

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp310-cp310-win_amd64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ce49f17855d6c2e8a7f429f34b2806543df5da3d9c11361642d5243a5847fa8e
MD5 f32709533793d98a24677f74c8ee2a55
BLAKE2b-256 944d6750eb8b0a53117f86031056e6d0f65fded758fdb609e5c3bfc7852832b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 158b7da75f37cb3fff1293863970c9658029ad25530a0cd93acaf41b0004fa1c
MD5 bd710eee8cbf1319d0474282e4018fbe
BLAKE2b-256 bb5aba390be3f0354628e04dafe75aec4416057676d228c349508e0908123f1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 67f6d287fe553831d122c40950fd1ef7ec9d7c400634d9860f401f65c4431867
MD5 ab153b30a2c32fd528558f8e99390d0b
BLAKE2b-256 2a4f2ec818076318f8ae173803d678277f757ff74a2d0b31bc9accf2eff7b83b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e6fd46aa438e9b98c7d51fc5a19809381a233977e28a028ab9c0aa8a2b3544d3
MD5 7cbb65bd75c3e77955cad857b377e025
BLAKE2b-256 daaa1991088798a6e38e3c61998f240767709adac0c9405e830ff502321996cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp39-cp39-win_amd64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3dcb0c583918441b12adebba9233eb35835c7829b3c982c69e880c5bf6c21b47
MD5 04c2be20a48e960e0d66983de929d2fb
BLAKE2b-256 79abe22313aafa2e27d00b8ef20dcb75a1948fb3a7e22b01df139bfc9f902674

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f35c8189708abe605c81d4707d18aa11a272bd773f788984eef5d900235fe2a5
MD5 dad84a76e95bdae90950532f3456593c
BLAKE2b-256 9164990f3d0f0b7fe8fcb3d413b1a9aadd3dc2a40b3e551dc473126184ddd149

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp39-cp39-macosx_11_0_arm64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mlc_python-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for mlc_python-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d79acba6dc4ab83e958d7cad741e550b6d292655244dda48d92d0a08a1b102d7
MD5 102efa83b975b970c94eb85c06de13c7
BLAKE2b-256 dce1ad3d3bee847011d063b64b4206825abb2a85d4ce00de0f3605f3afca1096

See more details on using hashes here.

Provenance

The following attestation bundles were made for mlc_python-0.2.4-cp39-cp39-macosx_10_9_x86_64.whl:

Publisher: release.yml on mlc-ai/mlc-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page