AlphaAvatar Framework plugin for persona service
Project description
🧬 AlphaAvatar Persona Plugin
The Persona Plugin provides user identity recognition and profile management for AlphaAvatar.
🧩 Module Overview
The plugin is responsible for:
- identifying users through face and speaker embeddings;
- associating temporary face, speaker, and session identities with stable users;
- maintaining user profile attributes;
- exposing the active user persona to the Avatar Runtime;
- publishing identity-related annotations into
PerceptionRuntime.
Persona processing is divided into independent paths:
Visual Observation
└── → Face Recognition
Speech Observation
└── → Speaker Recognition
Conversation Context
└── → Persona Profile
The resulting identity and profile information can be used by Memory, prompting, retrieval, and other runtime modules.
🔍 Identity Processing
👁️ Face Recognition
The face stream consumes visual observations from PerceptionRuntime.
Video / Screen Observation
↓
PerceptionRuntime
↓
FaceStreamWrapper
↓
FaceAnalysisRunner
↓
Face Embedding and Attributes
↓
User Identity Match
Face processing:
- samples frames independently from the shared visual stream;
- performs face detection and embedding extraction;
- matches embeddings against known user profiles;
- updates face attributes and identity associations;
- publishes face annotations back to the original observation;
- optionally renders face bounding boxes into the annotated payload view.
Raw video observations remain unchanged. Rendered overlays are stored in the separate annotated payload view.
🎤 Speaker Recognition
The speaker stream consumes routed speech observations rather than subscribing directly to LiveKit audio.
PerceptionRuntime.audio
↓
AudioActivityProcessor
↓
PerceptionRuntime.speech
↓
Speaker Stream
↓
Speaker Embedding and Match
Speaker processing uses rolling speech windows to:
- create speaker embeddings;
- match speech against known users;
- update voice identity attributes;
- associate temporary speaker identities with stable user profiles.
Raw audio frames are used only during runtime processing and are not stored as persona profiles.
🧩 Supported Components
| Component | Input | Output | Function |
|---|---|---|---|
FaceStreamWrapper |
video and screen observations |
Face annotations and user matches | Detects faces, generates embeddings, matches users, and updates face attributes. |
SpeakerStreamWrapper |
Routed speech observations |
Speaker matches and voice attributes | Builds rolling speech windows, generates speaker embeddings, and resolves voice identities. |
| Persona profile runtime | Conversation and identity context | Active persona content | Maintains user profile information and exposes it to the Avatar Runtime. |
| Identity alias handling | Temporary and stable identity IDs | Identity relationships | Links session, face, speaker, and user identities across runtime modules. |
Persona profiles may contain:
- stable user identifiers;
- face and speaker embeddings;
- face and voice attributes;
- profile text;
- temporary identity aliases;
- session and runtime metadata.
🔗 Module Relationships
PerceptionRuntime
├── → Face observations
└── → Speech observations
Router Plugin
└── → Routed speech stream
Persona Plugin
├── → Active user identity
├── → Persona prompt context
├── → Face and speaker annotations
└── → Identity aliases
Memory Plugin
└── → User ownership and identity-aware retrieval
📦 Installation
pip install alpha-avatar-plugins-persona
The plugin is loaded through the AlphaAvatar configuration.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file alpha_avatar_plugins_persona-0.6.5.tar.gz.
File metadata
- Download URL: alpha_avatar_plugins_persona-0.6.5.tar.gz
- Upload date:
- Size: 33.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e04be58e705a8dcf70d09f49f4312c4d87c088c22fb1a28ea99c504bc0b0622f
|
|
| MD5 |
25936234767dfa33b7b8914178a9cb4b
|
|
| BLAKE2b-256 |
9fa6baaa7038b48b865f73512b0a1b9317b650fef001dc45f23c3cf6f9d50940
|
File details
Details for the file alpha_avatar_plugins_persona-0.6.5-py3-none-any.whl.
File metadata
- Download URL: alpha_avatar_plugins_persona-0.6.5-py3-none-any.whl
- Upload date:
- Size: 47.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b1b0dcc875a516aa71100099a885bebe48c516a6315cdebc5bf2eec73bdcfe4
|
|
| MD5 |
50aef408c1e2d73085edfc65f27af952
|
|
| BLAKE2b-256 |
af6dc88a31eaa4fecb6a0c1f37c09c2376bc827dabd755b521aff1a8b1cbf517
|