Documentation

Back to Home

Avatario Plugin for LiveKit Agents

Bringing lifelike AI avatars with synchronized speech and facial animation to your LiveKit-powered applications

Introduction

Avatario brings lifelike AI avatars with synchronized speech and facial animation to your LiveKit-powered applications. This plugin enables seamless integration of Avatario avatars as participants in your LiveKit rooms.

Installation

Install the plugin using PyPi:

bash
pip install livekit-plugins-avatarioai

Authentication & Setup

The Avatario plugin requires a Avatario API key.

Set AVATARIO_API_KEY in your environment or .env file where your LiveKit worker code is running:

bash
# In your environment or .env file
AVATARIO_API_KEY=your_api_key_here

Available Avatars

We provide a list of stock avatars that can be accessed using the following curl command:

bash
curl --request GET \
  --url https://app.onezot.work/api/avatars/stock \
  -H "Content-Type: application/json"

This returns a list of our stock avatars along with their attributes and IDs that you can use in your integration.

You can also find detailed information about our stock avatars in the Stock Avatars documentation.

Usage

Use the plugin in an AgentSession. For example, you can use this avatar in theVoice AI quickstart

python
from livekit import agents
from livekit.agents import AgentSession, RoomOutputOptions
from livekit.plugins import avatarioai

async def entrypoint(ctx: agents.JobContext):
   await ctx.connect()

   session = AgentSession(
      # ... stt, llm, tts, etc.
   )

   avatar = avatarioai.AvatarSession(
      avatar_id="...",  # ID of the avatario avatar to use
   )

   # Start the avatar and wait for it to join
   await avatar.start(session, room=ctx.room)

   # Start your agent session with the user
   await session.start(
      room=ctx.room,
      room_output_options=RoomOutputOptions(
         # Disable audio output to the room. The avatar plugin publishes audio separately.
         audio_enabled=False,
      ),
      # ... agent, room_input_options, etc....
   )

Parameters

This section describes some of the available parameters. See the plugin reference for a complete list of all available parameters.

avatar_id string Required

ID of the Avatario avatar to use. See Stock Avatars for reference.

avatar_participant_name string Optional Default: avatario-avatar-agent

The name of the participant to use for the avatar.

audio_sample_rate integer Optional Default: 24000

The sample rate to stream the audio to Avatario service (minimum 16000)

video_frame_width integer Optional Default: 1280

The width of video frame to be streamed (maximum 1920)

video_frame_height integer Optional Default: 720

The height of the video frame to be streamed (maximum 1080)