> ## Documentation Index
> Fetch the complete documentation index at: https://sambanova-systems.mintlify.site/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# LiveKit integration guide

LiveKit is an open-source project that enables scalable, multi-user conferencing with WebRTC. It provides the tools you need to add real-time video, audio, and data capabilities to your applications.

## Prerequisites

* A [SambaCloud](http://cloud.sambanova.ai?utm_source=livekit\&utm_medium=external\&utm_campaign=cloud_signup) account and API key.
* Python 3.11.5 or later.

## Installation and setup

1. Create and activate a virtual environment:
   ```shell theme={null}
   python -m venv .venv source .venv/bin/activate
   ```
2. Install the minimal form of livekit
   ```shell theme={null}
   pip install "livekit-agents[openai,silero,deepgram,cartesia,turn-detector]~=1.0"
   ```

## Example use cases

You can combine LiveKit with SambaCloud models to create powerful, real-time AI agents. Some common applications include:

* Multimodal assistants – Support text, voice, and screen sharing with an AI assistant.
* Telehealth – Enable real-time AI support during virtual medical consultations.
* Call centers – Automate inbound and outbound customer support with AI voice agents.
* Real-time translation – Translate conversations instantly across languages.

## Example - voice agent with SambaCloud

The following example shows how to build a voice AI agent using LiveKit with SambaCloud  LLM models:

```python theme={null}
from livekit import agents
from livekit.agents import AgentSession, Agent, RoomInputOptions
from livekit.plugins import openai, cartesia, noise_cancellation, silero
import os

SAMBANOVA_URL = os.getenv("SAMBANOVA_URL")
SAMBANOVA_API_KEY = os.getenv("SAMBANOVA_API_KEY")

class Assistant(Agent):
    def __init__(self) -> None:
        super().__init__(instructions="You are a helpful voice AI assistant.")

llm = openai.LLM(
    model="Llama-4-Maverick-17B-128E-Instruct",
    api_key=SAMBANOVA_API_KEY,
    base_url=SAMBANOVA_URL,
)

async def entrypoint(ctx: agents.JobContext):
    session = AgentSession(
        stt=cartesia.STT(
           model="ink-whisper"
        ),
        llm=llm,
        tts=cartesia.TTS(),
        vad=silero.VAD.load(),
    )
    await session.start(
        room=ctx.room,
        agent=Assistant(),
        room_input_options=RoomInputOptions(
            noise_cancellation=noise_cancellation.BVC(),
        ),
    )
    await session.generate_reply(
        instructions="Greet the user and offer your assistance."
    )

if __name__ == "__main__":
    agents.cli.run_app(agents.WorkerOptions(entrypoint_fnc=entrypoint))
```

## LiveKit documentation

See [LiveKit documentation](https://docs.livekit.io/agents/) for more details.
