An installable Python package that runs a LiveKit agent which listens to room audio, transcribes with Deepgram, and publishes concise meeting notes/summaries using Groq, OpenRouter, or OpenAI-compatible models.
pip install .
# or once published:
pip install livekit-ai-note-takerSet the following environment variables (a .env file is supported via python-dotenv):
LIVEKIT_URL– LiveKit WebSocket URL (e.g.wss://example.livekit.cloud)LIVEKIT_API_KEY/LIVEKIT_API_SECRET– LiveKit credentialsDEEPGRAM_API_KEY– Deepgram STT keyPROVIDER–groq,openrouter, oropenaiGROQ_API_KEY/GROQ_MODEL_NAME– whenPROVIDER=groqOPENROUTER_API_KEY/OPENROUTER_MODEL_NAME/OPENROUTER_BASE_URL– whenPROVIDER=openrouterOPENAI_API_KEY– whenPROVIDER=openaiSUMMARY_INTERVAL– seconds between rolling summaries (default150)PROMPT_TYPE–smallorbigprompt template (defaultsmall)AGENT_NAME– LiveKit agent registration name (defaultmeeting_summarizer)BACKEND_URL– webhook endpoint that receives the final meeting summary (defaulthttp://localhost:8000/meetings/meeting-note-webhook)LIVEKIT_SUMMARIZER_DISABLE_SSL_VERIFY– set totrueto ignore TLS verification for aiohttp (development only)
livekit-summarizer-worker # existing CLI
# or the new alias:
livekit-ai-note-takerThe command validates configuration, connects to LiveKit, and starts publishing summaries to the room via publish_data on the local participant.
import asyncio
from livekit_ai_note_taker import run_worker
asyncio.run(run_worker())You can also import NoteTakerAgent if you want to wire custom events or prompts in your own application. Logging is left to the host application; configure it as needed (e.g. logging.basicConfig(level=logging.INFO)).