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:
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:
# 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:
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
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)