Overview
Beyond Presence provides hyper-realistic interactive avatars for conversational video AI agents. You can use the open source Beyond Presence integration for LiveKit Agents to add virtual avatars to your voice AI app.
Quick reference
This section includes a basic usage example and some reference material. For links to more detailed documentation, see Additional resources.
Installation
uv add "livekit-agents[bey]~=1.3"
pnpm add @livekit/agents-plugin-bey
Authentication
The Beyond Presence plugin requires a Beyond Presence API key.
Set BEY_API_KEY in your .env file.
Usage
Use the plugin in an AgentSession. For example, you can use this avatar in the Voice AI quickstart.
from livekit.plugins import beysession = AgentSession(# ... stt, llm, tts, etc.)avatar = bey.AvatarSession(avatar_id="...", # ID of the Beyond Presence avatar to use)# Start the avatar and wait for it to joinawait avatar.start(session, room=ctx.room)# Start your agent session with the userawait session.start(room=ctx.room,)
import { voice } from '@livekit/agents';import * as bey from '@livekit/agents-plugin-bey';const session = new voice.AgentSession({// ... stt, llm, tts, etc.});const avatar = new bey.AvatarSession({avatarId: "...", // ID of the Beyond Presence avatar to use});// Start the avatar and wait for it to joinawait avatar.start(session, room);// Start your agent session with the userawait session.start();
Preview the avatar in the Agents Playground or a frontend starter app that you build.
Parameters
This section describes some of the available parameters. See the plugin reference for a complete list of all available parameters.
stringOptionalDefault: b9be11b8-89fb-4227-8f86-4a881393cbdbID of the Beyond Presence avatar to use.
stringOptionalDefault: bey-avatar-agentThe identity of the participant to use for the avatar.
stringOptionalDefault: bey-avatar-agentThe name of the participant to use for the avatar.
Additional resources
The following resources provide more information about using Beyond Presence with LiveKit Agents.