livekit-plugins-speechmatics 1.5.1


pip install livekit-plugins-speechmatics

  Latest version

Released: Mar 23, 2026


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

Speechmatics STT plugin for LiveKit Agents

Support for Speechmatics STT.

See https://docs.livekit.io/agents/integrations/stt/speechmatics/ for more information.

Installation

pip install livekit-plugins-speechmatics

Diarization

Speechmatics STT engine can be configured to emit information about individual speakers in a conversation. This needs to be enabled using enable_diarization=True. The text output of the transcription can be configured to include this information using the macros speaker_id and text, as shown in the examples below.

  • <{speaker_id}>{text}</{speaker_id}> -> <S1>Hello</S1>
  • [Speaker {speaker_id}] {text} -> [Speaker S1] Hello

You should adjust your system instructions to inform the LLM of this format for speaker identification.

Usage (Speechmatics end of utterance detection and speaker ID)

To use the Speechmatics end of utterance detection and speaker ID, you can use the following configuration.

Note: The turn_detection_mode parameter tells the plugin to control the end of turn detection. The default mode is ADAPTIVE, which means that the plugin will control the end of turn detection using the plugin's own VAD detection and the pace of speech. In the example below, we use the default ADAPTIVE mode. The turn_detection="stt" parameter tells the plugin to use the STT engine's end of turn detection.

from livekit.agents import AgentSession
from livekit.plugins import speechmatics

agent = AgentSession(
    stt=speechmatics.STT(
        speaker_active_format="[Speaker {speaker_id}] {text}",
        speaker_passive_format="[Speaker {speaker_id} *PASSIVE*] {text}",
        additional_vocab=[
            speechmatics.AdditionalVocabEntry(
                content="LiveKit",
                sounds_like=["live kit"],
            ),
        ],
    ),
    turn_detection="stt",
    ...
)

Usage (LiveKit Turn Detection)

To use the LiveKit end of turn detection, the format for the output text needs to be adjusted to not include any extra content at the end of the utterance. Using [Speaker S1] ... as the speaker_active_format should work well. You may need to adjust your system instructions to inform the LLM of this format for speaker identification. You must also include the listener for when the VAD has detected the end of speech.

The end_of_utterance_silence_trigger parameter controls the amount of silence before the end of turn detection is triggered. The default is 0.5 seconds.

Usage:

from livekit.agents import AgentSession
from livekit.plugins.turn_detector.multilingual import MultilingualModel
from livekit.plugins import speechmatics, silero

agent = AgentSession(
    stt=speechmatics.STT(
        end_of_utterance_silence_trigger=0.2,
        speaker_active_format="[Speaker {speaker_id}] {text}",
        speaker_passive_format="[Speaker {speaker_id} *PASSIVE*] {text}",
    ),
    vad=silero.VAD.load(),
    turn_detection=MultilingualModel(),
    min_endpointing_delay=0.3,
    max_endpointing_delay=5.0,
    ...
)

Pre-requisites

You'll need to specify a Speechmatics API Key. It can be set as environment variable SPEECHMATICS_API_KEY or .env.local file.

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.6 Jul 10, 2025
1.1.5 Jun 30, 2025
1.1.4 Jun 25, 2025
1.1.3 Jun 21, 2025
1.1.2 Jun 20, 2025
1.1.1 Jun 10, 2025
1.1.0 Jun 10, 2025
1.0.23 May 29, 2025
1.0.22 May 17, 2025
1.0.21 May 15, 2025
1.0.20 May 08, 2025
1.0.19 May 03, 2025
1.0.18 May 01, 2025
1.0.17 Apr 24, 2025
1.0.16 Apr 22, 2025
1.0.15 Apr 22, 2025
1.0.14 Apr 22, 2025
1.0.13 Apr 15, 2025
1.0.12 Apr 15, 2025
1.0.11 Apr 10, 2025
1.0.0rc9 Apr 07, 2025
1.0.0rc8 Apr 07, 2025
1.0.0rc7 Apr 07, 2025
1.0.0rc6 Apr 03, 2025
1.0.0rc5 Apr 03, 2025
1.0.0rc4 Mar 29, 2025
1.0.0rc3 Mar 27, 2025
1.0.0rc2 Mar 27, 2025
1.0.0rc1 Mar 26, 2025
1.0.0.dev5 Mar 19, 2025
1.0.0.dev4 Mar 19, 2025
0.0.3 May 19, 2025
0.0.2 Mar 06, 2025
Extras: None
Dependencies:
livekit-agents (>=1.5.1)
speechmatics-voice[smart] (>=0.2.8)