git404hub

what is setdlms fr?

kuleshov-group/setdlms — explained in plain English

Analysis updated 2026-05-18

20PythonAudience · researcherComplexity · 5/5Setup · hard

tl;dr

Official research code for an ICML 2026 paper introducing Set Diffusion, a language model decoding method between autoregressive and diffusion generation.

vibe map

mindmap
  root((Set Diffusion))
    What it does
      New decoding method
      Between AR and diffusion
      Faster flexible generation
    Tech stack
      Python
      PyTorch
      Hugging Face
    Use cases
      Reproduce ICML paper
      Compare model families
      Benchmark GPU throughput
    Audience
      ML researchers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Reproduce the Set Diffusion paper's training and evaluation experiments from ICML 2026.

VIBE 2

Compare autoregressive, masked diffusion, and Set Diffusion models on tasks like summarization and math reasoning.

VIBE 3

Load pretrained checkpoints from Hugging Face to evaluate throughput and likelihood without retraining.

what's the stack?

PythonPyTorchHugging FaceConda

how it stacks up fr

kuleshov-group/setdlmsa-shojaei/constructdrawingaialex72-py/aria-termux
Stars202020
LanguagePythonPythonPython
Setup difficultyhardmoderatemoderate
Complexity5/54/52/5
Audienceresearcherdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · hard time til it works · 1day+

Requires a conda environment with pinned dependencies, GPU hardware, and optionally Weights and Biases or Hugging Face tokens.

in plain english

This repository is the official research code for a paper accepted at ICML 2026 called Set Diffusion, which explores a new way for language models to generate text. Normal language models write text one word at a time in order, left to right. Diffusion models, by contrast, start from noise and gradually clean it up all at once. This project introduces a method that sits between the two approaches, letting the model choose different token orderings so it can decode faster and more flexibly than either extreme on its own. The codebase includes three families of models to compare: standard autoregressive models, several kinds of masked diffusion models including block diffusion, and the paper's own Set Diffusion model. Each model is built from two parts, a denoiser that decides how noisy inputs get cleaned up, and a backbone neural network that turns those inputs into predictions. Setup is done through a conda environment with pinned, locked dependencies to guarantee reproducibility, with a pip-only path available as an alternative. A helper script sets shell variables for compute clusters, and users can opt in to add their own Weights and Biases and Hugging Face credentials through a separate, untracked file. The repository is organized around reproducing the paper's experiments. Shell scripts train and evaluate models on tasks such as text summarization, mathematical reasoning on GSM8K, likelihood estimation, multiple-choice commonsense question answering, and text infilling. Evaluation scripts can pull pretrained checkpoints directly from Hugging Face or point to a local checkpoint path, and dedicated wrappers reproduce the paper's throughput measurements on H100 GPUs. This is a research codebase built for machine learning researchers and practitioners who want to reproduce the paper's results or build on the Set Diffusion approach, rather than a general purpose tool for non-technical users. Working with it requires comfort with Python, PyTorch, and GPU-based training.

prompts (copy fr)

prompt 1
Walk me through how Set Diffusion interpolates between autoregressive and diffusion decoding.
prompt 2
How do I set up the conda environment to train a SetDLM model from this repo?
prompt 3
Explain the difference between the AR, MDLM, BD3LM, and SetDLM denoisers in this codebase.
prompt 4
Show me how to evaluate a pretrained SetDLM checkpoint on GSM8K using the provided scripts.

Frequently asked questions

what is setdlms fr?

Official research code for an ICML 2026 paper introducing Set Diffusion, a language model decoding method between autoregressive and diffusion generation.

What language is setdlms written in?

Mainly Python. The stack also includes Python, PyTorch, Hugging Face.

How hard is setdlms to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is setdlms for?

Mainly researcher.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.