From: BAAI <huggingface.co/BAAI>Newsgroups: alt.freeweights.textSubject:

Emu3-Chat

Date: 2026-11-15Commit: d9cb6ffSigned: 2DC28CC7B26A283B ✓

Text generation model with 8.5B parameters. Safetensors weights, 34.0 GB in all. Published by BAAI under Apache-2.0.

8.5B params34.0GBEmu3-Chatsafetensorspermissive
FactsParams8.5BSize34.0 GBFormatssafetensorsTasktext generationLicenseApache-2.0From sourcepermissive
$ fw get BAAI/Emu3-Chat
# manifest sha256 6b6f8cd3425d… · 34.0 GB · 21 files
$ fw verify ./Emu3-Chat BAAI/Emu3-Chat
From sourceHosted (signed)BAAI/Emu3-ChatLast check: 2026-11-15 03:50 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Overview

Size
34.0 GB
Weights
34.0 GB (safetensors)
Parameters
8.5B
Formats
safetensors
Task
text generation
License
Apache-2.0 (permissive)
Files
21, each with a sha256
Publisher
BAAI
Added
2026-11-15
Section
alt.freeweights.text
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 03:50 UTCpassed

Model card

From the publisher at commit d9cb6ff. Shown as plain text with links; images open at the publisher.

Emu3: Next-Token Prediction is All You Need#

Emu3 Team, BAAI

| Project Page | Paper | 🤗HF Models | github | Demo |

Image: arch.

We introduce Emu3, a new suite of state-of-the-art multimodal models trained solely with next-token prediction! By tokenizing images, text, and videos into a discrete space, we train a single transformer from scratch on a mixture of multimodal sequences.

Emu3 excels in both generation and perception#

Emu3 outperforms several well-established task-specific models in both generation and perception tasks, surpassing flagship open models such as SDXL, LLaVA-1.6 and OpenSora-1.2, while eliminating the need for diffusion or compositional architectures.

Image: comparison.

Highlights#
  • Emu3 is capable of generating high-quality images following the text input, by simply predicting the next vision token. The model naturally supports flexible resolutions and styles.
  • Emu3 shows strong vision-language understanding capabilities to see the physical world and provides coherent text responses. Notably, this capability is achieved without depending on a CLIP and a pretrained LLM.
  • Emu3 simply generates a video causally by predicting the next token in a video sequence, unlike the video diffusion model as in Sora. With a video in context, Emu3 can also naturally extend the video and predict what will happen next.
Quickstart#
from PIL import Image
from transformers import AutoTokenizer, AutoModel, AutoImageProcessor, AutoModelForCausalLM
from transformers.generation.configuration_utils import GenerationConfig
import torch

import sys
sys.path.append(PATH_TO_BAAI_Emu3-Chat_MODEL)
from processing_emu3 import Emu3Processor

# model path
EMU_HUB = "BAAI/Emu3-Chat"
VQ_HUB = "BAAI/Emu3-VisionTokenier"

# prepare model and processor
model = AutoModelForCausalLM.from_pretrained(
    EMU_HUB,
    device_map="cuda:0",
    torch_dtype=torch.bfloat16,
    attn_implementation="flash_attention_2",
    trust_remote_code=True,
)

tokenizer = AutoTokenizer.from_pretrained(EMU_HUB, trust_remote_code=True, padding_side="left")
image_processor = AutoImageProcessor.from_pretrained(VQ_HUB, trust_remote_code=True)
image_tokenizer = AutoModel.from_pretrained(VQ_HUB, device_map="cuda:0", trust_remote_code=True).eval()
processor = Emu3Processor(image_processor, image_tokenizer, tokenizer)

# prepare input
text = "Please describe the image"
image = Image.open("assets/demo.png")

inputs = processor(
    text=text,
    image=image,
    mode='U',
    return_tensors="pt",
    padding="longest",
)

# prepare hyper parameters
GENERATION_CONFIG = GenerationConfig(
    pad_token_id=tokenizer.pad_token_id,
    bos_token_id=tokenizer.bos_token_id,
    eos_token_id=tokenizer.eos_token_id,
    max_new_tokens=1024,
)

# generate
outputs = model.generate(
    inputs.input_ids.to("cuda:0"),
    GENERATION_CONFIG,
    attention_mask=inputs.attention_mask.to("cuda:0"),
)

outputs = outputs[:, inputs.input_ids.shape[-1]:]
print(processor.batch_decode(outputs, skip_special_tokens=True)[0])

Files

21 files · 34.0 GBWeights 34.0 GB (safetensors). Sizes and sha256 from the signed manifest.
Show all 21 files with their sha256
FileSizesha256
.gitattributes1.52 KB11ad7efa24975ee4b0c3c3a38ed18737f0658a5f75a0a96787b576a78a023361
README.md3.78 KB9cf4421f37ac549c7a2dba9c57357c367ce8caf6469e8e5ddeb6b86bd660b50c
config.json935 B520406c750c69646921bd21731de4c9631041f653a9e97329697d00108b79c03
configuration_emu3.py10.4 KB9a7e2c3e6d39c654b88e922d9d2297b28639a8e6b26711ea6ab0783f10038996
emu3.tiktoken2.56 MBb2b1b8dfb5cc5f024bafc373121c6aba3f66f9a5a0269e243470a1de16a33186
emu3_vision_tokens.txt786 KB9113d8c4fe12bc294103df9d46dd28f5c9a1b2f897a20c09f4fd07432b8bdba4
generation_config.json147 Ba729ef4af7cf650b0b7d34d840d7ac3909d19c5d0af1b270ac43afa4da183e8e
model-00001-of-00007.safetensors4.94 GB28d546200fc398c80e3cf40c980730e1d4822342cb46883d185473833a4649fd
model-00002-of-00007.safetensors4.83 GB823be6493ea6ac05e16c3e5eb10c8d8995831407b068a97f9e7495dd286baefd
model-00003-of-00007.safetensors5.00 GB5270b83bafa7e41bfd48b04fba337e202eb470b14c41fc28f982be84ba7d4550
model-00004-of-00007.safetensors5.00 GB0d7d7eb5f0f3e88175ed1d018f9fccd57b84f9cf364253f8417662c5cd21aa8d
model-00005-of-00007.safetensors4.83 GBdb39fe4a3f9226359a87a0fcb7b25c601a1f9dff15a7bf5b0bc2cb571708cc25
model-00006-of-00007.safetensors5.00 GBd1596fc937a34257ddab522d7e6fad0438e43a717605c35b73e527937b135dde
model-00007-of-00007.safetensors4.37 GB0259dc22fadbea3720bbfd43b4693aaa97f5b3ada840c4a06da91fb2d58667c6
model.safetensors.index.json23.9 KB15cf63b5ebf57dd9c7de63045ed649c38b962abd112c28d86040fcc58ad1d516
modeling_emu3.py62.5 KB0787ff6cb0e188ba516ecd5ee33e91b0021e138e2bbe071e0eb1aad53100443d
processing_emu3.py14.5 KBc2fc2ca9484a92f43ca249614d5a4a51195e8d964283e7e07b077b117c48d971
special_tokens_map.json99 Bfea8d5dbfca581e0e7abee6cf844d5000f9b8efe21168fd2c3284a90ab7efc72
tokenization_emu3.py10.1 KBeeca8e95d2aa9cb2a905a13ced92c3ead1c1faf5b44e4724257879178d883c2c
tokenizer_config.json364 Ba05ad31c77abb65f2ddc34d093407c48c3be0f3aef8c15a4c580dfaa7127db0b
utils_emu3.py2.33 KB254a4234563ff62d8747dcebf02bc6bbc249140b979109d0d290ce3e9759efa3
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
d9cb6ffe11 pinned now2026-11-15 03:50 UTC21 files · 34.0 GB

Use it

$ fw get BAAI/Emu3-Chat
# manifest sha256 6b6f8cd3425d… · 34.0 GB · 21 files
$ fw verify ./Emu3-Chat BAAI/Emu3-Chat
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/BAAI/Emu3-Chat.json --dir ./Emu3-Chat $ python3 fw.py verify ./Emu3-Chat ./BAAI__Emu3-Chat.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download BAAI/Emu3-Chat --revision d9cb6ffe11d3f62b73d08d40672c243e77344d51 --local-dir ./Emu3-Chat
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForCausalLM, AutoTokenizer tok = AutoTokenizer.from_pretrained("BAAI/Emu3-Chat", revision="d9cb6ffe11d3f62b73d08d40672c243e77344d51") model = AutoModelForCausalLM.from_pretrained("BAAI/Emu3-Chat", revision="d9cb6ffe11d3f62b73d08d40672c243e77344d51", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve BAAI/Emu3-Chat --revision d9cb6ffe11d3f62b73d08d40672c243e77344d51

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
9cf4421f37ac549c7a2dba9c57357c367ce8caf6469e8e5ddeb6b86bd660b50c
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: BAAI <huggingface.co/BAAI>Newsgroups: alt.freeweights.textSubject: Emu3-ChatDate: 2026-11-15Commit: d9cb6ffSigned: 2DC28CC7B26A283B ✓
Upstream
BAAI/Emu3-Chat
Pinned commit
d9cb6ffe11d3f62b73d08d40672c243e77344d51
Manifest
Emu3-Chat.json · .minisig
Manifest sha256
6b6f8cd3425d85f135fc47947dfabcf32b514ad4e96e70b085b5e1ea19210a80
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 03:50 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/BAAI/Emu3-Chat.json $ curl -O https://freeweights.allternit.com/manifests/BAAI/Emu3-Chat.json.minisig $ minisign -Vm Emu3-Chat.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download BAAI/Emu3-Chat
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. Emu3-Chat.json. Provenance. Takedown history: none.
From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B