Enable low-latency streaming for fresh installs#10
Conversation
EntelligenceAI PR SummaryThis PR makes Deepgram streaming (
Confidence Score: 5/5 - Safe to MergeSafe to merge — this PR cleanly promotes Deepgram streaming ( Key Findings:
Files requiring special attention
|
WalkthroughThis PR changes the default behavior of STT streaming so that Deepgram ( Changes
Sequence DiagramThis diagram shows the interactions between components: sequenceDiagram
title STT Streaming Provider Configuration Flow
participant Config as Config::new()
participant LSP as load_streaming_provider()
participant SPFC as streaming_provider_from_config()
participant Env as Environment Variables
Config->>Env: load_env_value("BOLO_STT_MODEL")
Env-->>Config: stt_model (or "deepgram/nova-3")
Config->>LSP: load_streaming_provider(&stt_model)
activate LSP
LSP->>Env: load_env_value("BOLO_STT_STREAMING")
Env-->>LSP: value (or None)
opt value is None
LSP->>Env: load_env_value("BOLO_STREAMING_STT")
Env-->>LSP: value (or None)
end
LSP->>SPFC: streaming_provider_from_config(value, stt_model)
activate SPFC
alt value is None
Note over SPFC: Determine default from stt_model
alt stt_model == "deepgram/nova-3"
Note over SPFC: default = "deepgram"
else stt_model is anything else
Note over SPFC: default = "off"
end
end
alt resolved value == "deepgram" / "nova-3" / "nova3"
SPFC-->>LSP: Some(StreamingProvider::Deepgram)
else resolved value == "assemblyai" / "assembly" / "on"
SPFC-->>LSP: Some(StreamingProvider::AssemblyAi)
else resolved value == "off" or unrecognized
SPFC-->>LSP: None
end
deactivate SPFC
LSP-->>Config: Option<StreamingProvider>
deactivate LSP
Note over Config: Store stt_model and streaming_stt in Config struct
|
Summary
Enable Deepgram streaming by default when Bolo uses its default
deepgram/nova-3STT model. Keep explicitoff, AssemblyAI selection, and custom-model behavior intact.Why this change
Fresh installs used batch transcription while the maintainer configuration enabled streaming, so new users did not receive the same low-latency path.
Testing
cargo fmt --all -- --checkcargo test --release(53 passed)python3 -m pytest -q(43 passed)bash -nDocumentation
Notes
Selecting a non-default
BOLO_STT_MODELleaves streaming disabled unless the user explicitly selects a streaming provider.