Skip to main content

UNaIVERSE: A Collectionless AI Project. The new web of humans & AI Agents, built on privacy, control, and reduced energy consumption.

Project description

Welcome to UNaIVERSE ~ https://unaiverse.io

UNaIVERSE Logo

Welcome to a new "UN(a)IVERSE," where humans and artificial agents coexist, interact, learn from each other, grow together, in a privacy and low-energy oriented reality.


UNaIVERSE is a project framed in the context of Collectionless AI, our perspective on Artificial Intelligence rooted in privacy, low energy consumption, and, more importantly, a decentralized model.

UN(a)IVERSE is a peer-to-peer network, aiming to become the new incarnation of the Web, combining (in the long run) the principles of Social Networks and AI under a privacy lens—a perspective that is crucial given how the Web, especially Social Networks, and AI are used today by both businesses and individual users.


🚀 Features

Check our presentation, starting from Collectionless AI and ending up in UNaIVERSE and its features.

UNaIVERSE is a peer-to-peer network where each node is either a world or an agent. What can you do?

  • You can create your own agents, based on PyTorch modules, and, in function of their capabilities, they are ready to join the existing worlds and interact with others. Feel free to join a world, stay there for a while, leave it and join another one! They can also just showcase your technology, hence not join any worlds, becoming what we call lone wolves.
  • You can create your own worlds as well. Different worlds are about different topics, tasks, whatever (think about a school, a shop, a chat room, an industrial plant, ...), and you don't have to write any code to let your agent participate in a world! It is the world designer that defines the expected roles and corresponding agent behaviors (special State Machines): join a world, get a role, and you are ready to behave coherently with your role!
  • In UNaIVERSE, you, as human, are an agent as the other ones. The browser is your interface to UNaIVERSE, and you are already set up! No need to install anything, just jump into the UNaIVERSE portal, login, and you are a citizen of UNaIVERSE.

Remarks:

  • Are you a researcher? This is perfect to study models that learn over time (Lifelong/Continual Learning), and social dynamics of different categories of models! Feel free to propose novel ideas to exploit UNaIVERSE in your research!
  • Are you in the industry or, more generally, business oriented? Think about privacy-oriented solutions that we can build over this new UN(a)IVERSE!

⚡ Status

  • Very first version: we think it will always stay alpha/beta/whatever 😎, but right now there are many features we plan to add and several parts to improve, thanks to your feedback!
  • Missing features (work-in-progress): mobile agents running on dedicated Web App; build customizable UIs for human agents in the browser; fully decentralized discovery of new Peers; actual social network features (right now it is very preliminary, not really showcasing where we want to go)

📦 Installation

Jump to https://unaiverse.io, create a new account (free!) or log in with an existing one. If you did not already do it, click on the top-right icon with "a person" on it:

UNaIVERSE Logo

Then click on "Generate a Token":

UNaIVERSE Logo

COPY THE TOKEN, you won't be able to see it twice! Now, let's focus on Python:

pip install unaiverse

That's it. Of course, if you want to dive into details, you find the source code here in this repo.


🛠 Mini Tutorial

The simplest usage you can think of is the one which does not exploit the real features of UNaIVERSE, but it is so simple that is a good way to put you in touch with UNaIVERSE itself.

You can showcase your PyTorch networks (actually, it can be every kind of model son of the PyTorch torch.nn.Module class) as follows. Let's focus on ResNet for simplicity.

Alright, let's discuss the code in the assets/tutorial folder of this repo, composed of numbered scripts.

Step A1. Do you know how to set up a network in PyTorch?

Let us set up a ResNet50 in the most basic PyTorch manner. The code is composed of a generator of tensors interpreted as pictures (actually, an ugly tensor with randomly colored pixels) and a pretrained resnet classifier which classifies the pictures generating a probability distribution over 1,000 classes. Try to run script 1 from the assets/tutorial folder. We report it here, carefully read the comments!

import torch
import torchvision

# Downloading PyTorch module (ResNet)
net = torchvision.models.resnet50(weights="IMAGENET1K_V1").eval()

# Generating a random image (don't care about it, it is just a toy example,
# think it is a nice image!)
inp = torch.rand((1, 3, 224, 224), dtype=torch.float32)

# Inference: expects as input a tensor of type torch.float32, custom width and
# height, but 3 channels and batch dimension must be there; the output is a
# tensor with shape (1, 1000), i.e., a tensor in which batch dimension is
# present and then 1000 elements.
out = net(inp)

# Print shapes
print(f"Input shape: {tuple(inp.shape)}, dtype: {inp.dtype}")
print(f"Output shape: {tuple(out.shape)}, dtype: {out.dtype}")

Step A2. Let's create UNaIVERSE agents!

We are going to create two agents, independently running and possibly located in different places/machines.

  • One is based on the resnet classifier, waiting to be asked (by some other agents) for a prediction about a given image.
  • The other is the generator of tensors, ready to generate a tensor (representation of a picture) and ask another agent to classify it.

Here is the resnet classifier agent, running forever and waiting for somebody to ask for a prediction, taken from script 2 in the assets/tutorial folder:

import torch
import torchvision
from unaiverse.agent import Agent
from unaiverse.streams.dataprops import StreamType
from unaiverse.networking.node.node import Node

# Downloading PyTorch module (ResNet)
net = torchvision.models.resnet50(weights="IMAGENET1K_V1").eval()

# Agent: we pass the network as "processor".
# Check the input and output properties of the processor, they are coherent with the
# input and output shapes of ResNet; here "None" means "whatever, but this axis must be
# there!". By default, this agent will act as a serving "lone wolf", serving whoever asks for
# a prediction.
agent = Agent(proc=net,
              proc_inputs=[StreamType(data_type="tensor", tensor_shape=(None, 3, None, None),
                                      tensor_dtype=torch.float32)],
              proc_outputs=[StreamType(data_type="tensor", tensor_shape=(None, 1000),
                                       tensor_dtype=torch.float32)])

# Node hosting agent: a node will be created in your account with this name, if not
# existing; it is "hidden" meaning that only you can see it in UNaIVERSE (since it is
# just a test!); the clock speed can be tuned accordingly to your needed and computing
# power.
node = Node(node_name="Test0", hosted=agent, hidden=True, clock_delta=1. / 5.)

# Running node (forever)
node.run()

Run it. Now, here is the agent capable of generating tensors (let's say images), which is asked to get in touch with the resnet agent, taken from script 3 in the assets/tutorial folder:

import torch
from unaiverse.agent import Agent
from unaiverse.streams.dataprops import StreamType
from unaiverse.networking.node.node import Node


# Custom generator network: a module that simply generates an image with
# "random" pixel intensities; we will use this as processor of our new agent.
class Net(torch.nn.Module):
    def __init__(self):
        super().__init__()

    # The input will be ignored, and a default None value is needed
    def forward(self, x: torch.Tensor | None = None):
        inp = torch.rand((1, 3, 224, 224), dtype=torch.float32)
        print(f"Generated data shape: {tuple(inp.shape)}, dtype: {inp.dtype}")
        return inp


# Agent: we use the generator as processor.
agent = Agent(proc=Net(),
              proc_inputs=[StreamType(data_type="all")],  # Able to get every type of data (since it won't use it :))
              proc_outputs=[StreamType(data_type="tensor", tensor_shape=(1, 3, 224, 224),
                                       tensor_dtype="torch.float32")],  # These are the properties of generator output
              )


# To retrieve the result we got from the ResNet agent, we define a hook
# that will be called at the end of every run cycle
def hook(_node: Node):
    # Printing the last received data from the ResNet agent
    _out = _node.agent.get_last_streamed_data('Test0')[0]
    if _out is not None:
        _node.agent.print(f"Received data shape: {tuple(_out.shape)}, dtype: {_out.dtype}")


# Node hosting agent
node = Node(node_name="Test1", hosted=agent, hidden=True, clock_delta=1. / 5., run_hook=hook)

# Running node for 10 seconds
node.run(get_in_touch="Test0", max_time=10.0)

Run this script as well, and what will happen is that the generator will send its picture through the peer-to-peer network, reaching the resnet agent, and getting back a prediction.

Step B1. Embellishment

We can upgrade the resnet agent to take real-world images as input, instead of random tensors, and to output class names (text) instead of a probability distribution. All we need to do is to re-define the properties of the inputs/outputs of the agent processor, and add transformations. Dive into script 4:

import torchvision
import urllib.request
from unaiverse.agent import Agent
from unaiverse.streams.dataprops import StreamType
from unaiverse.networking.node.node import Node

# Downloading PyTorch module (ResNet)
net = torchvision.models.resnet50(weights="IMAGENET1K_V1").eval()

# Getting input transforms from PyTorch model
transforms = torchvision.transforms.Compose([
    torchvision.transforms.Lambda(lambda x: x.convert("RGB")),
    torchvision.models.ResNet50_Weights.IMAGENET1K_V1.transforms(),
    torchvision.transforms.Lambda(lambda x: x.unsqueeze(0))
])

# Getting output class names
with urllib.request.urlopen("https://raw.githubusercontent.com/pytorch/hub/master/imagenet_classes.txt") as f:
    c_names = [line.strip().decode('utf-8') for line in f.readlines()]

# Agent: we change the data type, to be able to handle stream of images (instead of tensors).
# We can customize the transformations from the streamed format to the processor inference
# format (every callable function is fine!). Similarly, we can customize the way we go from
# the actual output of the processor and what will be streamed (here we go from class
# probabilities to winning class name).
agent = Agent(proc=net,
              proc_inputs=[StreamType(data_type="img", stream_to_proc_transforms=transforms)],
              proc_outputs=[StreamType(data_type="text", proc_to_stream_transforms=lambda p: c_names[p.argmax(1)[0]])])

# Node hosting agent
node = Node(node_name="Test0", hosted=agent, hidden=True, clock_delta=1. / 5.)

# Running node
node.run()

Now let us promote the generator to an agent that downloads and offers a picture of a cat and expects to get back a text description of it (the class name in this case - this is script 5):

import torch
import urllib.request
from PIL import Image
from io import BytesIO
from unaiverse.agent import Agent
from unaiverse.streams.dataprops import StreamType
from unaiverse.networking.node.node import Node


# Image offering network: a module that simpy downloads and offers an image as its output
class Net(torch.nn.Module):
    def __init__(self):
        super().__init__()

    def forward(self, x: torch.Tensor | None = None):
        with urllib.request.urlopen("https://cataas.com/cat") as response:
            inp = Image.open(BytesIO(response.read()))
            # inp.show()  # Let's see the pic (watch out: random pic with a cat somewhere)
            print(f"Downloaded image shape {inp.size}, type: {type(inp)}, expected-content: cat")
        return inp


# Agent
agent = Agent(proc=Net(),
              proc_inputs=[StreamType(data_type="all")],
              proc_outputs=[StreamType(data_type="img")],  # A PIL image is being "generated" here
              behav_lone_wolf="ask")


# To retrieve the result we got from the ResNet agent, we define a hook
# that will be called at the end of every run cycle
def hook(_node: Node):
    # Printing the last received data from the ResNet agent
    out = _node.agent.get_last_streamed_data('Test0')[0]
    _node.agent.print(f"Received response: {out}")  # Now we expect a textual response
    _node.agent.print("")
    _node.agent.print(f"Notice: instead of using this agent, you can also: search for the ResNet node (ResNetAgent) "
                      f"in the UNaIVERSE portal, connect to it using our in-browser agent, select a picture from "
                      f"your disk, send it to the agent, get back the text response!")


# Node hosting agent
node = Node(node_name="Test1", hosted=agent, hidden=True, clock_delta=1. / 5., run_hook=hook)

# Running node for 45 seconds
node.run(max_time=45.0, get_in_touch="Test0")

Step B2. Connect to your ResNet agent by means of a browser running agent!

Instead of using the artificial generator agent, you can become the generator agent! Search for the ResNet node (ResNetAgent) in the UNaIVERSE portal, connect to it using the in-browser agent, select a picture from your disk, send it to the agent, get back the text response!

Step C. Unleash UNaIVERSE!

What you did so far is just to showcase your model. UNaIVERSE is composed of several worlds that you can create and customize. Your agent can enter one world at a time, stay there, leave it, enter another, and so on. Agents will behave according to what the world indicates, and you don't have to write any extra code to act in worlds you have never been into!

Alright, there are so many things to say, but examples are always a good thing! We prepared a repository with examples of many worlds and different lone wolves, go there in order to continue your journey into UNaIVERSE!

THE TUTORIAL CONTINUES: https://github.com/collectionlessai/unaiverse-examples

See you in our UNaIVERSE!


📄 License

This project is licensed under the Apache 2.0 License. Commercial licenses can be provided. See the LICENSE file for details (research, etc.). See the Contributor License Agreement CLA.md if you want to contribute. This project includes third-party libraries. See THIRD_PARTY_LICENSES.md for details.


📚 Documentation

You can find an API reference in file docs.html, that you can visualize here:


🤝 Contributing

Contributions are welcome!

Please contact us in order to suggest changes, report bugs, and suggest ideas for novel applications based on UNaIVERSE!


👨‍💻 Main Authors


Project details


Download files

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

Source Distribution

unaiverse-0.1.18.tar.gz (380.1 kB view details)

Uploaded Source

Built Distributions

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

unaiverse-0.1.18-py3-none-any.whl (401.0 kB view details)

Uploaded Python 3

unaiverse-0.1.18-cp314-cp314t-win_amd64.whl (21.7 MB view details)

Uploaded CPython 3.14tWindows x86-64

unaiverse-0.1.18-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.6 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.2 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp314-cp314t-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

unaiverse-0.1.18-cp314-cp314t-macosx_10_15_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

unaiverse-0.1.18-cp314-cp314-win_amd64.whl (21.7 MB view details)

Uploaded CPython 3.14Windows x86-64

unaiverse-0.1.18-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp314-cp314-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

unaiverse-0.1.18-cp314-cp314-macosx_10_15_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

unaiverse-0.1.18-cp313-cp313-win_amd64.whl (21.3 MB view details)

Uploaded CPython 3.13Windows x86-64

unaiverse-0.1.18-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp313-cp313-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

unaiverse-0.1.18-cp313-cp313-macosx_10_13_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

unaiverse-0.1.18-cp312-cp312-win_amd64.whl (21.3 MB view details)

Uploaded CPython 3.12Windows x86-64

unaiverse-0.1.18-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp312-cp312-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

unaiverse-0.1.18-cp312-cp312-macosx_10_13_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

unaiverse-0.1.18-cp311-cp311-win_amd64.whl (21.3 MB view details)

Uploaded CPython 3.11Windows x86-64

unaiverse-0.1.18-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp311-cp311-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

unaiverse-0.1.18-cp311-cp311-macosx_10_9_x86_64.whl (21.1 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

unaiverse-0.1.18-cp310-cp310-win_amd64.whl (10.8 MB view details)

Uploaded CPython 3.10Windows x86-64

unaiverse-0.1.18-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (10.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

unaiverse-0.1.18-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (11.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

unaiverse-0.1.18-cp310-cp310-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

unaiverse-0.1.18-cp310-cp310-macosx_10_9_x86_64.whl (10.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file unaiverse-0.1.18.tar.gz.

File metadata

  • Download URL: unaiverse-0.1.18.tar.gz
  • Upload date:
  • Size: 380.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18.tar.gz
Algorithm Hash digest
SHA256 06da8fa46d732aeab2df5ca75ed92c44a8397ae9917799e1cd9b8a158c60708e
MD5 f93a9cccb8b23570b35b69355efecce2
BLAKE2b-256 cc6be2a34846d2aab3da57d9d5f0f650d0386abcb70c54f6b6bfce8e3635db46

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18.tar.gz:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-py3-none-any.whl.

File metadata

  • Download URL: unaiverse-0.1.18-py3-none-any.whl
  • Upload date:
  • Size: 401.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-py3-none-any.whl
Algorithm Hash digest
SHA256 670ab85374cd785bef8e4237abceee335f1121edf3e0f1e0ee2e3cefa74995a5
MD5 71aca0abc3e99611993c3f6c1f9119b1
BLAKE2b-256 42a205f1a31ef59a153079653570a26cd187a00c047d06401c16b7acc25660eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-py3-none-any.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 21.7 MB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 9609bd383995a10c5cccb05869c841d0d55f6f6b1c6a17e3eb2be373afc47e43
MD5 b8a96ae7df216121a5ca565b961c6389
BLAKE2b-256 79e9c1345206a0e781f95908026190750c387f1c1841edebeee4d5e9f095584c

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314t-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ebd5b1ba5a41b9a939f983d043ceaa4dfd3990677b73eea6aa80f4d99cf98beb
MD5 92da75f44f197a8618717f14a6edb8ca
BLAKE2b-256 74ffe9374aeeff31039809b02728f44da5d4ed0f2df2764830fc7dd7b5c41ca9

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 9b1ad8c82952cc5eaee0f487fe89efbefdc7ca70481ccda13f751f62cead94fb
MD5 4653c6ad627d98ca9fad4414d902ecb6
BLAKE2b-256 f77329c36456fb02f7c318048447a6c9ba92452d5c7172cb67e93690f278dfe7

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f04d7ab6b3de099778df87eb5e1f892d4a18e86e0f796ebdbd3d9df49517f6bf
MD5 9599a2ad87b0e689c845a07d0c0dce84
BLAKE2b-256 b70c3e7ce3f1222a590ab985cae1883ad5f6cc505062518144a294075e4d2826

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3b9b66d04248e5852c23b9e45ce8c0b9d74af90ae20feeab1d22264768f5d288
MD5 a19c574bd914e0be08e16661c863b0df
BLAKE2b-256 327823cb3447f96dda4fb592339de35b5ee96d923c158ea51f66798efcba3732

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 21.7 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 b7e25bcbed9488373f1d5a71778b6b1b3d65e0384e273b603125ae71196155fd
MD5 02db0852dd5d32137860775da1d2c9d6
BLAKE2b-256 a0c2056abf993fd3163a8b847727bd3dd86081df9cb8f92d4aa904dbcddf46b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 8a16b1c85fd8d0de4bfcd59e2109f790e5c683e45e99e41c36ef00c69ffd2cae
MD5 0baa9acb0fffb7486ed81ef266682a12
BLAKE2b-256 b9bf15c2c8f98b56ea8e4be743acab500ec86f0984612f978a164310052b8c4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 a8bf3acc2b129118c6db9acc8586da1cdce806ed7d02789e4b9d8ce5c1b6c3a3
MD5 5164ef2fca9dfd343ac3b9b55087daa4
BLAKE2b-256 ab6043256758260b502ab0568af704e0db852a97436de06cc035ed2e410a0446

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4628cf5274a52a23fe6b642a0cfe14edbca9b6a07cad86b373a3888f11d6b5e9
MD5 419fec7f2cb3badb4c59c34dc2964a5f
BLAKE2b-256 e63b3864fa9ee67a10f9e090bc85eac9f970c46f83b0d4868b70830993ad2b7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 24d485031fc5d231692399d80534f29370eb3d8cdc78a8f918f0c5cd1c4a3f51
MD5 df0c1709cb26727aacac612883ffc7d1
BLAKE2b-256 702db3945063e2a163b00b90b0cf703b3e451fff746b5829bb585cc092f3ad4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 21.3 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 57a3b1a3bc68ce4554d3a1f86c5d96deb0504fbea7398aece93261d4bfcb94ae
MD5 62f908c05054a39ea9bf0ba7c30a9bab
BLAKE2b-256 babf6a1980991ce59211698375663819f0ac49c7ad8811cdcecf89be3edfe9d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp313-cp313-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a69ff688580b151833f259409a3f203d2523ececf9e0bedb4850abafcddc7e26
MD5 b8bc8be73f802990e8e704f2ef62727d
BLAKE2b-256 352d0066bba90fb95b62eed82b83f29304da699069edc6543391ac008f330e92

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 0174356a3c6cc48707bd7bccb212b4d0b0b98a0e8236fe86a4d6e10aa2055d99
MD5 3ac4d731648466b80d935c8a0101d45c
BLAKE2b-256 bc4ef6ec13642839df7d5f543d6f1b58306321366ef36b6de86d6fff4290af8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a77fd03dd769d1dab1041ca816ced43615bfb7752306831fb6715d10a82dac7d
MD5 a9676aaa8d6b5c971d55f67e9aee848e
BLAKE2b-256 b62c05adffc28fdb3972cad9b19507f1d3adab7bf01c223e13101a3025937f67

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a2db8d4ae48b4ed3b751a285ba503a7d9ce2edfc7165b693c18257732ba553af
MD5 9cf5405622ccc0893d142e917de1420f
BLAKE2b-256 e631074db6d3bfd240cea37a1a1efeecdc2fa36381e60cbd4ed9aff644013dae

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 21.3 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 0766fc6ae01aa8a9030484ed17ca690cde38d43468ba047eb557b6bfd58f18cc
MD5 ca8ea46f137d3e3538f6967c9a9784ee
BLAKE2b-256 5cf030e928e4f9ef4cdb9cacbf53018c82d6d2ed03a044e30c28fdd88d36383a

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp312-cp312-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5519ca1d340f463709c7f57a171b6c4ab808642f77c982101c9f30716e56d014
MD5 0b383a0f178667fd1aa383aefd681f5c
BLAKE2b-256 6af124b7377f8019bfa79f7f287e4a2c2bf4d22f28f65ae948c301993008cf07

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 0a864be2ba092a78d803db61faaba73d36048e854e05406f240395be06b815b3
MD5 29bc71b44d10d91a52b46b13e5ab912a
BLAKE2b-256 a4bb7680df80271ca29bc22839467987ffc70235d0b1ff1b4905f82cfd5d8162

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 73bd95e4b3e1e8fb4728c9a4d4b954bce580c52a13b8808d382b1479744459fb
MD5 051abb70288c42a515e22f26560db69b
BLAKE2b-256 9a635e857b98106abf2927d5b31ba5daf17e5751c261115a4bace22bb080210a

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ab0dcf378aa33ebdf02c5b8f0678f35a8c5dd3a8563eb3f6d9015888eacc6e8f
MD5 f308b438072876286e93261fb5813f21
BLAKE2b-256 4c9e35d06b6cdfd3a598cae8947f376de37a2a295634436061dcb8bbac8ba8d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 21.3 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6d62bf0e9b278e664398cfb92ce1b550be19133d17983b3368df6a6cf2da4385
MD5 130dcecea002fd6c60a803a8c087b299
BLAKE2b-256 e071d158a85d7149e7df5c243ba5a8593f4312e0826cccacc5441d5048cc66ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp311-cp311-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 24e515932bc1cdd403604c1cb3d4a50b3006eb4265c8409c4b7c1aa5ff50b366
MD5 ca6b833530ca42e33907a4775c27a368
BLAKE2b-256 7b49d37ea7837a41884491faec7819eec92a635a5a52256736eaf6117caa0ff4

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 fd967114727e8816c649595819f7ae044aef77d9d0023041dca74b875a8717d7
MD5 892fa09c51bf7d68b87cc5509de84ffc
BLAKE2b-256 d260459f62b128ccdd386d76b25c830f128255e8e12f4d73a957dfafbd83a436

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 ee16ab0e3a2ea5c59edbce9f7e4e3146092867dc3734526bf7bc30739f8c783a
MD5 e94d30d49501ac61b81b6fb01285aa32
BLAKE2b-256 daab5b07dfe32e6d363a7ca5ae3fdd69434bcccb82f85ce5f829838383dd9087

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 15bc9a65fb2c3098f9c8fb462cda671ffe96a7a5c754add8220b90198f2df068
MD5 e375359c16db6320131ff9db5fd5d01d
BLAKE2b-256 eb0832e10ce6f03272075c532f85cba406c1d74df5f1065a1517f6133ac7fa66

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.18-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 10.8 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for unaiverse-0.1.18-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 4577c69e8245cffa05aa05105da01219f0139c655af81d26e35dfeddfd0a9664
MD5 71229d9139fe6accbc4d116bd9bdaca0
BLAKE2b-256 4a3823bb4d47f382cdcbc8283814b5e96189dbae414134c73cee43e7a309bda6

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp310-cp310-win_amd64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a8c2b76a95a4d246a273821662db1712b8c2fa7149d06bf99eaca7354f5eb265
MD5 5f6ba06ca939ece841690d4a762a4e47
BLAKE2b-256 ebb46be0dcdea048b277d40dd54088fdd32368391ed31a8ea3800abe8fdf440b

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 5f8e6d8719de2f0cfda8a11e4ba483bb75472362335cde599ad5944b978e322a
MD5 d9576bd190eb4ca85488d3be621bf7d1
BLAKE2b-256 5f7eecab516b9c14963be84d8720a8ed7083214e15d6ccf4e62e478c5a7b4d4c

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0d7bdb466b01a27bec3cc4d523bc6dbf12d850782643b08f30cc77580a5c8da6
MD5 78e22fdc4a83de18d3f924e5210faa45
BLAKE2b-256 d91d5f6762b46a6e1156624d02ed2cfc3d53d9d03da86107e4f5419c820dbe20

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

File details

Details for the file unaiverse-0.1.18-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.18-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 fec918397d389cfabe258bffdd3b16ab1a6d0f11214641453d05d3c4ae5cce04
MD5 6ec8ed70eb83ac1ee14cbae724d001c1
BLAKE2b-256 72096f51f944276c23c893cb8720807dd29ccccf6f257ba4bebe066a3e045923

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.18-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: release.yml on collectionlessai/unaiverse-src

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

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