Run multiple LiveKit voice agents in a single shared worker process.
Project description
OpenRTC
OpenRTC is a Python framework for running multiple LiveKit voice agents in a single worker process with shared prewarmed models.
Decorator-based discovery with shared defaults
Use @agent_config(...) on a standard LiveKit Agent subclass to attach
optional discovery metadata. Then set shared providers once on AgentPool and
only override the values that differ per agent.
from pathlib import Path
from openrtc import AgentPool, agent_config
from livekit.agents import Agent
@agent_config(name="restaurant")
class RestaurantAgent(Agent):
...
pool = AgentPool(
default_stt="deepgram/nova-3:multi",
default_llm="openai/gpt-4.1-mini",
default_tts="cartesia/sonic-3",
)
pool.discover(Path("./agents"))
pool.run()
The CLI also accepts shared defaults for discovered agents:
openrtc list \
--agents-dir ./examples/agents \
--default-stt deepgram/nova-3:multi \
--default-llm openai/gpt-4.1-mini \
--default-tts cartesia/sonic-3
For backward compatibility, discovery still supports legacy module-level
AGENT_* variables, but the decorator is the preferred pattern.
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 openrtc-0.0.5.tar.gz.
File metadata
- Download URL: openrtc-0.0.5.tar.gz
- Upload date:
- Size: 48.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e3d21ae685c00df88116f268f25414962d3ac3bfccc0dec67da0171a1673c90
|
|
| MD5 |
96ea185ff1aacc92c3684422ac10084f
|
|
| BLAKE2b-256 |
0681e6ec94f2e0e3a3990a100ea202c9a56240a73b47d45e84eb5bb3b399b335
|
File details
Details for the file openrtc-0.0.5-py3-none-any.whl.
File metadata
- Download URL: openrtc-0.0.5-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e174a6715c437567a6cef54b59e9735e29d8f48f4457fe71b083e1629a48d4b
|
|
| MD5 |
bbe113c97d5dfc0f59788fd909c1fdb4
|
|
| BLAKE2b-256 |
4b8e234f103436e0a0d4294ab4334261c4c2fe28354c1b17af3829459d5ad46d
|