Skip to main content

Anam Avatar Plugin for Vision Agents

Add real-time interactive avatar video to your AI agents using Anam's avatar API.

Features

  • Real-time avatar video and audio synchronized with TTS output
  • Audio passthrough mode for high-quality voice reproduction
  • Automatic interruption when the user starts speaking
  • Works with any TTS provider (ElevenLabs, Cartesia, etc.) or Realtime LLMs
  • Configurable video resolution (default 1920x1080)

Installation

uv add "vision-agents[anam]"
# or directly
uv add vision-agents-plugins-anam

Quick Start

import asyncio
from uuid import uuid4
from dotenv import load_dotenv

from vision_agents.core import User, Agent
from vision_agents.plugins import anam, deepgram, elevenlabs, getstream, gemini

load_dotenv()


async def start_avatar_agent():
    agent = Agent(
        edge=getstream.Edge(),
        agent_user=User(name="AI Assistant with Avatar", id="agent"),
        instructions="You're a friendly AI assistant.",

        llm=gemini.LLM(),
        tts=elevenlabs.TTS(),
        stt=deepgram.STT(),

        avatar=anam.Avatar(),
    )

    call = await agent.create_call("default", str(uuid4()))

    async with agent.join(call):
        await agent.simple_response("Say hello.")
        await agent.finish()


if __name__ == "__main__":
    asyncio.run(start_avatar_agent())

Configuration

Environment Variables

ANAM_API_KEY=your_anam_api_key
ANAM_AVATAR_ID=your_anam_avatar_id

Avatar Options

anam.Avatar(
    avatar_id=None,  # Anam avatar ID (or set ANAM_AVATAR_ID env var)
    api_key=None,  # Anam API key (or set ANAM_API_KEY env var)
    client_options=None,  # Optional Anam ClientOptions for advanced configuration
    connect_timeout=None,  # Seconds to wait for connection (None = wait indefinitely)
    session_ready_timeout=None,  # Seconds to wait for session ready (None = wait indefinitely)
    width=1920,  # Output video width in pixels
    height=1080,  # Output video height in pixels
)

How It Works

  1. Anam Connection: Connects to Anam's avatar service and waits for the session to become ready
  2. Audio Forwarding: TTS audio from the agent is resampled to 24kHz mono and streamed to Anam
  3. Avatar Generation: Anam generates synchronized avatar video and lip-synced audio from the input
  4. Video Streaming: Avatar video and audio frames are streamed back to call participants via GetStream Edge

Requirements

  • Python 3.10+
  • Anam API key and avatar ID (get them at anam.ai)
  • GetStream account for video calls
  • TTS provider (ElevenLabs, Cartesia, etc.) or Realtime LLM

License

MIT

Links

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vision_agents_plugins_anam-0.6.5.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vision_agents_plugins_anam-0.6.5-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file vision_agents_plugins_anam-0.6.5.tar.gz.

File metadata

  • Download URL: vision_agents_plugins_anam-0.6.5.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_anam-0.6.5.tar.gz
Algorithm Hash digest
SHA256 cb3cd41c65fbad3213d29ad6e107162b58c21b769c028bee211f6cd19cecbd88
MD5 a09185ca56c3ad21c8795513aee89578
BLAKE2b-256 3fe706276da44c466a9ebd62b72ecccb73f6d7cc82fcf1bec30c8985d3c7fdcf

See more details on using hashes here.

File details

Details for the file vision_agents_plugins_anam-0.6.5-py3-none-any.whl.

File metadata

  • Download URL: vision_agents_plugins_anam-0.6.5-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for vision_agents_plugins_anam-0.6.5-py3-none-any.whl
Algorithm Hash digest
SHA256 5dfedc683cdcc66f11d78936875a6baad4e01ea7c6b9ab99b13cb2c107c1a2d5
MD5 5f2b031eb67c0e6b6c6bfc57941454c4
BLAKE2b-256 fa496a8641c86b9f805d8ae57fc7c6ce48b25006509a90c919f5ba7994a5df3c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page