> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rime.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Spell function

> Force letter-by-letter pronunciation of codes, IDs, and acronyms using the spell() function.

<Note>The `spell()` function works on Coda, Arcana, and the Mist family.</Note>

## When to use `spell()`

Sometimes you want a letter or number sequence to be spelled out, one unit at a time. At Rime, we make this easy with our `spell()` function.

Using `spell()` natively introduces naturalistic pauses within the sequence. In particular, it groups numbers and letters into groups of three where possible, and two where necessary. For instance, a standard 10-digit telephone number is broken up as follows:

> 4 2 5 `<pause>` 2 5 2 `<pause>` 8 9 `<pause>` 2 9

The same holds for spelling sequences, like long words, being broken up as follows:

> P E N `<pause>` E L O `<pause>` P E

We also introduce helpful pauses when transitioning between numbers and letters in mixed alphanumeric sequences, as follows:

> P R M `<pause>` 4 2 3 `<pause>` G D D `<pause>` M L `<pause>` 2 3 `<pause>` 5 4

This holds for any number, letter, or alphanumeric string. They will be spelled out in full if included in the parentheses of `spell()`. Spell also works with common symbols like @ (at) or - (dash).

Let’s see how this works:

## `spell()` applied to words

If I want the sentence to read:

> “The name is spelled J O N, A T H, A N.”

**Input:**
`the name is spelled spell(jonathan).`

<audio controls src="/sounds/docs/jonathan.mp3" />

<Tabs>
  <Tab title="Coda">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "coda",
       "text": "the name is spelled spell(jonathan)."
    }
    ```
  </Tab>

  <Tab title="Arcana">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "arcana",
       "text": "the name is spelled spell(jonathan)."
    }
    ```
  </Tab>

  <Tab title="Mist v3">
    ```json theme={null}
    {
       "speaker": "tibur",
       "modelId": "mistv3",
       "text": "the name is spelled spell(jonathan)."
    }
    ```
  </Tab>
</Tabs>

## `spell()` applied to numbers

For number sequences, if I want the sentence to read:

> “The number is 4 2 5, 2 5 2, 8 9, 2 9.”

**Input:**
` the number is spell(4252528929).`

<Tabs>
  <Tab title="Coda">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "coda",
       "text": "the number is spell(4252528929)."
    }
    ```
  </Tab>

  <Tab title="Arcana">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "arcana",
       "text": "the number is spell(4252528929)."
    }
    ```
  </Tab>

  <Tab title="Mist v3">
    ```json theme={null}
    {
       "speaker": "tibur",
       "modelId": "mistv3",
       "text": "the number is spell(4252528929)."
    }
    ```
  </Tab>
</Tabs>

## `spell()` applied to alphanumeric sequences

The same goes for mixed alphanumerics. If I want the sentence to be read:

> the account is r f, 5 4 3, d c, 2

**Input:**
`the account is spell(rf543dc2).`

<Tabs>
  <Tab title="Coda">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "coda",
       "text": "the account is spell(rf543dc2)."
    }
    ```
  </Tab>

  <Tab title="Arcana">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "arcana",
       "text": "the account is spell(rf543dc2)."
    }
    ```
  </Tab>

  <Tab title="Mist v3">
    ```json theme={null}
    {
       "speaker": "tibur",
       "modelId": "mistv3",
       "text": "the account is spell(rf543dc2)."
    }
    ```
  </Tab>
</Tabs>

## `spell()` applied to typographical symbols

| Symbol | Pronunciation |
| ------ | ------------- |
| `@`    | at            |
| `_`    | underscore    |
| `-`    | dash          |
| `.`    | dot           |

Spell also works with common symbols. For example:

> the email address is h e l p, at, r i m e, dot, a i

**Input:**
`the email address is spell(help@rime.ai).`

<Tabs>
  <Tab title="Coda">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "coda",
       "text": "the email address is spell(help@rime.ai)."
    }
    ```
  </Tab>

  <Tab title="Arcana">
    ```json theme={null}
    {
       "speaker": "astra",
       "modelId": "arcana",
       "text": "the email address is spell(help@rime.ai)."
    }
    ```
  </Tab>

  <Tab title="Mist v3">
    ```json theme={null}
    {
       "speaker": "tibur",
       "modelId": "mistv3",
       "text": "the email address is spell(help@rime.ai)."
    }
    ```
  </Tab>
</Tabs>
