LiveKit Agents Plugin for services from Mistral AI
Project Links
Meta
Author: LiveKit
Requires Python: >=3.10.0
Classifiers
Intended Audience
- Developers
License
- OSI Approved :: Apache Software License
Programming Language
- Python :: 3
- Python :: 3 :: Only
- Python :: 3.10
Topic
- Multimedia :: Sound/Audio
- Multimedia :: Video
- Scientific/Engineering :: Artificial Intelligence
Mistral AI Plugin for LiveKit Agents
Support for Mistral AI STT, TTS, and LLM services.
Installation
pip install livekit-plugins-mistralai
For streaming STT (Voxtral Realtime), also install silero plugin.
pip install livekit-plugins-silero
Pre-requisites
You'll need an API key from Mistral AI. It can be set as an environment variable:
export MISTRAL_API_KEY=your_api_key_here
Usage
Speech-to-Text (STT)
Offline transcription
from livekit.plugins import mistralai
stt = mistralai.STT()
# With context biasing
stt = mistralai.STT(
model="voxtral-mini-latest",
context_bias=["LiveKit", "Voxtral", "Mistral"]
)
Realtime streaming transcription
Voxtral Realtime streams interim transcripts over a WebSocket connection. Since this model has no server-side endpointing, the plugin runs an internal Silero VAD to detect when the user stops speaking and flush the audio — producing final transcripts and driving the end-of-turn pipeline.
from livekit.plugins import mistralai
from livekit.plugins.silero import VAD
# Using Silero VAD with default settings (550ms silence threshold)
stt = mistralai.STT(model="voxtral-mini-transcribe-realtime-2602")
# Using custom VAD settings (e.g. shorter silence threshold for faster responses)
stt = mistralai.STT(
model="voxtral-mini-transcribe-realtime-2602",
vad=VAD.load(min_silence_duration=0.3),
)
Text-to-Speech (TTS)
from livekit.plugins import mistralai
# Using a built-in voice
tts = mistralai.TTS(voice="en_paul_neutral")
# Using zero-shot voice cloning
import base64
ref_audio_b64 = base64.b64encode(open("sample.mp3", "rb").read()).decode()
tts = mistralai.TTS(ref_audio=ref_audio_b64)
LLM
from livekit.plugins import mistralai
llm = mistralai.LLM()
# With all available options
llm = mistralai.LLM(
model="mistral-large-latest",
temperature=0.7,
top_p=0.9,
max_completion_tokens=150,
presence_penalty=0.1,
frequency_penalty=0.1,
random_seed=42,
tool_choice="auto",
)
# With provider tools
agent = Agent(
llm=llm,
tools=[
mistralai.tools.WebSearch(),
mistralai.tools.CodeInterpreter(),
mistralai.tools.DocumentLibrary(library_ids=["<your-library-id>"]),
mistralai.tools.Connector(connector_id="<your_connector_id>")
]
)
1.5.12
May 21, 2026
1.5.11
May 19, 2026
1.5.10
May 18, 2026
1.5.9
May 13, 2026
1.5.8
May 05, 2026
1.5.7
Apr 30, 2026
1.5.6
Apr 22, 2026
1.5.5
Apr 20, 2026
1.5.4
Apr 16, 2026
1.5.3
Apr 15, 2026
1.5.2
Apr 08, 2026
1.5.1
Mar 23, 2026
1.5.0
Mar 19, 2026
1.5.0rc2
Mar 06, 2026
1.5.0rc1
Feb 13, 2026
1.4.6
Mar 16, 2026
1.4.5
Mar 11, 2026
1.4.4
Mar 03, 2026
1.4.3
Feb 23, 2026
1.4.2
Feb 17, 2026
1.4.1
Feb 06, 2026
1.4.0rc2
Jan 23, 2026
1.4.0rc1
Dec 23, 2025
1.3.12
Jan 21, 2026
1.3.11
Jan 14, 2026
1.3.10
Dec 23, 2025
1.3.9
Dec 19, 2025
1.3.8
Dec 17, 2025
1.3.7
Dec 16, 2025
1.3.6
Dec 03, 2025
1.3.5
Nov 25, 2025
1.3.4
Nov 24, 2025
1.3.3
Nov 19, 2025
1.3.2
Nov 17, 2025
1.3.1
Nov 17, 2025
1.3.0rc2
Nov 15, 2025
1.3.0rc1
Nov 06, 2025
1.2.18
Nov 05, 2025
1.2.17
Oct 29, 2025
1.2.16
Oct 27, 2025
1.2.15
Oct 15, 2025
1.2.14
Oct 01, 2025
1.2.13
Oct 01, 2025
1.2.12
Sep 29, 2025
1.2.11
Sep 18, 2025
1.2.9
Sep 15, 2025
1.2.8
Sep 02, 2025
1.2.7
Aug 28, 2025
1.2.6
Aug 18, 2025
1.2.5
Aug 10, 2025
1.2.4
Aug 07, 2025
1.2.3
Aug 04, 2025
1.2.2
Jul 24, 2025
1.2.1
Jul 17, 2025
1.2.0
Jul 17, 2025
1.1.7
Jul 15, 2025
1.1.5
Jul 10, 2025