Docs index: /llms.txt · every page as Markdown: add .md

‹ Models

Essence 2

Essence 2 renders a photoreal person from one portrait, live.

On the deviceYour computer or serverbitHuman cloud

What it is

Essence 2 (essence-2) renders a photoreal person from one portrait, up to 1080×1920 (portrait). From your portrait the platform generates a 10-second video of that person; the model then animates lip-sync and expression over it live, with a sharp mouth and teeth taken from that video. Creating an Essence 2 avatar takes about 2 hours (Create your own avatar).

How it is created, served and kept moving while idle: How it works.

When to choose it

  • A photorealistic person — start here.
  • Always-on displays — kiosks, lobby screens and 24/7 assistants.
  • On your own hardware — every SDK platform runs it.

Essence 2 needs a clear, real human face: a cartoon, animal, robot or creature, or a photo with no face found, is refused with 422 MODEL_SUBJECT_MISMATCH before anything is charged. For a stylized character, or a scene generated from one photo, choose Expression 2. See Choosing a model.

Where it runs

WhereEssence 2How
iPhone and iPadYesSwift package, Essence2Kit (iOS 26)
MacYesSwift package (macOS 26, M3 or newer), CLI, Python
AndroidYesessence2-android
Linux, no GPUYesCLI, Python
Browser (WebGPU)Yesrender=local, for avatars that have a browser build
Your serversYesCLI, Python, LiveKit plugin
bitHuman cloudYesweb embed, REST API, LiveKit
Fully offlineYesLinux x86_64 (Business & Enterprise)

A complete app for iPhone and iPad is the iOS Essence 2 example; for Android, the Android Essence 2 example.

The file you download is <CODE>.imx, from GET /v1/agent/{code}/model/download?model=essence-2 or bithuman pull <CODE> --model essence-2. How fast it renders on each device is on performance.

Limits and expectations

  • Output plays at 25 frames a second everywhere it runs. How fast a platform renders is on performance.
  • The downloadable file is about 140–160 MB, varying per identity — read Content-Length rather than assuming a size.
  • The face is fixed at creation. To change it, create a new agent.
  • The first session on a new agent can take longer to connect while the identity is provisioned; later sessions reuse it.
  • Before training completes, a launch that requests this model is refused with 409 MODEL_NOT_GENERATED. Once ready, essence-2 appears in the agent’s supported_models.

Next steps

This section moved: docs.bithuman.ai/build/create-avatar#how-creation-works

This section moved: docs.bithuman.ai/performance/method#pin-a-tier-for-a-benchmark

This section moved: docs.bithuman.ai/models/how-it-works#idle-and-speaking-behavior