Skip to main content

TiTok - Pytorch

Project description

TiTok - Pytorch (wip)

Implementation of TiTok, proposed by Bytedance in An Image is Worth 32 Tokens for Reconstruction and Generation

Install

$ pip install titok-pytorch

Usage

import torch
from titok_pytorch import TiTokTokenizer

images = torch.randn(2, 3, 256, 256)

titok = TiTokTokenizer(
    dim = 512,
    num_latent_tokens = 32,   # they claim only 32 tokens needed
    codebook_size = 8192      # codebook size 8192
)

loss = titok(images)
loss.backward()

# after much training
# extract codes for gpt, maskgit, whatever

codes = titok.tokenize(images)

# reconstructing images from codes

recon_images = titok.codebook_ids_to_images(codes)

assert recon_images.shape == images.shape

Todo

  • add multi-resolution patches
  • add lfq

Citations

@article{yu2024an,
  author    = {Qihang Yu and Mark Weber and Xueqing Deng and Xiaohui Shen and Daniel Cremers and Liang-Chieh Chen},
  title     = {An Image is Worth 32 Tokens for Reconstruction and Generation},
  journal   = {arxiv: 2406.07550},
  year      = {2024}
}

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

titok_pytorch-0.0.4.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

titok_pytorch-0.0.4-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file titok_pytorch-0.0.4.tar.gz.

File metadata

  • Download URL: titok_pytorch-0.0.4.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for titok_pytorch-0.0.4.tar.gz
Algorithm Hash digest
SHA256 9b57b636a4aa0879727aebe79723d79de9514370472bc98418a6008ec5cb2d1d
MD5 78ae12f60d18c81cf9ae2d9ce1699ff8
BLAKE2b-256 6ed2da8952cd1a00d8c26f53d8de5d94061e971d2177fa1d683722f2ccec69ad

See more details on using hashes here.

File details

Details for the file titok_pytorch-0.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for titok_pytorch-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 41a1d12d53fb59846cb2b812adc2adce41113668d02f5711619df94c30487e08
MD5 cf1ef667dbe866e3801c01bd0e3879d2
BLAKE2b-256 163b712b4f89de5d047aebdf4137c8860414849fed1e75f05fca56749fa58a69

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