# Vocabulary (/docs/agents/voice-agents/vocabulary)

> For the complete documentation index, see [llms.txt](https://docs.tandemcx.ai/llms.txt). Any page on this site can be fetched as Markdown by appending `.md` to its URL.

The **Vocabulary** card, on the editor's **Conversation** step, is where you list the names
your agent has to get right: product names, brands, and acronyms. Speech recognition can
write a name down wrong, and a voice can say it wrong. Each term you add tells the agent how
the name is spelled, how to say it, and what it often sounds like when it is misheard.

The whole card is **Voice only**. It is absent on an agent with **Voice** switched off in its
[Channels](/docs/agents/voice-agents/persona#channels), and it has no effect when the same
agent answers in a [chat widget](/docs/agents/chat-widget).

<Callout type="warn">
    Don't enter personal information, such as customer names, phone numbers, or account details.
    Vocabulary is for the names of your products and your business.
</Callout>

## Adding a term

Select **Add Term**, then fill in the fields.

- **Written as** — the real spelling, as it should appear in text. This is the only required
  field.
- **Said as** — optional. How the voice should pronounce the term, spelled the way you want
  it spoken. Every time the voice says the term, Tandem gives it this spelling instead. It
  changes only what the caller hears. Transcripts, tickets, variables, and tool arguments keep
  the real spelling from **Written as**.
- **Often misheard as** — optional. Spellings that speech recognition tends to write instead.
  You can add up to 10. Tandem replaces each one with the term in the caller's words before the
  agent reads them, so the transcript shows the term. It matches whole words and ignores case.
  The agent also treats a close variant of one as the term, without asking the caller to
  confirm.

For example, a grocery delivery service whose callers ask about quinoa might add one term:

| Field                 | Value               |
| --------------------- | ------------------- |
| **Written as**        | `Quinoa`            |
| **Said as**           | `KEEN-wah`          |
| **Often misheard as** | `keen wah`, `Kenwa` |

A row you leave completely empty is dropped when you save.

## Speech-recognition tuning

Terms reach the agent in two ways:

- **In its prompt.** A term with an **Often misheard as** value is added to the agent's
  instructions on every call, with those spellings. Other terms are left out of the prompt:
  **Said as** is applied to the voice by Tandem, so the agent doesn't need it.
- **As a custom vocabulary for speech recognition.** When you publish the agent, Tandem builds
  a list of your terms for the speech-recognition service to listen for. It uses each term's
  **Written as** and **Said as** values. **Often misheard as** is not sent to speech
  recognition.

Tuning is built from the published version, so edits to the draft don't apply until you save
and publish. The build can take a few minutes. Calls that start before it finishes still get
the prompt, just without the tuning.

A status line under the terms shows where the published version stands:

| Status                                                                  | Meaning                                                     |
| ----------------------------------------------------------------------- | ----------------------------------------------------------- |
| Speech recognition tuned for these terms                                | Tuning is ready and calls use it.                           |
| Tuning speech recognition… this can take a few minutes after publishing | Tuning is still being built.                                |
| Speech recognition tuning failed                                        | The build did not finish. The message may include a reason. |
| Speech recognition tuning is unavailable right now (account limit)      | Tandem can't create more tuning lists at the moment.        |

If tuning failed or is unavailable, the agent still uses the terms in its prompt. Tandem retries
failed tuning automatically, about once an hour. Tuning can help speech recognition pick the
right word, but it doesn't guarantee it will.

### Terms with digits or symbols

Speech-recognition tuning accepts only letters, apostrophes, periods, and hyphens. A term
with a digit or another symbol, such as `Model 3` or `A&B`, isn't used for tuning. Give it a
**Said as** or **Often misheard as** value so it's still pronounced or recognized, or spell
the numbers out, for example `Model Three`, to have it tuned.

For English agents, tuning uses plain `A` to `Z` letters. Accents are dropped for tuning, so
`Zürich` is tuned as `Zurich` and still written `Zürich`. A term with a letter that has no plain
form, such as `ß`, isn't used for tuning.

## Limits and defaults

| Setting               | Value                                                                     |
| --------------------- | ------------------------------------------------------------------------- |
| Terms per agent       | Up to 100                                                                 |
| Length of each value  | Up to 50 characters, on a single line, with no tabs                       |
| **Written as**        | Required for every term that has anything else filled in                  |
| **Often misheard as** | Up to 10 spellings per term                                               |
| Duplicates            | Not allowed. Two terms can't share the same **Written as**, ignoring case |

**Save** fails with the offending term marked if a term breaks one of these.

## Troubleshooting

**The agent still mishears a name.** Add the spelling speech recognition produced to
**Often misheard as**, exactly as it appears in the transcript. Check the status line: if it
doesn't read "Speech recognition tuned for these terms," the published version isn't tuned yet,
or the term can't be tuned.

**The voice still mispronounces a name.** Fill in **Said as** and try a different respelling.
Use hyphens or common words to guide the sounds, then listen with a
[preview call](/docs/agents/voice-agents/preview-calls).

**The status line still says tuning is in progress.** Building can take a few minutes after
you publish. The line describes the published version, so it doesn't change when you edit the
draft.

**A term doesn't help speech recognition.** If it contains digits or symbols, it isn't used
for tuning. Spell the numbers out.

## Next steps

<Cards>
    <Card
        title="Voice & Speech"
        href="/docs/agents/voice-agents/voice-and-speech"
        description="Choose the voice and set recognition language."
    />
    <Card
        title="Versioning"
        href="/docs/agents/voice-agents/versioning"
        description="Publish an agent so its terms apply to calls."
    />
</Cards>
