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.21.tar.gz (388.7 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.21-py3-none-any.whl (410.0 kB view details)

Uploaded Python 3

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

Uploaded CPython 3.14tWindows x86-64

unaiverse-0.1.21-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.21-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.21-cp314-cp314t-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.14tmacOS 10.15+ x86-64

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

Uploaded CPython 3.14Windows x86-64

unaiverse-0.1.21-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.21-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.21-cp314-cp314-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.15+ x86-64

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

Uploaded CPython 3.13Windows x86-64

unaiverse-0.1.21-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.21-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.21-cp313-cp313-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

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

Uploaded CPython 3.12Windows x86-64

unaiverse-0.1.21-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.21-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.21-cp312-cp312-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

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

Uploaded CPython 3.11Windows x86-64

unaiverse-0.1.21-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.21-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.21-cp311-cp311-macosx_11_0_arm64.whl (19.9 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

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

Uploaded CPython 3.10Windows x86-64

unaiverse-0.1.21-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.21-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.21-cp310-cp310-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

unaiverse-0.1.21-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.21.tar.gz.

File metadata

  • Download URL: unaiverse-0.1.21.tar.gz
  • Upload date:
  • Size: 388.7 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.21.tar.gz
Algorithm Hash digest
SHA256 f2f1fc4788868e52598b77f71793a606031f214ea87d1dd5214a01bd8ce794fb
MD5 6035fbb3d73f682f09e649e6e5416476
BLAKE2b-256 8874e59d9ecca71d859d070a0a3ededccda7fe9e9ba06ef540da6b8756acd418

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21.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.21-py3-none-any.whl.

File metadata

  • Download URL: unaiverse-0.1.21-py3-none-any.whl
  • Upload date:
  • Size: 410.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.21-py3-none-any.whl
Algorithm Hash digest
SHA256 b909202ab1741922a6e958192150e2c9c6bc4f1024089f30785e93ff0eb6b803
MD5 65eeb50e2730015ac87f892d52f69e9d
BLAKE2b-256 1eab36f20407462e33d826dc59a0cba6f06fd2eeb14f18afbf41c1f0de4ba09b

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 98f03631249f9aff259341605d89e65bd931f51cd858ce93341cf5c8a9cda158
MD5 0895edcf5c4037d1b4b6f2e0c2226a78
BLAKE2b-256 df94d962e6f60e671f1721b6460c56a890bb35f6fe2bd38de9659944c38aefca

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 dfaab2a1d09a8a0933bee1d819e9713820e605d8266b3fb7efda7d206bea5535
MD5 caea7440eeb8d9fb104c7004e1993b43
BLAKE2b-256 85487bed8ab19385acbbe515e49fa7d31d9124f6f2d688a1a1897fc98285f2c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 100ace13dff8d7332bbaa6fcdd886bad0e991f4076a750244c18a5cecf76dcfa
MD5 505d4214c3206397d94c2b90e29336fd
BLAKE2b-256 8dc55ec6ecff0a65a38f9bac0a94c8563ec8bc0e38105af51d17257a61b8eec5

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 92f4b85091a8b9e342142df46cff7fa6b8169eaac64523005bbb958672cb9abd
MD5 85d801174592f517bf5b844b4c3508d0
BLAKE2b-256 c8fa09696bae6a1b40729017ace383d1506a3b91216caead848262cef652d354

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 68b2d284955d6f3b68cd6daeb2d8a32c7c19db018918ffea6cffd23e3a7600e7
MD5 c2ee3ffdac5626552c1263b0e071d578
BLAKE2b-256 9dd07a188d0060170c708a05841b52aee653a6fb80ab66089d51265dba0ffab1

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 26eda6cf033e39fc28d82584d45e3a6db29dd454db3b5c8d31bacaa6d2a5638f
MD5 7ccd4d59b2f1a4d163214e5c3186a2d0
BLAKE2b-256 cf2cfe43ee42dff6304e5c465250b905f0de91026d7d3ad725d1b75c504e38b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d97e5dd6a44b02b1b717e9166b6e2ddb4de8ffea719059a65c74a0ac1b3c2dfc
MD5 b4d31ff77752f99b59feabfa540fcf2e
BLAKE2b-256 7e21ca23d0af215f81db881afee6d4e4b458d258cece31ee30f1dd34deac5a7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 ad9fe4ec6299c5719fd562b52f5f2e2d5d020f2c91c61764c27ed1ed47b0e4b2
MD5 7cbff1d0010b5ae57199b8fea321d97b
BLAKE2b-256 7d82b761fae820b0038c6b6de6c804d54cfeca2688352cc9aace3cef9468cb56

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 893196b574b7510c7a9bb9f504a14ea911ce468bbd5752295fbb39b75423400f
MD5 ba6e0fefc059f3bc462ee7a3568ce4ca
BLAKE2b-256 c1934ef24ef299f13773e9e4b5f8c2279470cdf2ca099f2fbda5b713620b115d

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 9e89cfd9f2a28f4a760e3ca4f489708780cd7569b3b66f2de3633f68255d687d
MD5 fe5b2484859ae76edde00c6cf6f71109
BLAKE2b-256 b8257b2e1ccbde34a01d31ccb6dc298b14342fe3341f8da3464168090b92296f

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d46a1b1feb3b8a6d9ff513e0590814239ba70816799375e8bd0632992d9ed382
MD5 2b1560f9ada115d259bf3d08da638728
BLAKE2b-256 48198feaead54229481bf5a264d66a8bf9cefcd711bcd26cf15b6e509400ebf1

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 11ba226407380c315ed9018b53f943b2d82f0c85de0b91cb899c2aeeeafd38b6
MD5 0a4893a31bf0389a6ac3ea78a96e5cdc
BLAKE2b-256 88f24eae009ec7acf2cb2873884aad228a923dd75ec2e131791df9d8ab39f308

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 bcd5dbd14b316a86c8806a255119f3a65dfa2f5d4478271f18971e2b8e92ba20
MD5 6eb6a925de161cdd70618de89495d459
BLAKE2b-256 3ecbb550150dff5b72ee477069042fbe8c261bce7574edfd80074f68f2bc4779

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f1824a4014efa0eed54a9396a8390b745f10faa034faffe5dd20c936f9c2536e
MD5 4a2175c64fb53e89ec021d8f44acc6d4
BLAKE2b-256 652358291ba4c5cf5f3fc1dae525a5ed98db4a4002b559081c35b0240530001f

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 16d4bac2c50e73c0d13829d2d6ecb137a3150d6d3d92a0e928a4375534fe2240
MD5 9aaf19a408178156670698c47526cae8
BLAKE2b-256 3ac20dc964360c4d8bf72ec55719225178150e5a4d46acac072567e3ab1ef2ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 5baee65a8570c785fab988f1793a81ab5bc953877720d07e94ecde5d7a8f09c0
MD5 6ddb49f0efd9368645f3ce52ddb33ab3
BLAKE2b-256 3e2ef617c38b7f5c3d802e4631401bf832e1aa71d1500ee26cfa427aa5bebd59

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 64b1e0b67e694ba12658368943a6bcaf53ed8f8da5f825263bafc6494bba01e4
MD5 a4f4ea917b617c7de653dc3cfea1f6cd
BLAKE2b-256 da5dfe35c5e9de7bb9d64d42977f15debe2c0cc4006a5b2a057d0a3893b7dbf6

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 8c5b75600aece9fd1c3e5602ec8116e319cd2bc9e605578974c66249cfc17f17
MD5 265d503e1aa6fd3e8136cc7cd2bea63a
BLAKE2b-256 36ae16483bf8f628a303aa73f5db72df9f7067f9a8c4b83ea1e43edecbf5bd55

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 805e3bcfc847ae2d4038e162ad617f0b9187b65a5d0a61bba1ac04ea15d7aea8
MD5 07f0fc48b33178d7a1edf11295dbc81a
BLAKE2b-256 a90248ed656da32ab81aebbde229567fd41bf5c381c2cb9179270fa50add668e

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 000670e5fd2cfae58c1f182f7622bb8e49a8b4ff4e7c51ca97e30eec912fc20c
MD5 469a3885cb09f57add05e02399edeafc
BLAKE2b-256 a858e594e946b74540b48b53677c9cf144e59cc8c454bc063b45a6913a1d4567

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 53b60511f15d3419716da50942617261e9bacd4f6e58422c9d52056b3b02044c
MD5 3d65a4673b8646e568441d3304088342
BLAKE2b-256 cc6820bb95b18a68ef633f327eb56a8338d146039f067103ddf4ef0baea21913

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 067a7d2c856a86e025ffa3e7a6bb6e10c34596606a79af005bed743ebdc0c8fc
MD5 73bd3505134188684082c1e7b5e61214
BLAKE2b-256 5dda88a0be4c8ba3759429640a616122e4c00a5b541c217d7974d8da56259fd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 63909908b03c09bf4ed107725b8888885814d8eb08596285f9577d51e55d10d4
MD5 99e3d86e95987b9c1d80fe50ac6674a4
BLAKE2b-256 7b640d6ba7f622b63340b51d6cc4d08f5a66a51a254ebc63e31aa6a1dcb13a9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cf6d5162adebd6564922188af51f271b889470e54666327c873fb16834e694d9
MD5 ea1d35290b302ad56b0a0a700d121550
BLAKE2b-256 ccafee7ed8181ed42db2f5fdbb52fbead8b7f49a2ea79c4ee6351210704ce77a

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 deec5036a58efc52e5191890c172cac58df2f12892ba45880464b6fb3377a361
MD5 bc4eed68da88fb148969801bb2bbca74
BLAKE2b-256 a8e5d1fe9376b3b277f32d8cdbaebf5397c693bdf97d128e6f65d8c3120df7d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: unaiverse-0.1.21-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.21-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 649f121189f3c10c438cae21000fdf7edbb33a7476ef92e854c20021db93679b
MD5 505a2da1c062005a2897a98aaab05d71
BLAKE2b-256 7138dd48a3eba52a41a7828c253d1e1fbda0da98b5c93ebd0e5192b1bd3317f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f2367a1becd2dc3be2f147d134392ef1a805eaf4a54a250bc49a4ecefd7dcf0b
MD5 377820bca9e7a066e0b9cbaa37a2a92a
BLAKE2b-256 77c73e74adf8d942d1d4389d0b2a3e6942fd58fcfa9baa6b35b8538b79f4655b

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-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.21-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 297385d4840a0a978326c984d563d0454acc9243b87734a685bf9115e33a8998
MD5 01e6c425877e2a92e991b529ba25d58c
BLAKE2b-256 254048c42dbaf0d9a4f33c795c76fc4a8df67a951d165e6bdbdd37b1f25bb14f

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 46c218f99c8ee1d5e64345a9729c10ae2d2aa48e5378f0411c807e90c7be89d5
MD5 af47c553ad3c2c4357b16bea764c9c34
BLAKE2b-256 8a480a6eb33c16751524d13ef372ca03c002309201def518da69cb87b7798c82

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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.21-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for unaiverse-0.1.21-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bd40c7387c05a0de8effd0a5e41de2ed37d1f68caf71986e84d398c51ef7cf9c
MD5 5f80094509f0026f1903076c45bc148a
BLAKE2b-256 eee89cac34ad0dfa0269d5d16f8d539de848e92898e3f839c074172c6149f71b

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.21-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