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.6.1-cp314-cp314-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.14Windows ARM64

luna_model-0.6.1-cp314-cp314-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.14Windows x86-64

luna_model-0.6.1-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.6.1-cp314-cp314-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

luna_model-0.6.1-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.6.1-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.6.1-cp314-cp314-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

luna_model-0.6.1-cp314-cp314-macosx_10_12_x86_64.whl (2.7 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

luna_model-0.6.1-cp313-cp313-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.13Windows ARM64

luna_model-0.6.1-cp313-cp313-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.13Windows x86-64

luna_model-0.6.1-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.6.1-cp313-cp313-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

luna_model-0.6.1-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.6.1-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.6.1-cp313-cp313-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

luna_model-0.6.1-cp313-cp313-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

luna_model-0.6.1-cp312-cp312-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.12Windows ARM64

luna_model-0.6.1-cp312-cp312-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.12Windows x86-64

luna_model-0.6.1-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.6.1-cp312-cp312-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

luna_model-0.6.1-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.6.1-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.6.1-cp312-cp312-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

luna_model-0.6.1-cp312-cp312-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

luna_model-0.6.1-cp311-cp311-win_arm64.whl (2.6 MB view details)

Uploaded CPython 3.11Windows ARM64

luna_model-0.6.1-cp311-cp311-win_amd64.whl (2.8 MB view details)

Uploaded CPython 3.11Windows x86-64

luna_model-0.6.1-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.6.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

luna_model-0.6.1-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.6.1-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.6.1-cp311-cp311-macosx_11_0_arm64.whl (2.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

luna_model-0.6.1-cp311-cp311-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 78b8a5a36b52e62fd8acb22a6e744322e0ef8dd8406e9d8a624b1731dce4bc1c
MD5 693687c22415ae6ccca4ff7003a78109
BLAKE2b-256 35c85dceac6c3197500ee7dc60a2c7cd643a8bac29db217478ed8eeacd65af99

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 cfe598f54833a23b78bba6af56294898f5ea67bf4411e99bf557984873aa5488
MD5 0550ccc9c9676bf83647fb7eb43ed97c
BLAKE2b-256 81519fa8bb75890ea60af7603f454daf8651da7288a3eeaf50009d5b39cd2204

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 566a883f850c2f008eef00f710a132b04f4ff2f3bcae3167b3c45cca232a1d34
MD5 490836d966b9c9a43f5d99730bd0b3ba
BLAKE2b-256 8a52832b5b4717c2d7d0577ad0d745b7c9e2d5dbec4fc1853580574b0c16b505

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 22b509f9264458ab42baec84dc6b5601706f5e2fc4cf63c8b6604c1c220093b6
MD5 67abaf4140ccc63da9bd0c03bd10039d
BLAKE2b-256 912aa694158a513515368b4f77ed064b43c66f70cf88832ea2d443a00ed99f09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2bec95eecf21b7cc67ca889b042f03cf22a22ad30ea45271ca7e7c4e96f9fa1d
MD5 5a0c7165c8d0646d84dd17f52a0b3711
BLAKE2b-256 ef9e8e09b471af4c1b7b7a9e93c7346050a7e2bd79b2882fe046df2bcbfe931d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6aaf0ce0d078ebe88afe4882b1ecdb8d0b24e9c38b766d296e7f9a46589e387e
MD5 915be7d779dfb3fc5038d0976cc8c9fe
BLAKE2b-256 ba99c3f7e09c11bd47c24edb8c8c0f00bf2d22dc01f92001d2ce7abc66f2586e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 75a8638c7a3187bb5974e4ae0e1864a45469f2fda9b72cefc4a955bb6f863d0e
MD5 8669f62b431c6f6632da25a35d6e7fcb
BLAKE2b-256 c1337f460fd2269638426ee0d6d01f9bcf81851172ec07485bd81941165e2b8d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bcb1c73e6e49582068213add3d5c36a64a869268b00f102cccf6765cc954a942
MD5 bc3e00fe34f78e79ec037f255fd319ae
BLAKE2b-256 74b0da8b854cd3d539e745c0d4cdf3c743789a94663b16e5ba5b23ece28e0366

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 34a4e5453d90166cefd305dd88b124998f9cd3499618f315ecd6130cab2e3312
MD5 ed32e8a1248bd0ec95d0e01c186695a6
BLAKE2b-256 3827535bf4ea027fe5b25afef8b9fa06beb17f819a1abede80e4bc93fcda16d7

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ae42474f6e1cbd67be4e0b6f58a254bb5525c2b79bd1fd367daa5017daa83287
MD5 3d5cdbe3bb19d70b94d80a49a62b6b33
BLAKE2b-256 5f9809ce7537224fef3228e9d08529d1d39c1572a3c8352cbaa72f97eee86bb5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5a03b573609753d877ec03b0db9812f8f59999a5294f511eb8f6548cca72e8b4
MD5 2e86b392412093d4427066cd4c3d854b
BLAKE2b-256 69dc3ee488f669343eb89b5c38a15dc9d6b92f8fcdbf9f5f863f79a5354e4f13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2199046774313ef58ef8b26b11acb60a6282ede68cb895eb4e0a8d9554ba8f5b
MD5 b8043594ed0ae08298dbfe12ae7d6482
BLAKE2b-256 c243a0351365b50d7b3e4d1f9cfdbb5afb501235fe2d4d88846ef618da833a09

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e79e6a7dbb9e0088395f1230d7d49ff2d2359d389b8f7a14b4740c94d16ecf35
MD5 28b9d6ca81a0a15e98ac39e40e133132
BLAKE2b-256 931c4475dbca1bb55c8926f1cb45e7b0b19f5c5a52d27bc3828a5de7875ae432

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 92e92d5422706b5de21a87f18346311ad4ef81ed075182659d48f53d25a8b385
MD5 6d3b6b9444606ccea6afdd2e5a4adfb2
BLAKE2b-256 4962bf1871912811cf7486ecad1b574d240577e5bdffb7cde70a45db11b73844

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c648f313f29c2fe4189b1140967d341a05a997f217a642662bebb765b7a31f12
MD5 d094dc3f03d476208cda1c1601a20ab9
BLAKE2b-256 300c03e8052e69b8ba1383f6e85a4c674361a2c0ea65f5e6e82cffeda54460e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c083fee421c9510620e8142857e10aaf0258581bb3fb615ae391aae1bdac9f0f
MD5 0bfc845f201ce28a721f00671d95d600
BLAKE2b-256 5638d28be2dd1eba43ed64d38ca7088577bad6172c9df6657b204e37a712bbf1

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 0fa7dc1ccc2e3f6876d16e0d763a8079d21a86cbf246dfbee57efce3d4a6c853
MD5 f117753eb12c5f1963e7b2cc225e05bf
BLAKE2b-256 f824fc27ae3158984860860d4a4b7b1344c86d6a5661df24d433c5e777e2ea98

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 265299aa14d6e01de6307f559bf3fc3af862a25b4c516c68d87759cf888faad1
MD5 dde5071afd64a2211e6d9981bcdaea93
BLAKE2b-256 fc20779fa49320a8eac6c917b89d2d284af4588764b825409004db99e76be84e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 269f48a009dce8d689707fa5cec29e5fcd3bc7e82a1d4de8b53b1be6b93f3dcd
MD5 44bfde21b9c594f038a370dc46be5128
BLAKE2b-256 6221f540353d2c93fe3e18d92402cbb3d5bcf6c2b7da700e11a17de8690ac9eb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 127b8c5f7db095a0462cc4061f3b8fae4c5ec69c1fed4a95a625b742a910cf4a
MD5 59c9349ec063331327e7c0d30e40924d
BLAKE2b-256 2cba65522ed12f4c6960019b2778acf84ad903a9c09386169b9d5cee893b4334

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 841d66c627b242ed134c33c0cbf41c06f67e77fb0d9dc462ce87bf28f5d7f01c
MD5 3ef43142311ad389b8a038cc1998a229
BLAKE2b-256 6605dfe250840109c68280a7b33dce8b06dd1dc01266214999431e1eea0f3dc2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c02f8ea86d5002bfe71cd86d81e53a5a1e72191af47160cd824d916390baaeaf
MD5 2de7050a4a61429436b81cf3a081587b
BLAKE2b-256 94e152588eb813ee61ee7f5954f690de4890a22cb675e08b5252641372460096

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83f39f2abb5867054d53fdb7f5334b53a804bf57e9f565059590d50807fc269d
MD5 6d0b4a4d74e1bd5b72343b5727b7596a
BLAKE2b-256 166d087f3df3a28a94d575928e1ec673ee2773ead673d50d0467b415308855d7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 022daea6899add2a5f1fd5ef573aab34398cc33270e0c964b54f772bce1c831d
MD5 51ba080939c8e409534959f3ea0bdeda
BLAKE2b-256 e013aa896ce134eebec936d9d0dd0708b622f0a0a8ff838de9f0a9cc8faaca4c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 cb091417ab8b0022fedd4646a60e60c8e7d0d9e1337a68ca72e89193fa8bdb44
MD5 343124e8f57597edcbce47ffcacb21d2
BLAKE2b-256 e04b3a2513fdbd2bde10517f65df6a9f454e921ef9dde4bcd332c6059be010ad

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3cc4b7941d9c39bb9ffd7773bb93b76b57e4070b9ebd68a9f0f72878b5153b0b
MD5 2aec776f057bb5918d41808e0e3076f0
BLAKE2b-256 3c451c824b3d9e312c0f86a8417f90e165f396d7cbe81803e4cc313bc10eca33

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e063eb6ad43d2bc78c8dcbaf10a4619439b243db0a25972f5545ad57b7f54ff1
MD5 5135e0ae83bed5175aecc39ec484e6ab
BLAKE2b-256 e03c3aa1a851c422960b213842e2264e081a72c747a9b68506f5ebfd25c8a605

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 b66a4beb96fd5900e731da69cc36d42bb02f35882de9ad42d387e8702c17a64a
MD5 394989d68626235718434231f398faad
BLAKE2b-256 2a7b719a87eeeef237ba889060d2dbce2c2bc04453d0c475cbba0d6b0a908fd1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3ce4aae932f26d753ffc7160d434150ec5d4e35829888940b952fa6a1765e9cd
MD5 f42bfec047ff4f14b171e3d81eb1ac46
BLAKE2b-256 2b6b0b8918abe229d6f96cd6653aa15a5d688b16b60c3e8f8e5542881d279396

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d2d877864d3fa2dfcf8f59882457a2eb840363c6d353b858204522e845200987
MD5 82244adb07063f6e7c7521435124a3b2
BLAKE2b-256 a0f9132737b98682b8afc345e51db443a6064814e39f21d129c5ab4acd678cbe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 bc8fae36621cc692a41b5165aa9de78812bbb390801105b199e35c3adfc68ee9
MD5 0134669fbfa969540c8601cdfa7003db
BLAKE2b-256 619f2c9efb6ef82a0cbebeba2317f90f0a76ca6cfaedfdb218036847193b6707

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for luna_model-0.6.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8edc9be3ac9fa5cea92315844c491016f5794cebc90cbb38b7d0032a0fcc8ae6
MD5 c0571455495f82ea2c75574a0d1f44df
BLAKE2b-256 e110a2aa98fd88a5c82d76dabf6f2002d12ac33b0757937f17974256aedd7855

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