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.dataprops import Data4Proc
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=[Data4Proc(data_type="tensor", tensor_shape=(None, 3, None, None),
                                     tensor_dtype=torch.float32)],
              proc_outputs=[Data4Proc(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.dataprops import Data4Proc
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=[Data4Proc(data_type="all")],  # Able to get every type of data (since it won't use it :))
              proc_outputs=[Data4Proc(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.dataprops import Data4Proc
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=[Data4Proc(data_type="img", stream_to_proc_transforms=transforms)],
              proc_outputs=[Data4Proc(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.dataprops import Data4Proc
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=[Data4Proc(data_type="all")],
              proc_outputs=[Data4Proc(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.16.tar.gz (294.9 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.16-py3-none-any.whl (309.6 kB view details)

Uploaded Python 3

unaiverse-0.1.16-cp314-cp314t-win_amd64.whl (21.5 MB view details)

Uploaded CPython 3.14tWindows x86-64

unaiverse-0.1.16-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.4 MB view details)

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

unaiverse-0.1.16-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.0 MB view details)

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

unaiverse-0.1.16-cp314-cp314t-macosx_11_0_arm64.whl (19.8 MB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

unaiverse-0.1.16-cp314-cp314t-macosx_10_15_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

unaiverse-0.1.16-cp314-cp314-win_amd64.whl (21.5 MB view details)

Uploaded CPython 3.14Windows x86-64

unaiverse-0.1.16-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.4 MB view details)

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

unaiverse-0.1.16-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.0 MB view details)

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

unaiverse-0.1.16-cp314-cp314-macosx_11_0_arm64.whl (19.8 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

unaiverse-0.1.16-cp314-cp314-macosx_10_15_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

unaiverse-0.1.16-cp313-cp313-win_amd64.whl (21.1 MB view details)

Uploaded CPython 3.13Windows x86-64

unaiverse-0.1.16-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.4 MB view details)

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

unaiverse-0.1.16-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.0 MB view details)

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

unaiverse-0.1.16-cp313-cp313-macosx_11_0_arm64.whl (19.8 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

unaiverse-0.1.16-cp313-cp313-macosx_10_13_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

unaiverse-0.1.16-cp312-cp312-win_amd64.whl (21.1 MB view details)

Uploaded CPython 3.12Windows x86-64

unaiverse-0.1.16-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.4 MB view details)

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

unaiverse-0.1.16-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.0 MB view details)

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

unaiverse-0.1.16-cp312-cp312-macosx_11_0_arm64.whl (19.8 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

unaiverse-0.1.16-cp312-cp312-macosx_10_13_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

unaiverse-0.1.16-cp311-cp311-win_amd64.whl (21.1 MB view details)

Uploaded CPython 3.11Windows x86-64

unaiverse-0.1.16-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (20.4 MB view details)

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

unaiverse-0.1.16-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (22.0 MB view details)

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

unaiverse-0.1.16-cp311-cp311-macosx_11_0_arm64.whl (19.8 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

unaiverse-0.1.16-cp311-cp311-macosx_10_9_x86_64.whl (21.0 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

unaiverse-0.1.16-cp310-cp310-win_amd64.whl (10.7 MB view details)

Uploaded CPython 3.10Windows x86-64

unaiverse-0.1.16-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (10.4 MB view details)

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

unaiverse-0.1.16-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (11.2 MB view details)

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

unaiverse-0.1.16-cp310-cp310-macosx_11_0_arm64.whl (10.0 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

unaiverse-0.1.16-cp310-cp310-macosx_10_9_x86_64.whl (10.6 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16.tar.gz
Algorithm Hash digest
SHA256 141b795968ca161164e9eec8977c2c8f7c658b1928df0d43dad7ac62de23ef01
MD5 bec297968e142de12f1e2c620e7f3d2d
BLAKE2b-256 ff5cc04cb0eac238eeb903fc580497ab6b685018d76f87f7234de6476ef4033b

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 54b45e9b2047b2966cbc58c0ddadde32ec6f60a4d8bab1a990b718aa7c430e10
MD5 5cf291154f504847d9149bc69c40bf5d
BLAKE2b-256 56b1d6ddba67bbc769248817d41171d00cfc8c0673da293566c631f2e981353e

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 254c3f8d86b7712b175e65ab734b5371b373510589b9e767a9b5ca9ada837c59
MD5 d5bd8e86e942fbc3eaaed3a34bd38aa7
BLAKE2b-256 1f584fe96258d03574967cbdd55751a4a556c9c3ff08ba3fa904111c86bc1726

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6d6be5b38993b4d4d2eca247d05cead8f06618df99faf814f6d26e7828aa6250
MD5 fc3f6a1e6c13edd8d8c32631a694b18d
BLAKE2b-256 0a2d78bb3b149a9251aea3c9ca69871914b070f6eb206bcd3b8f21c3ef593846

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 bff3fe7eddf9a25e0482e9b6f1a8726f93c25c98b25e558846e9a2c6e9083004
MD5 dbb50a771e07706377c75e2aa8e78535
BLAKE2b-256 090df65ac90537182a00f2a3f7ad77352f18814e53906a906ff3af8afd598a54

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 83d64eca33f6ffe8d66e40ca31d2d79d3971ea64c465936ef4f52f8849968288
MD5 b6b03cea6ed46e1d96eee563d660cbdd
BLAKE2b-256 e72b21bd54f932db80e06da659052577ea24f70b7be5d9309ddebb063c190201

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 45191b0cc57073dcc5aa50f7c22c6b20fa624eaa688bdc2947339bab99bc74d6
MD5 c680240886ec10b5097f786533cefd71
BLAKE2b-256 08598eb6d274e79830245b6b0cdbad0808b291419f62780ee82a2c3fad9f39b2

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 f96f199c309cdca66b2b232ac49033707dbeedd76573b98e3328e10543a8578b
MD5 e44788dd4981922b385fe062d0ded59a
BLAKE2b-256 bc6b0b88aaf715839d840210acc88858d423196244b5ee1e769a2259b7d69e19

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 aa66fd9a38fda368a44655f986c881053ed9d0a45e080091d7c87572167a964a
MD5 9c7bc9260e6f74a42b5e12b0c835d735
BLAKE2b-256 9762fc765f0ed7df46a2bb98430546b6c401c23ce4979adc2b0001d64f6e61db

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 cd7ccb8b8846c5b3c025bc7ba119f0922b854be11269724dff727137148317e9
MD5 935e491e3d402ce2cfd798ecb486a6b2
BLAKE2b-256 92d4e3fe0beda96929548cff2705280c58404cf3ee6f2d0d85e94b5d48974dc3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c8afd45816e2c28b446effcc712a2bb32eaa2272fc5e7c7c088c845f05f7f1a2
MD5 c6c0a3a9dfae8e25418bec5bd4c26339
BLAKE2b-256 10326ea9b5e552625257b13769d9f867ba441f40065154c9c1edefcd6706bfd3

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 98310bdff7bc9639e7990708f73807c51fe6db2f38379f58572200cfeea2deb1
MD5 8c6e943bff20215fb00e62f725adefc4
BLAKE2b-256 32c317bf0221c081e3150cc407c6696905ff7b88c3afbb1fff2a06a1739df535

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fdad51ef9ccc0ccf8461243cfc1aaa048f5a6dcedf10c878e0ec0673c6a80383
MD5 7c798cb15864a1980f5126069ced527b
BLAKE2b-256 b56ffbacf13ff4ac35067f62cab857eb8f1e20d5cda90bb55d490a7e1ac427ad

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 f9c0139ac91ea60ef34731c9317e862b19349800bce9a0504755af944925c49e
MD5 4791a9b4cca40708c953b61a8e4f3ab3
BLAKE2b-256 d7eec9055fbe1b831970b6aac824bd333635f452f687364180fe152359e45867

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 23efc67d9120e69d04ffc7fc136347e44988bcb0c6e415379e9b3c1095b00688
MD5 6872bf9e283f8451bad32a31400a8b40
BLAKE2b-256 1c6535860e8cdfbb25633c163e3ed8fbbe5cb5cef1f2c3dd7664aa73ce789eec

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b391e52f40eaec70c7e60b459358e5ecce944f0be1d3bd8111aac68742059d1d
MD5 5cbb6fc013fe4a4f61a37a6af3975061
BLAKE2b-256 5ae49d348d08472be58fd57ac273b8a8763d6e0fea777363bf22e3067fa33f73

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 ca72412849148e7e9bec8041c9957a6fe2c336e021120d818a5b9a5c6d4304ae
MD5 e7de034bdfd16eeeaff430f6cd60df1c
BLAKE2b-256 c7932b9fb14c02e6f132b46f4dc1d1c1b355394ec0d17313eb96b46298a25617

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 dab55fca68d50233d43aaaa8830fcb9b4a576a846e00f6f2c8ee58f30fa08428
MD5 7b0855b415c1486b4b643f9a5b6f860e
BLAKE2b-256 545cb4e01a67fb639739c781e8f8b66e566b6014bc7c393e05673cfaa1a21ae1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 ae75c74d22fe3a5e0cb2d399caf629815f7d2e90f953bd9af4313c75c517f6e0
MD5 28a1edfd64128d4f03dca9fe68568215
BLAKE2b-256 4f937b175eb9fcf3f24be0d501d5315803de86a0bfd0bd503f021dda26687476

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 0c90c4974b794dd73e0a8e95fa2c998a644d75aeba9ee359e4a21e560bfda65d
MD5 281fbf6a00575e4266b9fc8305d7cb66
BLAKE2b-256 3f81ff975fa2404afe3ac0fa0defdfcec1875a16682d5840768a06f0a872ee6c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dd42f81630dc6ec695c9f9d2b2ea0bc71bc8de4d615376061b0921ad48f7f418
MD5 41f68880506663d61da7991ee8c2030c
BLAKE2b-256 38aadb66e36650f3f7a8c8f170836f909e3f686c4eb18360922c570c0fdd7315

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 82a5103f094b63c76f8a315cf5f8969989f6a9387ac455447ce6ffd01cc2a5a1
MD5 98f01fda0beb37d43abbfdcdee50987a
BLAKE2b-256 938324bc9088d92655f2c361f29a20f5eaa188f79417ccf811ee2008d646451e

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 1a4058f5dcb1174a33329e6a2eff2f89f2b43052f64c1bbe18e59dd74b955303
MD5 f81b9782c0706d293d913ae302f1c7da
BLAKE2b-256 83594ffe3a33e24c324816e0ecde7d3dfe1cc0133dadcff9ca0fa626a54f0016

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 52a76162c0e8c787aca5f851cba5607cddfbaa008bd0a9134872bc3cebcb6937
MD5 d0377b6e8cc0a2de8f0aa651e1b9cac7
BLAKE2b-256 2bf961f640fc2ac4df6ed0814771c2f80ed1a55adbaf64add46ce268ed2c40af

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 4db3cf6c147c7569a5946b9a4dc70b5bac6a16098cb8cbc3e1c64e049b32dc10
MD5 b7c94593a62903d51b4f4eec6a8faf98
BLAKE2b-256 b158b0ca584ad61d4483f3b48021b11fa0dc47a9b29bff3d666f88da609bacc2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 53208563c5b4871dd9ab875636d5bed1a5003191c2c0cbd1205ba6a44e8aaa01
MD5 3cfc686b1caa08bd528b963f404fa2a9
BLAKE2b-256 1fc26fadd913f5257f06c94e3e5b35c864cf88392493cb0586a217047968174e

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a8bf6479adfe5ae890931a399fd2cf575ccf74e9f18f6c7e438def4c4c218cb4
MD5 df8f79a5e20a4514b5f2f3b2c837c8fc
BLAKE2b-256 9340fc3be6d90f37264edb63d3b9481275fcb6a532e308564be7cc68a56d5204

See more details on using hashes here.

Provenance

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

File metadata

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

File hashes

Hashes for unaiverse-0.1.16-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a8293df60457d17b6d7e33399cad06d7dd518b56cfcf660773d7bdc4d882713b
MD5 42147c38c7c49ab7d80c619a146069f8
BLAKE2b-256 95c90655053f93b1f4405290f84faccd35c5436e75adb62808064373550158e1

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 441970ecd9bb35ce3b7834455fb1a8cc212d0e056021f965f87f5ddef52d1ccf
MD5 3f8cd6763cf59be5f9803d02ec1b3408
BLAKE2b-256 74b579e089f86acb12dabac8aefc97b47c4ab27f35ae0a67e2099420f418b470

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.16-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.16-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.16-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 fd4a247b047bd6208e554a5decd0527d009b9e71ccef5bc5546e461b6d639582
MD5 de9a43e9391809d3f9578f8f81ee192c
BLAKE2b-256 5cc9a5dd8ff56420ff53e873e256ee9a39d30de1ed07a1ed2da565b703d773c5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8618c51f44e34b9cd6f0ad212b6131db4ba9f4e5e092e8fecb3088aaa474d24d
MD5 867aa7778638174e74e75d25dac64e0d
BLAKE2b-256 c2671cf761f707af1753860fb001b07ccaef19855794ae941d726283e2e97dd6

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.16-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4635cc14c2487ca2bf6e83ca16049126041cf1872ca4355e00b2fb22c1a62709
MD5 1bd1e86a2b80133b3072648765390dae
BLAKE2b-256 1b0fcea3eea24e01f39f8b6ddf4cbc9a8ed74bf308305136748b5d201be29bbc

See more details on using hashes here.

Provenance

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