Skip to main content

Aqarios LunaModel: Symbolic modeling for optimization

Project description

Symbolic modeling for optimization

Summary

LunaModel is a high-performance symbolic modeling library for describing, translating and transforming optimization problems. It provides the following high-level features:

  • System for defining symbolic algebraic expressions of arbitrary degree, constraints and optimization models (like dimod, gurobi or cplex)
  • Translations from and to a LunaModel for many common optimization model formats (like LP)
  • Transformations to map a LunaModel from a general model to a specific model, such as transforming a Constrained (Binary) Quadratic Model (CQM) to a (Unconstrained) Binary Quadratic Model (BQM), or from an Integer Model to a Binary Model.
  • Builtin serialization for maximum portability
  • Python-first development experience

You can use LunaModel as a standalone package or by using luna-quantum which gives you additional builtin functionality to solve your optimization problems using the Luna Platform.

About LunaModel

Most optimization tasks involve working with problems, which generally consist of an objective function, wether this objective function should be minimized or maximized and optionally constraints to the problem itself.

LunaModel consists of the following components:

Component Description
LunaModel A symbolic modeling library for arbitrary optimization models (problems).
LunaModel.translator A translation library that supports many common model formats.
LunaModel.transformation A compilation and transpilation stack to transform a model (source) into a target representation (target).
LunaModel.utils Utility functions for expression and model creation.
LunaModel.errors All error types that can be raised within LunaModel.

LunaModel is usually used as either:

  • A replacement for plain LP files, dimod or similar frameworks to define optimization models.
  • As part of luna-quantum to solve arbitrary optimization problems.

A Symbolic Modeling Library

With LunaModel you can define symbolic Expressions and Constraints (which in consist of left-hand side (lhs), an Expression, a right-hand side (rhs) which is a constant numerical value and a Comparator). A Model defining arbitrary optimization problems consists of a single Expression as the objective function (the function to be optimized) and, optionally, one or more Constraints. Expressions are created using mathematical operations on Variables. Variables represent an unknown in the Expression which is determined by an optimization. By default variables are Binary, can represent any of the following Variable types:

  • Binary: the variable can be either $0$ or $1$.
  • Spin: the variable can be either $-1$ or $+1$.
  • Integer: the variable can be any integer number $\in [-2^{64}-1, 2^{64}-1]$ (for a 64-Bit system).
  • Real: the variable can be any floating point number $\in [\approx -1.7976...E308, \approx +1.7976...E308]$ ([-f64::MAX, f64::MAX]).

In general not all variable types are supported by all optimizers you can find. It can be the case that a defined model cannot be natively translated into the expected format of an optimizer. To resolve this you can use LunaModel.transformation.

Let's have a look a the Knapsack Problem for defining an optimization problem using only Binary variables. We have $n$ items $x_1, x_2, \dots, x_n$, each with a weight $w_i$ and a value $v_i$, and a maximum capacity of $W$. The optimization problem is defined as:

\begin{align*}
&\text{maximize} \sum_{i=1}^{n} v_i x_i \\
&\text{subject to} \sum_{i=1}^{n} w_i x_i \leq W \quad \text{and} \quad x_i \in \{ 0, 1 \}
\end{align*}

Using LunaModel and $n = 5$ and $W = 25$:

from luna_model import Expression, Model, Sense, Vtype
# A faster alternative to creating Expressions using loops in Python.
from luna_model.utils import quicksum
# Initialize the known values:
n: int = 5  # number of items.
W: int = 25 # maximum capacity.
weights: list[float] = [ 1.5, 10.0, 5.2,  3.5, 8.32] # weight of each item.
values:  list[float] = [10.0, 22.0, 3.2, 1.99, 6.25] # value of each item.
# First, we create the Model with it's sense set to Maximize the objective function.
# You can also give your model a name, optionally but recommended.
model = Model(sense=Sense.MAX, name="Knapsack")
# Next, we need to create all variables. Note, there are alternative ways to create
# variables, you can find details in the LunaModel docs.
variables = [model.add_variable(f"x_{i+1}", vtype=Vtype.BINARY) for i in range(n)]
# Now we can define the objective function:
model.objective = quicksum(values[i] * variables[i] for i in range(n))
# And for the constraints:
# Ensure the maximum capacity of `W`:
model.constraints += quicksum(weights[i] * variables[i] for i in range(n)) <= W
# The second constraint that all `x_i` are in [0, 1] is natively encoded by using
# Binary variables.
print(model) # to display the model.

As an extension, the Bounded Knapsack Problem (BKP) with a maximum number of each item $c = 4$ can be defined like this:

\begin{align*}
&\text{maximize} \sum_{i=1}^{n} v_i x_i \\
&\text{subject to} \sum_{i=1}^{n} w_i x_i \leq W \quad \text{and} \quad x_i \in \{ 0, 1, 2, \dots, c \}
\end{align*}

Now we have two equivalent approaches to implement this using LunaModel: Note that we have to use Integer variables now.

  • Using Bounds on the variables:
    from luna_model import Expression, Model, Sense, Vtype, Bounds
    # A faster alternative to creating Expressions using loops in Python.
    from luna_model.utils import quicksum
    # Initialize the known values:
    c: int = 4  # maximum number of each item.
    n: int = 5  # number of items.
    W: int = 25 # maximum capacity.
    weights: list[float] = [ 1.5, 10.0, 5.2,  3.5, 8.32] # weight of each item.
    values:  list[float] = [10.0, 22.0, 3.2, 1.99, 6.25] # value of each item.
    # First, we create the Model with it's sense set to Maximize the objective function.
    # You can also give your model a name, optionally but recommended.
    model = Model(sense=Sense.MAX, name="Bounded Knapsack")
    # Next, we need to create all variables. Note, there are alternative ways to create
    # variables, you can find details in the LunaModel docs.
    variables = [
        # We can have each item at least `0` times and at most `c` times.
        model.add_variable(f"x_{i+1}", vtype=Vtype.INTEGER, lower=0, upper=c)
        for i in range(n)
    ]
    # Now we can define the objective function:
    model.objective = quicksum(values[i] * variables[i] for i in range(n))
    # And for the constraints:
    # Ensure the maximum capacity of `W`:
    model.constraints += quicksum(weights[i] * variables[i] for i in range(n)) <= W
    # The second constraint that all `x_i` are in [0, 1, 2, ..., c] is natively encoded
    # by using Bounds on the Integer variables.
    print(model)
    
  • Using a Constraint for each variable:
    from luna_model import Expression, Model, Sense, Vtype, Bounds
    # A faster alternative to creating Expressions using loops in Python.
    from luna_model.utils import quicksum
    # Initialize the known values:
    c: int = 4  # maximum number of each item.
    n: int = 5  # number of items.
    W: int = 25 # maximum capacity.
    weights: list[float] = [ 1.5, 10.0, 5.2,  3.5, 8.32] # weight of each item.
    values:  list[float] = [10.0, 22.0, 3.2, 1.99, 6.25] # value of each item.
    # First, we create the Model with it's sense set to Maximize the objective function.
    # You can also give your model a name, optionally but recommended.
    model = Model(sense=Sense.MAX, name="Bounded Knapsack")
    # Next, we need to create all variables. Note, there are alternative ways to create
    # variables, you can find details in the LunaModel docs.
    variables = [
        model.add_variable(f"x_{i+1}", vtype=Vtype.INTEGER)
        for i in range(n)
    ]
    # Now we can define the objective function:
    model.objective = quicksum(values[i] * variables[i] for i in range(n))
    # And for the constraints:
    # Ensure the maximum capacity of `W`:
    model.constraints += quicksum(weights[i] * variables[i] for i in range(n)) <= W
    # The second constraint that all `x_i` are in [0, 1, 2, ..., c]:
    for i in range(n):
        model.constraints += variables[i] <= c
        model.constraints += variables[i] >= 0
    print(model)
    

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

If you're not sure about the file name format, learn more about wheel file names.

luna_model-0.5.6-cp314-cp314-win_arm64.whl (2.5 MB view details)

Uploaded CPython 3.14Windows ARM64

luna_model-0.5.6-cp314-cp314-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.14Windows x86-64

luna_model-0.5.6-cp314-cp314-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

luna_model-0.5.6-cp314-cp314-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

luna_model-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

luna_model-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

luna_model-0.5.6-cp314-cp314-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

luna_model-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

luna_model-0.5.6-cp313-cp313-win_arm64.whl (2.5 MB view details)

Uploaded CPython 3.13Windows ARM64

luna_model-0.5.6-cp313-cp313-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.13Windows x86-64

luna_model-0.5.6-cp313-cp313-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

luna_model-0.5.6-cp313-cp313-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

luna_model-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

luna_model-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

luna_model-0.5.6-cp313-cp313-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

luna_model-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

luna_model-0.5.6-cp312-cp312-win_arm64.whl (2.5 MB view details)

Uploaded CPython 3.12Windows ARM64

luna_model-0.5.6-cp312-cp312-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.12Windows x86-64

luna_model-0.5.6-cp312-cp312-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

luna_model-0.5.6-cp312-cp312-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

luna_model-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

luna_model-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

luna_model-0.5.6-cp312-cp312-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

luna_model-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

luna_model-0.5.6-cp311-cp311-win_arm64.whl (2.5 MB view details)

Uploaded CPython 3.11Windows ARM64

luna_model-0.5.6-cp311-cp311-win_amd64.whl (2.7 MB view details)

Uploaded CPython 3.11Windows x86-64

luna_model-0.5.6-cp311-cp311-musllinux_1_2_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

luna_model-0.5.6-cp311-cp311-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

luna_model-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

luna_model-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

luna_model-0.5.6-cp311-cp311-macosx_11_0_arm64.whl (3.3 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

luna_model-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl (3.5 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file luna_model-0.5.6-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 9e20f9fc95214c46c9c70d299c0177baf04bacfa2728186fdbea8f1cb73246d7
MD5 8f2c5c7299e05d26ec4bc0d7af64a121
BLAKE2b-256 7d269aaa9c60ae8431dbf4b43ff7bafc7884cdb80833ef667a1e2835298ae6e6

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 89bd8a8148370e614a4b4e46cc69aa46cb5e7b75510b71e345f48355cc7feec4
MD5 b963dc700967be93191a101f7d5583c8
BLAKE2b-256 807101a86408cd82a58df970ad2c67b7702cfbbce1928f6200d30650cc93f0f6

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8c24eefe33b37581921625687ec5cfcf5edfaf59efc7842d3d72957cf481bb1f
MD5 7cce52fb5c5573694efe08324d210bfd
BLAKE2b-256 a4dad98ac6f2a65e6b069bc337df6c81e22b26aff236687340979b0761a2eda5

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 58763bffc07227998348e81d0bad8d136fce1abe944af9641b7ca55dfe09b6f7
MD5 bb79d454afd5786a96684050ee16e4c5
BLAKE2b-256 69e3a7013f58972909e6d1534d709b0e14a50d30ed90e8790e042ffff2af56f6

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d1ce3b7fbaa7e66da1590b00884dbf154b94881a6d02d7e8f7f2eafc9026e75f
MD5 556dbd45df9f2e2b63e5edbdbce07cb1
BLAKE2b-256 fbeaa3e3cc1161973cf2db64c0e053ccae1a70ea3d6b1ba024ac1d20003a794f

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8facd8f8fbfcbbbc98c38b9a6efba694ff7ca1b0f23f03973f86a25310f5481c
MD5 4f26511bd8ebe31cec63002c4d1da5b3
BLAKE2b-256 8133152a12b696239babb4025772e364eee5279a7bbd1f415666c4d1ef730211

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f1d0c411795f94d13f3da71721e2c78e508c2dd88ade2265797f511a00d622c8
MD5 b69a4a71486a97c862d67d8b2965a7e3
BLAKE2b-256 aacfcbdd3952f11f2f40cc681448637d93b153478964c0fbca1214a7889f1aca

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 018ece1e8a0b3cb4b6ddddf5fb9a506c59c01e557b358e7ddcede02452242162
MD5 b6fad10f5e6783f26931b2c266d5ac70
BLAKE2b-256 c6fdbb4e1537d1e80f0dd0fa10badc7f996fd26064adb210e182bf225200bcd8

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 06e3615422d2af2cd348603433115246b578a94ea8c2780c3785014fa733f172
MD5 048ebdec0a9d86b6bb3bbcab77f5420d
BLAKE2b-256 d21c0b6cc513851566d7eb5ee3068e23e0a4a0a836da6fd547f78d9bdda9fdc4

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fd8d1ff4d82016320ea71d75a29e25be9c551de51a850ed6ca334065de7390bf
MD5 43938a087c8b8dd1366a5feeac470c3b
BLAKE2b-256 909e2d5dfcbded564995bb11319ce09499d51a499cd81ac213fa5bc2bed058ae

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 3e2ced269021dd51afef6a2748ffc1f1891f8471ae0a6a9640eb3962687b3bb0
MD5 44ee846af6de0d86d2f0e02692c82593
BLAKE2b-256 01f7e0ba4b1a1cfeb7c7b62c22be688551abb8f5c084e541dd21a91db96a3876

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 86a2949c5b2a8dc29f00377b3d1e6029d03694f02b1ed2f61dbcadc228e5f756
MD5 f00991aa2004bc13f048e8e5e84bc13a
BLAKE2b-256 55e4697917c54218f121ac0ea2fd5485d034d8d3115e5081eca3a374198d5ede

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fcef45cff702824073bc07d62b613c052798526f1c486d54409295fc302a8a20
MD5 672d0b67b8379d09270de4c16c03d82a
BLAKE2b-256 3e54d89ac7b05eae93db3d078704d688be5f82a0fa3b5d35f9a8133f3ce8a189

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 959896f9f8a45eff51f23aff0a7ce0c373e2e545d328057c85ec0786d0ed0ef6
MD5 d492bbe3909295fd04e3c8efdac495f7
BLAKE2b-256 d58c5b6ccf4243167acc2374d7ac64d41060ae9fd9b40e492b522109d6c3a8b4

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4eec78d5a8ba04d368ee6ec2ffb2078964276d3058ea9e2b1dae9843dfc4c51e
MD5 58e40b8d0198dff43e754d458ed35336
BLAKE2b-256 135f6210a657bec5dc0a36f1d769db3a32a731f2b98c2d381474ff4a9f6b8f6e

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9fb48e54357fd4687840e4a5724bdf6deb5e893bc7cc37b905f45171c4345a81
MD5 6fb56b934af9df4c79f03cd3e34bbce4
BLAKE2b-256 2b2741ebfb14ad00b41e5be41453983f6f1a4db04bb84a0aee274a1d38d86aa4

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 edf4b9364dca23c3a2d58ebeb4ef7f9e808c58d3ed8696b5a88803b22317fa63
MD5 e985b83f9335c2e3627496d8533865d4
BLAKE2b-256 2b5aeda84fc596b65155874e0ddb806e2961dd0ea060d68ba603bb40af17c2ce

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 55d7b01496413679f5370ae435d81a1abbf189f88dc849e4736d5c0d97f6a78f
MD5 9ef181fe36753aec817fe0ba87e7a35b
BLAKE2b-256 e063d0356c819eb3360aa3b8f80a3005a38e0879d25a38fecc25cf31d0a997ab

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2f04d7ee74bcedac2a49905d903f550d127e6d351563984ba2119b96eb01e5e4
MD5 1d109115e6e666bd2902cfa822b61a23
BLAKE2b-256 cc8458d28543fade9ca8c9cf3e549328e761dc51de8f225afc530a51eabd19cf

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 84fb11e90363a3a7c53d5a2e3e987434e66f3c532507f7d6152324419a728054
MD5 959395bc597b8e95ff562da600b621b5
BLAKE2b-256 82bb10f4d7793938153288448f34af897065495f12906c28e70c768e6ba0d3b1

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 72ec61521feaf5ac6191057a113ed0dabf47449cde45e137ce306e753a6e106d
MD5 01f46eb1a734e5eee54552dc5cf8e9ef
BLAKE2b-256 b03abe949e35383a96eaf673be136f677f46e6f6c9ef14d9de55623e02bda405

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6787e9ee83abe3236d8b273e087e56b0f71200de7506bf8c3cad928a80e191a2
MD5 5102c7eabcd8a65d1c83b252977fe2f6
BLAKE2b-256 6343c083639130eb43dfd4d04d771144bc64e620e63209fd6814c118f35fdf3d

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6630ccb71eec6e644c888a01d5fc7517bd4f74d4bf28af13e84062d01b7a561f
MD5 94e581438d2c0967f822897d07d6997b
BLAKE2b-256 8600a5eb0494632afff53fbd2eabfddcf17357cde7090fcf7b64fe8afb9798af

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9ee0c81cbb5953ae1793f91982ef00d9b2b601ff4543493ceb307de0a97cfd2f
MD5 ac0138d9d8c9f20808c5337d48e93d2d
BLAKE2b-256 9b992563222b25028159a403ddf8cb18128220564c107c5877a6f4c5596582ea

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-win_arm64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp311-cp311-win_arm64.whl
  • Upload date:
  • Size: 2.5 MB
  • Tags: CPython 3.11, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 c326d64357d1da9b9a8aae12d6b6cc248953bb0544ab1d64f501c982a594b8ae
MD5 12dd974dcf3653be4a8d37a1397eb497
BLAKE2b-256 661bff33e963e98315e6b694cb5488aa090fd69818eaeda3603bcb9b301c1704

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: luna_model-0.5.6-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 2.7 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 4c4711c2f47d7dbdf2d05fd026cad09ce1c1a5732de3368fbd33adddf3aa4e89
MD5 bfba6a8411c167876b81c5cf84464891
BLAKE2b-256 aae91b1a7266decd516d521ae30e3e57eb6b8066ce98ee52155d56619d22a59b

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 62040284cc591ed4f3c1bf814a7d911fb08099100a03a789313a3bf6ea7b69ae
MD5 d5158fb54674c352d34cb2f06669b48b
BLAKE2b-256 1bb5f110e80aecdd31a20a82696ddb64d5d35b09b19df0e74321a9a30fa0a049

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 734169478d1a8d1a443cc5285207d9145bd5c0909721454af3e575be45d01bf4
MD5 0b2ce6d3063fa4af6c178c2e46eb7fc5
BLAKE2b-256 11855477fb0b92e7e87b8ad16fcba9da42fec1eaa579be5d1b1820c9fd102d69

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e48f41d42b634a26ed944afa0c5c44705886fad7ed55d01406d330668eae8dfe
MD5 9d5171eb454e534715048bc71182e9d2
BLAKE2b-256 3e48245bd4dd1d7e07bd18ee53db5d7a2867ade53af25c54f5f228a2ce7be45a

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 239f8c642f24c30ba8159bf61e402abecaaf6e36323b09a8f391033d7ba7934d
MD5 add39ff7ac74a482e029ea50cc9f2546
BLAKE2b-256 fda7a18387fe02f04df620d7d35b7c1a2a453f34ed1f33e5b4792931d1e8ec9a

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d84eb67458ec0398879ac2acd9514a2472e0e45d402238dccd52102b757d5a1
MD5 88066c0a698ee0591218f66301ed06e9
BLAKE2b-256 2d50fa301c8b229078eeea865989a73473c04e34210e20ce67716e9ad0f3345a

See more details on using hashes here.

File details

Details for the file luna_model-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for luna_model-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 53fdb52ec3b36b63510166d4dfaee5898c08a22ac0b3accddc46b49e439bc4e2
MD5 089fe9b7e1505806a03f8d8ae192bd52
BLAKE2b-256 1908388e0e6af080890d626128440a9a2fbb69e11a3f9983735137922ce253b1

See more details on using hashes here.

Supported by

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