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.19.tar.gz (384.3 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.19-py3-none-any.whl (405.3 kB view details)

Uploaded Python 3

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

Uploaded CPython 3.14tWindows x86-64

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

Uploaded CPython 3.14tmacOS 11.0+ ARM64

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

Uploaded CPython 3.14tmacOS 10.15+ x86-64

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

Uploaded CPython 3.14Windows x86-64

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

Uploaded CPython 3.14macOS 11.0+ ARM64

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

Uploaded CPython 3.14macOS 10.15+ x86-64

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

Uploaded CPython 3.13Windows x86-64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.13macOS 10.13+ x86-64

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

Uploaded CPython 3.12Windows x86-64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.12macOS 10.13+ x86-64

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

Uploaded CPython 3.11Windows x86-64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.11macOS 10.9+ x86-64

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

Uploaded CPython 3.10Windows x86-64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

unaiverse-0.1.19-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.19.tar.gz.

File metadata

  • Download URL: unaiverse-0.1.19.tar.gz
  • Upload date:
  • Size: 384.3 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.19.tar.gz
Algorithm Hash digest
SHA256 e04d5ca632a2bcdec47a36ddfd42e985dde6ac819c921fbc6f0bad70e0346a81
MD5 d0681f5b911a79181a212a4c0105a7f8
BLAKE2b-256 835ce31e20168169c800186c40b102611adb479faa610b18987ca28d4d6497cc

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-py3-none-any.whl
  • Upload date:
  • Size: 405.3 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.19-py3-none-any.whl
Algorithm Hash digest
SHA256 e3a731d202e4dcce38b5ee3f214425453db92bd8ea1e4a5c1b27159a23ee7aa6
MD5 fae82883b578ceffe704ae38a0a5a29f
BLAKE2b-256 8e88e0e1410a881c90b9a8927204de35d7b33fff4a79a67b8ecf16325e032080

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 ed9b05552b9946249e4981fd1a7567b4288157cf43034cd2fc869a32d46d3d5f
MD5 b943c8eb3e5710a4e44960e08b97571d
BLAKE2b-256 a69b5832cef0dd9cdd736dfd9df660bcbc1831e77303da5abfbadbe12f9c49e9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 d0b6e638d1ea48922b7043edc20a66ef9ad4effe8442d0d1d0440895171a4deb
MD5 bb2acc46fdfb0a50f4e81a2cc7d3878a
BLAKE2b-256 ebd64f21182044349ac93243805621b9c32bc959234dd796fed82d1294eae2d5

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 a2df83c8332286d873aba507aa8b1a803f662cb286b52f2cc1330a5141f7f779
MD5 e1bb3b19f486cbb1e3b30a9098711a3c
BLAKE2b-256 66b0b9dce51515277c9a6de13d13c51c448cedc9ab9c593b3db6c75cf70ac4bf

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6c1e37f2625aa53a3bda0a258eb4de663bc7c35bc2f62a1bfccd7d8e5575fdb1
MD5 ee3fb8ec5cac11f8b4d0d535f1eada32
BLAKE2b-256 4a76c0f723cc2bfc471cb24ad034e2fe3b0495901ce5e18497a3468456f119fb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 5380d7500dc596fdcb253703dec839dc430f22c3f1135d7abcbf1bff5141a0f8
MD5 4fce92e2aecbae0f788e7201517c5d71
BLAKE2b-256 c23297533e850600f63876e14d8373083263797d70a439f5ee06494e4fe04ab7

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 59a80f72930a09bca5227c7c4c6170e5afd7531b29039f1faff92f1b49fdf45c
MD5 ecdde3790627e83c30015fd0277fa1c1
BLAKE2b-256 5f8d8e04d6c6c265b0da0c29669608fec26d4911d93bb691483ce6fba78694bb

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4626ca0e096a806cbeec77f9ffab9f708bbb06680dd3dab32da3169dec03346b
MD5 6feca1d453266c2e6e0e68c73aa4d076
BLAKE2b-256 be73bf72a6e3c1b5f692902f1e2ed13311ac6129cd1395810845b0be76b4d565

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 ae157ce428ce63943be5b1efb77a2011f97b6fde42cde098b5c4b27adeb30525
MD5 309f115406b24d4b54862716eb127552
BLAKE2b-256 543ee46b2e487871f21127eded24cb3a2691c2917225087438999ab570289fd9

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 74a8bf2b3a7f5ebb0dc09fdbec76ac3d5ea711a2b123dc57d8a82a7e378a48ee
MD5 d7e8e688b66cf77fa35bfd0538f025a9
BLAKE2b-256 d8a8a274b565bf41009995919d1dc77a47b114b6abf010c1d4e7599d12cafefa

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e683a4424f10331ab675584a9abc794af44d1b4f3eb32424f89991708ae9081b
MD5 73a78cdc19cd9a2e611759520fa23bca
BLAKE2b-256 c35924ced0b8beff91ee0e5b9e285de0c695332d820f86dfbb42cf6c10ea6951

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 fab794109f0e95cd8df7bb99bbb176dff3cdc46d9069ccf0e50ada16a4f05204
MD5 7482366448694c0330228a6829fdfcfb
BLAKE2b-256 c00a596d4a5a8af2602e24cc8c84cbe7c010d40734e42883f4df1671ddc92440

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 94b3d8cc2b9334368a561e160b7b955378e6375d3789fe259abed5ee624c7307
MD5 073658fc6690c187948dc68568668c3e
BLAKE2b-256 a2e393953d5824fe1ce3de46baf0ef807747ace2374b43fef4693613080814b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 b71b0e1b73bae8507169cda373e0fa48f80b2b7acbdf99201d9584445d936129
MD5 336308b50762717b0ada551aaf70e70f
BLAKE2b-256 4f25f1d32fad17f16f828bd8e035b50c734384d69039f4b38ed4606559a2c4a2

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 210c24816b6ccc1bc9ad424a139315aa0e084dc10bc66f6ee14aaf4fc11788de
MD5 9160ff21bf389144822aad978da4218c
BLAKE2b-256 535a57541c77938c50ae10246fd77fa7d2bb03c35ecc79985007b7a5a127d5ea

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 efccfa519f82284e5b233526ab41a2809656cde846a7eaf4d040b170ad6c9bf5
MD5 660198b9e0b4e8aab31281c3769c14f5
BLAKE2b-256 16ffdba9c3f3dd333b25ca89c92fdfcdabfd7864e1f8e16769595c889e357481

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a889c91248c41ef40f210dd2bd990204cdf9ee06f2e77eadb1f20f250fd24cee
MD5 16a2d0c14718ad939b14f91307c83a8d
BLAKE2b-256 d8d6dc7e5579490a34041327bfcf177a101dc40676606cb1208a030d6521fb2b

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 025a23afa56ade1672621574cba335407d66a2022566775cd847731161855f55
MD5 4865780bee39614872be69051a25c859
BLAKE2b-256 0163c6f16a20273321f32fb307c4ecdbae91d76b6caf374da27edf89d486cade

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 0a3bdcbf50bfd1d6ba73d73b178edeb56a0117cec5428335009aff0fe9736e10
MD5 07e0d3aded04bac9c009f82bde270dfb
BLAKE2b-256 98afec356399cbc268cb22b139894617590070c3270da9210f30a752d02ddb1f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 26ef04eff4ea8f5be7b51d2fbf112c53ac2cbde0dbee61053ca2fcef3421cb56
MD5 80ede0f1a2ca53e7f6abb0ec4bb78a97
BLAKE2b-256 ff64318055044e05732d4e254cece7f750f8c2186310f6980bf608fcf9f1189a

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 4368f721657c3417e4703ad50968069d155f4d3ef417e8660c1a8fa33dea2a08
MD5 845580a0868dbe2c2f75044386815287
BLAKE2b-256 d292e46e3847bbeed263eddad6d7f919427a254a9965752cb4733b1c6c701e78

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3f2414feba68ae6db1f509fac164a5d835bc8da746f5e819082cd4d22fdc40f8
MD5 3153851ec54c3751824381e0ef165c30
BLAKE2b-256 d676c52fd1aa094f58ad6bd23b0382555bb62b2d2b0101e5e9e087e02430778f

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6a6654faa747a78541b5d72b185ae97b48b9674836a0401b00f2e8442b33857d
MD5 7a4461594bfcc74125047770a8a733a3
BLAKE2b-256 f2e6eb84bf178129866f24b715ff4e76e016663fc56a7030abdda2443e93b0e1

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 cc1ad1dfe50cda400eeecd3cbf0fc65b6e068b5e78e98952fe7a112fbd25851b
MD5 8d0553fc84488565d676fb6f56839e1f
BLAKE2b-256 38e13a2996d47e6094728b7e752b963f09301dd0ff7df84086ab396e56ac2468

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 22b3135b822145a0527f3759d3252bad5c5b9a33fa70c002baf11e95fceefd9d
MD5 ba45c3eb20c3ff00d9d946b4c5287588
BLAKE2b-256 b20669b8fdf7f658907709f2cc3c4ad78de0d18a815ab65e05487bb111f6f82c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 33b37d591d47135b42cf7ab63f457f8045743241ad820b71439e9d402a979665
MD5 146ad203c4fd8cb67f7579441fd80543
BLAKE2b-256 8f50b2eb189e2e7be274d4bbb251d56f0610b46d24c0a6c497dd97b4a97381b4

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: unaiverse-0.1.19-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.19-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 9569be367643edc2c8cbf63ab55de9c135cfcc7c9c289826af6bd5d02e1fe1a9
MD5 902c32a2a9a28099b06765d5f6e71037
BLAKE2b-256 c0ebd96fde268be1be029a090a059c7c60009d6eb82ae4e138b33fdd49e98d1d

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 94a633c111b5ee6e3f14ecc00c0e731e03e1e1cde65e0ea2847ad5fb1f253bc4
MD5 728bc119e057a04cadb43d2b6d3f0fca
BLAKE2b-256 0f841eda037cb8a2aa8c771cc1eb9b294a8842db907177a8fbb3a63d27bfb4be

See more details on using hashes here.

Provenance

The following attestation bundles were made for unaiverse-0.1.19-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.19-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.19-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 00316e7d6b83d2ab560542551e5e0b24082aeac4dec044c7f2b9c2c5e9f8f04d
MD5 50ad0713639d755726afc5011cf1a78f
BLAKE2b-256 a92e838e07715d40814e4eca867a4dd36fe31240c849882ca191c629b69004b5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a14dc14f6b1d6a6af7ffbe8cedfca67e41b6e174fe98d67493689681942e3410
MD5 3bb479a26d1359e93de256188ae3855c
BLAKE2b-256 b671f867268ad420deb3d983d23dc78b73ae3a0eee6667bc981926ea04fcdeed

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for unaiverse-0.1.19-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f2f057c321f658816ea5f7a8b55c8a5837e444d29c8b9b389a91dcb2041d85d5
MD5 f3124377c1fe686c6b3d8d24e3e3ed8e
BLAKE2b-256 e43cc5392519f230e28e1c7136b79ab8f0606e3094e5891d5d9300fa8ca98585

See more details on using hashes here.

Provenance

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