Skip to main content

PEER - Pytorch

Project description

PEER - Pytorch

Pytorch implementation of the PEER block from the Deepmind paper, Mixture of A Million Experts, by Xu Owen He.

Install

$ pip install PEER-pytorch

Usage

import torch
from PEER_pytorch import PEER

peer = PEER(
    dim = 512,
    heads = 8,                   # tested up to 32 - (hk = heads * num_experts_per_head (16))
    num_experts = 1_000_000,     # he chose 1 million
    num_experts_per_head = 16,   # he settled on 16, but was 32 in PKM paper
    dim_key = 128,
    pre_rmsnorm = True
).cuda()

x = torch.randn(2, 1024, 512).cuda()

out = peer(x) + x

assert x.shape == out.shape

Citations

@inproceedings{He2024MixtureOA,
    title   = {Mixture of A Million Experts},
    author  = {Xu Owen He},
    year    = {2024},
    url     = {https://api.semanticscholar.org/CorpusID:271038610}
}

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

peer_pytorch-0.1.8.tar.gz (266.9 kB view details)

Uploaded Source

Built Distribution

peer_pytorch-0.1.8-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file peer_pytorch-0.1.8.tar.gz.

File metadata

  • Download URL: peer_pytorch-0.1.8.tar.gz
  • Upload date:
  • Size: 266.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.19

File hashes

Hashes for peer_pytorch-0.1.8.tar.gz
Algorithm Hash digest
SHA256 69dbd2deda9fa809703527a14fca187ef01e5cbed6149d6963a5424e2ddaae2c
MD5 5d1aa985357f1df95f15f2818a37147f
BLAKE2b-256 bbcaea151f1985ca747620f4abb5c3a14c034fb8e0721706a63e7861f2e4622e

See more details on using hashes here.

File details

Details for the file peer_pytorch-0.1.8-py3-none-any.whl.

File metadata

File hashes

Hashes for peer_pytorch-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 91aca61ae5830ae0d53e5e1c351c2e3cb4876105d2171725492fa1fe8069c529
MD5 2a658afc577bec3df1a6c97766d516ee
BLAKE2b-256 0e01ed089435fc452ca6bea31afa8e4eb7117057d713e76bd69ee7a2cdc53c5a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page