Both act on the transcription itself, before any LLM pass. They are a different
lever from
llm_instruction, which reshapes
the transcript after it has been written.
Contextual prompting
stt_prompt describes what the audio is about. It gives the decoder situational
context, which helps it resolve ambiguous audio toward words that make sense in
that setting:
stt_prompt is
prepended to the base transcription prompt, which always applies, so you are
adding context rather than replacing behaviour.
The field is also accepted as
prompt. Send one or the other; sending both is
rejected with 400.
Keyterms prompting
keyterms_prompt lists the exact strings you expect to appear: names, drug
names, product SKUs, internal jargon. It biases the decoder toward those
spellings.
keyterms and word_boost are also accepted; send only one of
the three, or the request is rejected with 400.
Keep the list to terms that are genuinely hard to transcribe. Common words do
not need boosting and dilute the list.
Using both together
The two fields do different jobs and work well in combination.stt_prompt
tells the model what kind of audio this is; keyterms_prompt pins the exact
spellings it should expect.
- Python SDK
- Python
- JavaScript
- cURL
llm_instruction on top when you also want the transcript reshaped. The
three fields compose: stt_prompt and keyterms_prompt decide what the
transcript says, llm_instruction decides what llm_response looks like. See
Transcript rewriting.
Limits
Exceeding a limit is rejected with400:
DictationConfig in the Python SDK validates both client-side at the same
values, so an over-long prompt raises before the request goes out. It also
strips whitespace from each keyterm and drops empty ones.
Related features
- Transcript rewriting reshapes the transcript after it is written.
- Language selection sets the language of the audio.