nutpie


Namenutpie JSON
Version 0.16.2 PyPI version JSON
download
home_pageNone
SummarySample Stan or PyMC models
upload_time2025-10-23 09:32:48
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # nutpie: A fast sampler for Bayesian posteriors

The `nutpie` package provides a fast NUTS sampler for PyMC and Stan models.

See the [documentation](https://pymc-devs.github.io/nutpie/) for more details.

## Installation

nutpie can be installed using Conda or Mamba from conda-forge with

```bash
mamba install -c conda-forge nutpie
```

Or using pip:

```bash
pip install nutpie
```

To install it from source, install a Rust compiler and maturin and then

```bash
maturin develop --release
```

If you want to use the nightly SIMD implementation for some of the math functions,
switch to Rust nightly and then install with the `simd_support` feature in then
nutpie directory:

```bash
rustup override set nightly
maturin develop --release --features=simd_support
```

## Usage with PyMC

First, PyMC and Numba need to be installed, for example using

```bash
mamba install -c conda-forge pymc numba
```

We need to create a model:

```python
import pymc as pm
import numpy as np
import nutpie
import pandas as pd
import seaborn as sns

# Load the radon dataset
data = pd.read_csv(pm.get_data("radon.csv"))
data["log_radon"] = data["log_radon"].astype(np.float64)
county_idx, counties = pd.factorize(data.county)
coords = {"county": counties, "obs_id": np.arange(len(county_idx))}

# Create a simple hierarchical model for the radon dataset
with pm.Model(coords=coords, check_bounds=False) as pymc_model:
    intercept = pm.Normal("intercept", sigma=10)

    # County effects
    raw = pm.ZeroSumNormal("county_raw", dims="county")
    sd = pm.HalfNormal("county_sd")
    county_effect = pm.Deterministic("county_effect", raw * sd, dims="county")

    # Global floor effect
    floor_effect = pm.Normal("floor_effect", sigma=2)

    # County:floor interaction
    raw = pm.ZeroSumNormal("county_floor_raw", dims="county")
    sd = pm.HalfNormal("county_floor_sd")
    county_floor_effect = pm.Deterministic(
        "county_floor_effect", raw * sd, dims="county"
    )

    mu = (
        intercept
        + county_effect[county_idx]
        + floor_effect * data.floor.values
        + county_floor_effect[county_idx] * data.floor.values
    )

    sigma = pm.HalfNormal("sigma", sigma=1.5)
    pm.Normal(
        "log_radon", mu=mu, sigma=sigma, observed=data.log_radon.values, dims="obs_id"
    )
```

We then compile this model and sample form the posterior:

```python
compiled_model = nutpie.compile_pymc_model(pymc_model)
trace_pymc = nutpie.sample(compiled_model)
```

`trace_pymc` now contains an ArviZ `InferenceData` object, including sampling
statistics and the posterior of the variables defined above.

We can also control the sampler in a non-blocking way:

```python
# The sampler will now run the the background
sampler = nutpie.sample(compiled_model, blocking=False)

# Pause and resume the sampling
sampler.pause()
sampler.resume()

# Wait for the sampler to finish (up to timeout seconds)
sampler.wait(timeout=0.1)
# Note that not passing any timeout to `wait` will
# wait until the sampler finishes, then return the InferenceData object:
idata = sampler.wait()

# or we can also abort the sampler (and return the incomplete trace)
incomplete_trace = sampler.abort()

# or cancel and discard all progress:
sampler.cancel()
```

## Usage with Stan

In order to sample from Stan model, `bridgestan` needs to be installed.
A pip package is available, but right now this can not be installed using Conda.

```bash
pip install bridgestan
```

When we install nutpie with pip, we can also specify that we want optional
dependencies for Stan models using

```
pip install 'nutpie[stan]'
```

In addition, a C++ compiler needs to be available. For details see
[the Stan docs](https://mc-stan.org/docs/cmdstan-guide/installation.html#cpp-toolchain).

We can then compile a Stan model, and sample using nutpie:

```python
import nutpie

code = """
data {
    real mu;
}
parameters {
    real x;
}
model {
    x ~ normal(mu, 1);
}
"""

compiled = nutpie.compile_stan_model(code=code)
# Provide data
compiled = compiled.with_data(mu=3.)
trace = nutpie.sample(compiled)
```

## Advantages

nutpie uses [`nuts-rs`](https://github.com/pymc-devs/nuts-rs), a library written in Rust, that implements NUTS as in
PyMC and Stan, but with a slightly different mass matrix tuning method as
those. It often produces a higher effective sample size per gradient
evaluation, and tends to converge faster and with fewer gradient evaluation.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "nutpie",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": null,
    "author_email": "PyMC Developers <pymc.devs@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/70/02/43f94ffef25b60e55f09dd6649aa8fd731462bb4abbdfa820ce22598ec29/nutpie-0.16.2.tar.gz",
    "platform": null,
    "description": "# nutpie: A fast sampler for Bayesian posteriors\n\nThe `nutpie` package provides a fast NUTS sampler for PyMC and Stan models.\n\nSee the [documentation](https://pymc-devs.github.io/nutpie/) for more details.\n\n## Installation\n\nnutpie can be installed using Conda or Mamba from conda-forge with\n\n```bash\nmamba install -c conda-forge nutpie\n```\n\nOr using pip:\n\n```bash\npip install nutpie\n```\n\nTo install it from source, install a Rust compiler and maturin and then\n\n```bash\nmaturin develop --release\n```\n\nIf you want to use the nightly SIMD implementation for some of the math functions,\nswitch to Rust nightly and then install with the `simd_support` feature in then\nnutpie directory:\n\n```bash\nrustup override set nightly\nmaturin develop --release --features=simd_support\n```\n\n## Usage with PyMC\n\nFirst, PyMC and Numba need to be installed, for example using\n\n```bash\nmamba install -c conda-forge pymc numba\n```\n\nWe need to create a model:\n\n```python\nimport pymc as pm\nimport numpy as np\nimport nutpie\nimport pandas as pd\nimport seaborn as sns\n\n# Load the radon dataset\ndata = pd.read_csv(pm.get_data(\"radon.csv\"))\ndata[\"log_radon\"] = data[\"log_radon\"].astype(np.float64)\ncounty_idx, counties = pd.factorize(data.county)\ncoords = {\"county\": counties, \"obs_id\": np.arange(len(county_idx))}\n\n# Create a simple hierarchical model for the radon dataset\nwith pm.Model(coords=coords, check_bounds=False) as pymc_model:\n    intercept = pm.Normal(\"intercept\", sigma=10)\n\n    # County effects\n    raw = pm.ZeroSumNormal(\"county_raw\", dims=\"county\")\n    sd = pm.HalfNormal(\"county_sd\")\n    county_effect = pm.Deterministic(\"county_effect\", raw * sd, dims=\"county\")\n\n    # Global floor effect\n    floor_effect = pm.Normal(\"floor_effect\", sigma=2)\n\n    # County:floor interaction\n    raw = pm.ZeroSumNormal(\"county_floor_raw\", dims=\"county\")\n    sd = pm.HalfNormal(\"county_floor_sd\")\n    county_floor_effect = pm.Deterministic(\n        \"county_floor_effect\", raw * sd, dims=\"county\"\n    )\n\n    mu = (\n        intercept\n        + county_effect[county_idx]\n        + floor_effect * data.floor.values\n        + county_floor_effect[county_idx] * data.floor.values\n    )\n\n    sigma = pm.HalfNormal(\"sigma\", sigma=1.5)\n    pm.Normal(\n        \"log_radon\", mu=mu, sigma=sigma, observed=data.log_radon.values, dims=\"obs_id\"\n    )\n```\n\nWe then compile this model and sample form the posterior:\n\n```python\ncompiled_model = nutpie.compile_pymc_model(pymc_model)\ntrace_pymc = nutpie.sample(compiled_model)\n```\n\n`trace_pymc` now contains an ArviZ `InferenceData` object, including sampling\nstatistics and the posterior of the variables defined above.\n\nWe can also control the sampler in a non-blocking way:\n\n```python\n# The sampler will now run the the background\nsampler = nutpie.sample(compiled_model, blocking=False)\n\n# Pause and resume the sampling\nsampler.pause()\nsampler.resume()\n\n# Wait for the sampler to finish (up to timeout seconds)\nsampler.wait(timeout=0.1)\n# Note that not passing any timeout to `wait` will\n# wait until the sampler finishes, then return the InferenceData object:\nidata = sampler.wait()\n\n# or we can also abort the sampler (and return the incomplete trace)\nincomplete_trace = sampler.abort()\n\n# or cancel and discard all progress:\nsampler.cancel()\n```\n\n## Usage with Stan\n\nIn order to sample from Stan model, `bridgestan` needs to be installed.\nA pip package is available, but right now this can not be installed using Conda.\n\n```bash\npip install bridgestan\n```\n\nWhen we install nutpie with pip, we can also specify that we want optional\ndependencies for Stan models using\n\n```\npip install 'nutpie[stan]'\n```\n\nIn addition, a C++ compiler needs to be available. For details see\n[the Stan docs](https://mc-stan.org/docs/cmdstan-guide/installation.html#cpp-toolchain).\n\nWe can then compile a Stan model, and sample using nutpie:\n\n```python\nimport nutpie\n\ncode = \"\"\"\ndata {\n    real mu;\n}\nparameters {\n    real x;\n}\nmodel {\n    x ~ normal(mu, 1);\n}\n\"\"\"\n\ncompiled = nutpie.compile_stan_model(code=code)\n# Provide data\ncompiled = compiled.with_data(mu=3.)\ntrace = nutpie.sample(compiled)\n```\n\n## Advantages\n\nnutpie uses [`nuts-rs`](https://github.com/pymc-devs/nuts-rs), a library written in Rust, that implements NUTS as in\nPyMC and Stan, but with a slightly different mass matrix tuning method as\nthose. It often produces a higher effective sample size per gradient\nevaluation, and tends to converge faster and with fewer gradient evaluation.\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Sample Stan or PyMC models",
    "version": "0.16.2",
    "project_urls": {
        "Homepage": "https://pymc-devs.github.io/nutpie/",
        "Repository": "https://github.com/pymc-devs/nutpie"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bd104005ed2fff4d92b684d4cc7ab7c753a50746ddf8095df0e9b1efe56b71bc",
                "md5": "001c10cef933fb49b59a20a8ac3dffb9",
                "sha256": "338c4a3cf134df3cf97d26e3337d29811089d37cb719602507293e8067a48d19"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp310-cp310-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "001c10cef933fb49b59a20a8ac3dffb9",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 8572158,
            "upload_time": "2025-10-23T09:32:42",
            "upload_time_iso_8601": "2025-10-23T09:32:42.249666Z",
            "url": "https://files.pythonhosted.org/packages/bd/10/4005ed2fff4d92b684d4cc7ab7c753a50746ddf8095df0e9b1efe56b71bc/nutpie-0.16.2-cp310-cp310-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "875a88a44eb025415a543e03df942c7cb78ca8cc36afcb3512a9cef6ec2ffc55",
                "md5": "0e65f95424809eabca8f38e68e20af09",
                "sha256": "3c3365938e3fb6866809b6d81677da82bb9639067bb7e5a7a2ec300239bbf1ac"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "0e65f95424809eabca8f38e68e20af09",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 7777701,
            "upload_time": "2025-10-23T09:32:33",
            "upload_time_iso_8601": "2025-10-23T09:32:33.646297Z",
            "url": "https://files.pythonhosted.org/packages/87/5a/88a44eb025415a543e03df942c7cb78ca8cc36afcb3512a9cef6ec2ffc55/nutpie-0.16.2-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4fdd4f11df1c37094d65ed2e17db305d8a8b1ef22e058be7bcef99f18944547c",
                "md5": "29c6e1df1ae2d5857c939598e2dff55b",
                "sha256": "9fc2864581042d95b8bcbeebd5e20bc82756aab34abb5f58f4a7d8fd0de41f59"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "29c6e1df1ae2d5857c939598e2dff55b",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 7407087,
            "upload_time": "2025-10-23T09:32:19",
            "upload_time_iso_8601": "2025-10-23T09:32:19.639699Z",
            "url": "https://files.pythonhosted.org/packages/4f/dd/4f11df1c37094d65ed2e17db305d8a8b1ef22e058be7bcef99f18944547c/nutpie-0.16.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "295807dc8bac0b1bcc81422922236a76994e5fcc800eb310b53539dd9351f29e",
                "md5": "f38b6e67ccad43cbbda0acd760491a08",
                "sha256": "55f7fc8835e4460419171f384a9a98f179a8b8ca88f694648e081d0dbd111ebd"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "f38b6e67ccad43cbbda0acd760491a08",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 8128190,
            "upload_time": "2025-10-23T09:32:25",
            "upload_time_iso_8601": "2025-10-23T09:32:25.821165Z",
            "url": "https://files.pythonhosted.org/packages/29/58/07dc8bac0b1bcc81422922236a76994e5fcc800eb310b53539dd9351f29e/nutpie-0.16.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "642361272e4756a423416d9faa26c76eb95281c3ffeb744cd40446e79ed754d4",
                "md5": "b655540cf6ea7032315f18fc555e7e90",
                "sha256": "b773d8da54b5a077535e7b17f5d44a446d5e682290ac4a8c193218e34f17faea"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "b655540cf6ea7032315f18fc555e7e90",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.10",
            "size": 8346981,
            "upload_time": "2025-10-23T09:32:49",
            "upload_time_iso_8601": "2025-10-23T09:32:49.962801Z",
            "url": "https://files.pythonhosted.org/packages/64/23/61272e4756a423416d9faa26c76eb95281c3ffeb744cd40446e79ed754d4/nutpie-0.16.2-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "72121c0cd22d093308ecd36bb6ffe5776f5c5f4174738654f5f886adad2394d5",
                "md5": "2f4253dfdecf1468cddfb23c13286d6e",
                "sha256": "d8c5e0988989d00bede2fbe15f767868269955957b54b668efc4fb4c808c5308"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp311-cp311-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2f4253dfdecf1468cddfb23c13286d6e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 8571037,
            "upload_time": "2025-10-23T09:32:43",
            "upload_time_iso_8601": "2025-10-23T09:32:43.998785Z",
            "url": "https://files.pythonhosted.org/packages/72/12/1c0cd22d093308ecd36bb6ffe5776f5c5f4174738654f5f886adad2394d5/nutpie-0.16.2-cp311-cp311-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "31f1c3180faa364f65c779faf93d66c62cd226991b726837db855082ce34ddc9",
                "md5": "ae5d1fe96400c3ec47e2a59a7a2ff35d",
                "sha256": "0e451463d2339a23ce7f9b84c58c59c324619c913905fb62162c91d41de24a69"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ae5d1fe96400c3ec47e2a59a7a2ff35d",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 7777422,
            "upload_time": "2025-10-23T09:32:35",
            "upload_time_iso_8601": "2025-10-23T09:32:35.574458Z",
            "url": "https://files.pythonhosted.org/packages/31/f1/c3180faa364f65c779faf93d66c62cd226991b726837db855082ce34ddc9/nutpie-0.16.2-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e1105878443f11e5cbea60cf00bf1a30b5487c8f92aedfd807603c945b471f58",
                "md5": "1d9b88980d1569c5fe242e00d419f94f",
                "sha256": "b72a0b5db0054009d0b942e47434fff88d2e1f57ce854e68ba0f76339a239cf7"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "1d9b88980d1569c5fe242e00d419f94f",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 7405975,
            "upload_time": "2025-10-23T09:32:21",
            "upload_time_iso_8601": "2025-10-23T09:32:21.399018Z",
            "url": "https://files.pythonhosted.org/packages/e1/10/5878443f11e5cbea60cf00bf1a30b5487c8f92aedfd807603c945b471f58/nutpie-0.16.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e086c2a9e4bb7210e93e84c00c90fe8e0b44d14b322ce035ba3f483d95de0fea",
                "md5": "3a171614ac98c6f50e12ecfba57839ac",
                "sha256": "db70e2c83c1218a2bdef1fafa817c1edd68e79ac1ae45b38a54ac448632e07d0"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "3a171614ac98c6f50e12ecfba57839ac",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 8127756,
            "upload_time": "2025-10-23T09:32:28",
            "upload_time_iso_8601": "2025-10-23T09:32:28.344284Z",
            "url": "https://files.pythonhosted.org/packages/e0/86/c2a9e4bb7210e93e84c00c90fe8e0b44d14b322ce035ba3f483d95de0fea/nutpie-0.16.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3e16dfa5060b4c5afaeb9be9a3b7f5166339911294d6b1afc2a387a01d482a96",
                "md5": "79a0d031fafce2234c355c22d9621674",
                "sha256": "73f0bc829cea0528444a394f09705576572e96813688fad3c18bf4590ca5524f"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "79a0d031fafce2234c355c22d9621674",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.10",
            "size": 8346317,
            "upload_time": "2025-10-23T09:32:51",
            "upload_time_iso_8601": "2025-10-23T09:32:51.480110Z",
            "url": "https://files.pythonhosted.org/packages/3e/16/dfa5060b4c5afaeb9be9a3b7f5166339911294d6b1afc2a387a01d482a96/nutpie-0.16.2-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "502e4b716b29652ed996a9f7edd551250d404af5faa271b5abe6e205a4d5fdee",
                "md5": "c9c1e3d9336458aeed308cb1e205af5c",
                "sha256": "d11bb89eb994e803e43010ce2668ca7f23a4236c48a01e898a006154c1bdd66d"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp312-cp312-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c9c1e3d9336458aeed308cb1e205af5c",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 8559436,
            "upload_time": "2025-10-23T09:32:45",
            "upload_time_iso_8601": "2025-10-23T09:32:45.643506Z",
            "url": "https://files.pythonhosted.org/packages/50/2e/4b716b29652ed996a9f7edd551250d404af5faa271b5abe6e205a4d5fdee/nutpie-0.16.2-cp312-cp312-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "843ec45bdb4471aa3776188560bf923a88d2a96a4492714975728e5f5bc5f19a",
                "md5": "7eb82fa773621a9cd6ba6ca51a45a27b",
                "sha256": "b95d04db50766aa184903018ac77098c9461fa704326dc10035e3269cf87a84b"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "7eb82fa773621a9cd6ba6ca51a45a27b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 7775764,
            "upload_time": "2025-10-23T09:32:37",
            "upload_time_iso_8601": "2025-10-23T09:32:37.078877Z",
            "url": "https://files.pythonhosted.org/packages/84/3e/c45bdb4471aa3776188560bf923a88d2a96a4492714975728e5f5bc5f19a/nutpie-0.16.2-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5aecb439a30d7fb8c1520488b711f23ffc4a3351a9c1967ffee9d1e797f476cd",
                "md5": "d9bfe36268013e6e076711f4853279ec",
                "sha256": "5630412d5027bc175d12f8e8fe788bd088d4f34ec2c5e226ebef4dff9673bfcd"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "d9bfe36268013e6e076711f4853279ec",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 7403142,
            "upload_time": "2025-10-23T09:32:22",
            "upload_time_iso_8601": "2025-10-23T09:32:22.771883Z",
            "url": "https://files.pythonhosted.org/packages/5a/ec/b439a30d7fb8c1520488b711f23ffc4a3351a9c1967ffee9d1e797f476cd/nutpie-0.16.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dd34184deec12ead13892660a9fa9158137f913311c18de1750ac7e5a58c508b",
                "md5": "91cdb29d8430e2204d4193009d44526c",
                "sha256": "7098be302bdef79d2ef79f16f4f3e6108c849fea7d9b8aabf54468a00dde7fee"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "91cdb29d8430e2204d4193009d44526c",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 8126909,
            "upload_time": "2025-10-23T09:32:30",
            "upload_time_iso_8601": "2025-10-23T09:32:30.191353Z",
            "url": "https://files.pythonhosted.org/packages/dd/34/184deec12ead13892660a9fa9158137f913311c18de1750ac7e5a58c508b/nutpie-0.16.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "bee4cbc96e1ed0aa9417cb351a5bd11029d2cfc2191a7cc6e0580f529344bc7c",
                "md5": "995992e0561a5cce089a969c1dc9b27c",
                "sha256": "e92d98783ae32354c57783a24131ec7c1d5bca015ff8122d0d5ab15ea8c1a3f7"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "995992e0561a5cce089a969c1dc9b27c",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.10",
            "size": 8352849,
            "upload_time": "2025-10-23T09:32:52",
            "upload_time_iso_8601": "2025-10-23T09:32:52.949190Z",
            "url": "https://files.pythonhosted.org/packages/be/e4/cbc96e1ed0aa9417cb351a5bd11029d2cfc2191a7cc6e0580f529344bc7c/nutpie-0.16.2-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4a9f82ed424d406d1559aebceb1661f279020e771b1399e2b8c4fd7b7859f5a6",
                "md5": "1ab93bb8bd8604d79e1d982db360e9dd",
                "sha256": "cb73133c1fac4c10bba340b6e454182218e91939ce16310ebdb7aa59d4eec24d"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp313-cp313-macosx_10_12_x86_64.whl",
            "has_sig": false,
            "md5_digest": "1ab93bb8bd8604d79e1d982db360e9dd",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.10",
            "size": 8558913,
            "upload_time": "2025-10-23T09:32:47",
            "upload_time_iso_8601": "2025-10-23T09:32:47.290747Z",
            "url": "https://files.pythonhosted.org/packages/4a/9f/82ed424d406d1559aebceb1661f279020e771b1399e2b8c4fd7b7859f5a6/nutpie-0.16.2-cp313-cp313-macosx_10_12_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "65294beda77152da3b8c80690adf0cf8916727344cd615709033271b48073a85",
                "md5": "74d448b8c255851dbb7deaf94880b539",
                "sha256": "f9f47f9b888f68102dec857dd820954738787cf8a5eb24500204346a67d5739a"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp313-cp313-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "74d448b8c255851dbb7deaf94880b539",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.10",
            "size": 7775952,
            "upload_time": "2025-10-23T09:32:38",
            "upload_time_iso_8601": "2025-10-23T09:32:38.769756Z",
            "url": "https://files.pythonhosted.org/packages/65/29/4beda77152da3b8c80690adf0cf8916727344cd615709033271b48073a85/nutpie-0.16.2-cp313-cp313-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f2c6ff16e8f6a8d032818d1588585cec731862bbd452d433193933c0b158a55e",
                "md5": "e9e4d17f99d6d0f801db72754513bd1a",
                "sha256": "27c19bd7fba8ea2a83919f8e63c5f338fcdfa9c10f1dcd3bfa0ce5b1fa7f17e6"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "has_sig": false,
            "md5_digest": "e9e4d17f99d6d0f801db72754513bd1a",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.10",
            "size": 7403097,
            "upload_time": "2025-10-23T09:32:24",
            "upload_time_iso_8601": "2025-10-23T09:32:24.333376Z",
            "url": "https://files.pythonhosted.org/packages/f2/c6/ff16e8f6a8d032818d1588585cec731862bbd452d433193933c0b158a55e/nutpie-0.16.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8ccadbcfdc3a7f2e3888483b67539a0fdafbb0f9b9c600548d6afdfc3207eca7",
                "md5": "d32cebb6d711c9c19a19bc0d75f51ee3",
                "sha256": "6079f571482182417017188c80324a99366215a8c171401bf6538ae2b916b1d9"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d32cebb6d711c9c19a19bc0d75f51ee3",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.10",
            "size": 8126221,
            "upload_time": "2025-10-23T09:32:31",
            "upload_time_iso_8601": "2025-10-23T09:32:31.921880Z",
            "url": "https://files.pythonhosted.org/packages/8c/ca/dbcfdc3a7f2e3888483b67539a0fdafbb0f9b9c600548d6afdfc3207eca7/nutpie-0.16.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d40bb79503ecd8db9c16f3e8cf06f8d2450dceb7c18673b328859a42bde9876a",
                "md5": "018b585394e56673d27b97b005e89603",
                "sha256": "91d0de37aaa73534fbe3aaf1f8c84aa2b3f27fc0ab22f72ddcc482cc7e5ca4d9"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "018b585394e56673d27b97b005e89603",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.10",
            "size": 8352388,
            "upload_time": "2025-10-23T09:32:54",
            "upload_time_iso_8601": "2025-10-23T09:32:54.559231Z",
            "url": "https://files.pythonhosted.org/packages/d4/0b/b79503ecd8db9c16f3e8cf06f8d2450dceb7c18673b328859a42bde9876a/nutpie-0.16.2-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "11ad696e4665509c1eac9e0217bd6e8a1d8c26d7ce55f6ce4536307c672dfc70",
                "md5": "613f4a0cf368b519052851ba221a80b2",
                "sha256": "98ec1db0f9bc3525c6acdc7aa5055d04dbe84139b3cdf126b0efa78c0bdf0805"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp314-cp314-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "613f4a0cf368b519052851ba221a80b2",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.10",
            "size": 7775907,
            "upload_time": "2025-10-23T09:32:40",
            "upload_time_iso_8601": "2025-10-23T09:32:40.628615Z",
            "url": "https://files.pythonhosted.org/packages/11/ad/696e4665509c1eac9e0217bd6e8a1d8c26d7ce55f6ce4536307c672dfc70/nutpie-0.16.2-cp314-cp314-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5b59b848e982582e343a040521d73ac30e37baed8f9d535e92ce8f6e1dcbe371",
                "md5": "c77ccd9316dd502d0fa187aec742d9d5",
                "sha256": "70399a0ce43960f81ddc85fc4be4d3f55e4a3c3458e297f19314b6ae8dad0c62"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2-cp314-cp314-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c77ccd9316dd502d0fa187aec742d9d5",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.10",
            "size": 8353523,
            "upload_time": "2025-10-23T09:32:55",
            "upload_time_iso_8601": "2025-10-23T09:32:55.989607Z",
            "url": "https://files.pythonhosted.org/packages/5b/59/b848e982582e343a040521d73ac30e37baed8f9d535e92ce8f6e1dcbe371/nutpie-0.16.2-cp314-cp314-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "700243f94ffef25b60e55f09dd6649aa8fd731462bb4abbdfa820ce22598ec29",
                "md5": "155164717fb5085b9c52e864cd23e82a",
                "sha256": "53eeb269e9de621f53fdc172bbbfca051a652cdda9b71c0a01ac17059e7bbb77"
            },
            "downloads": -1,
            "filename": "nutpie-0.16.2.tar.gz",
            "has_sig": false,
            "md5_digest": "155164717fb5085b9c52e864cd23e82a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 699612,
            "upload_time": "2025-10-23T09:32:48",
            "upload_time_iso_8601": "2025-10-23T09:32:48.858917Z",
            "url": "https://files.pythonhosted.org/packages/70/02/43f94ffef25b60e55f09dd6649aa8fd731462bb4abbdfa820ce22598ec29/nutpie-0.16.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-23 09:32:48",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pymc-devs",
    "github_project": "nutpie",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "nutpie"
}
        
Elapsed time: 2.05493s