Downloads

Get the bitHuman SDK: install commands for every surface plus the full device and platform support matrix.

Get the SDK

One engine (libessence) drives every surface. Pick the install path that matches what you’re building — they all read the same .imx avatar file and produce identical frames.

bitHuman CLI (no code)

The fastest way to see an avatar talk. The same Rust binary ships through all three channels — byte-identical. macOS arm64 and Linux (x86_64 + aarch64).

Homebrew (recommended on Apple Silicon)

brew install bithuman-cli

Universal installer (macOS + Linux, no Python required)

curl -fsSL https://github.com/bithuman-product/homebrew-bithuman/releases/latest/download/install.sh | sh

PyPI sibling wheel (same Rust binary, Python-friendly)

pip install bithuman-cli

Verify the install:

bithuman --version
# libessence 1.19.1 ABI 7
# bithuman    2.3.0
bithuman doctor   # full host + key + cache check

See the CLI reference for all seven subcommands (init, run, render, info, pull, list, doctor).

Python SDK (library) — GA

pip install bithuman is the on-device avatar runtime libraryfrom bithuman import AsyncBithuman. macOS arm64 + Linux x86_64 / aarch64, Python 3.10–3.14.

pip install bithuman

Add the LiveKit agent integration:

pip install livekit-plugins-bithuman

See the Python SDK guide.

Swift / Apple SDK — GA

On-device real-time avatar for iOS, iPadOS, and macOS via SwiftPM. Apple Silicon only, zero transitive dependencies.

Note The currently-published package is bitHumanKit (full-stack on-device). A newer libessence streaming binding (Bithuman) is rolling out — see the Swift SDK guide for current status.

// Package.swift
dependencies: [
    .package(url: "https://github.com/bithuman-product/bithuman-sdk-public.git",
             from: "0.8.1")
],
targets: [
    .target(name: "MyApp",
            dependencies: [.product(name: "bitHumanKit", package: "bithuman")])
]

The product import is import bitHumanKit. See the Swift SDK guide.

Android / Kotlin SDK — Beta

Self-contained Android AAR via Maven Central. arm64-v8a, Android 10+.

// app/build.gradle.kts
dependencies {
    implementation("ai.bithuman:sdk:1.17.1")
}

See the Kotlin SDK guide.

JavaScript / TypeScript — Preview

A cloud client for browser and Node apps. Preview status — APIs may change.

npm install @bithuman/sdk

REST API

No install required. Authenticate with the api-secret header against https://api.bithuman.ai. See the API reference and the quickstart.

Note Flutter is currently a reference app only (in bithuman-apps), not a published code SDK. See community for how to follow its progress.

What ships in 2.3

2.3.0 is the first split-wheel release: the Python library (pip install bithuman) and the CLI binary (pip install bithuman-cli or brew install bithuman-cli) are now separate packages. Pre-2.3 PyPI bundled both — 2.2.x with the bundled CLI is still on PyPI and works, but consider it legacy; pin to 2.3+ for new projects.

PlatformCLI binaryPython wheelSwift SDKKotlin SDK
macOS arm64 (M-series)Homebrew + bithuman-cli wheelbithuman (3.10–3.14)SwiftPM
macOS x86_64 (Intel)PendingPending (1.x was last)
Linux x86_64Tarball + bithuman-cli wheelbithuman (manylinux)
Linux aarch64Tarball + bithuman-cli wheelbithuman (manylinux)
WindowsNot shipping (use WSL2)Not shipping (1.9.0 was last)
iOS / iPadOSSwiftPM
AndroidMaven Central ai.bithuman:sdk

macOS-Intel and Windows are tracked but not part of the 2.3 cut. If you’re stuck on either, the 1.x line still has Windows wheels and a macOS-Intel build — pin the whole Python stack there until those targets graduate into the 2.x distribution.

Current shipping versions

ArtifactLatest versionChannellibessence ABI
Python SDK (bithuman)2.3.0PyPIv7
Swift SDK (bitHumanKit)0.8.2SwiftPMv7
Kotlin SDK (ai.bithuman:sdk)1.17.1Maven Centralv6
bithuman CLI (bithuman)2.3.0Homebrew · PyPI bithuman-cli · universal installerv7

Artifacts with matching ABI are interoperable even if their headline versions differ. Mixing surfaces in one project — for example the Swift SDK on iOS plus the Python bithuman 2.3.0 wheel on the backend — is supported and tested as long as the ABI columns line up.

Device and platform support

Two avatar models, different hardware floors. For a side-by-side feature comparison, see models. At a glance, by device:

DeviceEssence?Expression?SDKs
iPhone 17 Pro+YesNo (use Essence)Swift
iPad Pro M4+YesYesSwift
Mac (Apple Silicon)YesYes (M3+)Swift, Python, CLI
Mac (Intel)Pending in 2.3No— (use 1.x wheel)
Android (arm64-v8a)YesNoKotlin
Browser (WASM)YesNoJavaScript / TS
Linux x86_64 / aarch64Yes (CPU)Yes (NVIDIA GPU)Python, CLI
WindowsPending (WSL2 today)No
Raspberry Pi 4B / 5Near real-timeNoPython, CLI
bitHuman CloudManagedManagedJS / TS, LiveKit

All hosts that run a given model produce identical, lip-synced visual frames — your device choice is about form factor, memory, and latency budget, not visual quality. The detailed per-model hardware floors follow.

Essence

The default avatar model. Runs on virtually every supported platform — the right choice for mobile, edge, and any deployment without a discrete GPU.

HostStatusNotes
Apple M-series MacReal-time, large memory headroomAny Apple Silicon (arm64)
iPhone 17 Pro+Real-time, smallest memory footprintiOS 26
iPad Pro M4+Real-timePairs comfortably with an on-device LLM
Android (arm64-v8a)Real-timeSnapdragon 8 Gen 2+, Android 10+
Linux x86_64 / aarch64Real-timePython SDK, modern CPU + 4 GB RAM
Intel MacPending in 2.3Use 1.x wheel or run via Linux x86_64
Windows x86_64Not shipping in 2.3Use WSL2 today; native wheels on the roadmap
Raspberry Pi 4B / 5Near real-timeAdequate for kiosks at modest FPS
Apple Watch / wearablesNot supportedInsufficient memory

All hosts produce identical frames — your device decision is about form factor, memory, and latency budget, not visual quality.

Expression

Heavier high-fidelity model. Runs on Apple Silicon on-device (demo apps) or on NVIDIA GPUs server-side.

HostStatusNotes
Mac M3+ (arm64)On-deviceDemo app target
iPad Pro M4+On-deviceSized for 16 GB+ devices
iPhone 17 Pro+Not supportedExceeds iOS per-app memory budget. Use Essence on iPhone.
AndroidNot supportedUse Essence.
Linux + NVIDIA GPUServer8 GB+ VRAM via the self-hosted Docker container
Mac Intel / Linux CPU / WindowsNot supportedRequires Apple Silicon or NVIDIA GPU
Raspberry PiNot supportedUse Essence

If you’re deploying to iPhone today, choose Essence. The iPhone reference app is built around Essence and stays well inside Apple’s per-app memory cap.

Avatar resolutions

Resolution interacts with both model and host:

ResolutionBest for
384×384Mobile and edge — the default sweet spot
512×512Mac and iPad Pro — comfortable on M-series
1280×720Desktop and cloud streaming — default for the CLI and LiveKit plugin

Frames are delivered at 1280×720 by every SDK; smaller avatars are letterboxed / pillarboxed into that frame.

Engine ABI history

The engine ABI is the C surface libessence exposes to its language wrappers. New ABI versions are additive — old SDK builds that target an earlier ABI keep working against newer engines until a version is formally retired.

ABIIntroducedNotes
v7libessence 2.3.0Adds be_set_default_audio_encoder for fallback audio-encoder registration. Backwards-compatible with v6 callers.
v6libessence 1.16.0Streaming push-audio / pull-frame API. Current production baseline; covers every shipping SDK above.
v5 and earlierpre-1.16Retired in production builds — synchronous tick-compose only, no streaming.

Confirm the ABI tag on a live host with bithuman doctor.