> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://dev.hume.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://dev.hume.ai/_mcp/server.

# Changelog

## May 15, 2026 \[#5-15-2026]

### TTS API additions \[#tts-api-additions-5-15-2026]

* **Added an experimental `temperature` parameter to TTS endpoints.** Controls sampling temperature for speech
  generation. Higher values increase variation; lower values increase consistency.

## April 10, 2026 \[#4-10-2026]

### EVI API additions \[#evi-api-additions-4-10-2026]

* **Added configurable [turn detection](/docs/speech-to-speech-evi/configuration/turn-detection) and
  [interruption](/docs/speech-to-speech-evi/configuration/interruption) settings to EVI configs.** You can now control
  how EVI handles turn-taking and interruptions on a per-config basis.
  * `turn_detection.end_of_turn_silence_ms`: How long EVI waits after speech ends before committing a turn (500-3000ms,
    default 800ms).
  * `turn_detection.speech_detection_threshold`: Sensitivity of voice activity detection (0.0-1.0, default 0.5).
  * `turn_detection.prefix_padding_ms`: Audio padding before detected speech (default 300ms).
  * `interruption.min_interruption_ms`: Minimum speech duration before EVI can be interrupted (50-2000ms, default
    800ms).

## February 27, 2026 \[#2-27-2026]

### EVI API additions \[#evi-api-additions-2-27-2026]

* **Added support for new supplemental LLM models:** `claude-opus-4-6`, `gpt-5.1`, `gpt-5.1-priority`, `gpt-5.2`, `gpt-5.2-priority`.
* **Added support for zero [prompt expansion](/docs/speech-to-speech-evi/guides/prompting#prompt-expansion).** You can now set `prompt_expansion` to `ZERO` when configuring an external LLM, disabling automatic prompt expansion and giving you full control over the system prompt.

### TTS API bug fixes \[#tts-bug-fixes-2-27-2026]

* **Fixed a bug where duplicate interleaved audio was included in TTS audio output.** This resolves an issue where audio chunks could be duplicated and interleaved, resulting in distorted output.

---

## November 14, 2025 \[#11-14-2025]

### EVI API additions \[#evi-api-additions-11-14-2025]

* **Added support for a new `SESSION_SETTINGS` chat event in the EVI chat history API.** When you fetch chat events via
  [/v0/evi/chats/:id](/reference/speech-to-speech-evi/chats/list-chat-events), the response now includes entries that
  indicate when system settings were updated and which settings were applied.

## November 7, 2025 \[#11-7-2025]

### TTS API additions \[#tts-api-additions-11-7-2025]

* **Introduced voice conversion endpoints.** Send speech, specify a voice, and receive audio converted to that target
  voice.
  * **POST [/v0/tts/voice\_conversion/json](/reference/text-to-speech-tts/convert-voice-json)**: JSON response with
    audio and metadata.
  * **POST [/v0/tts/voice\_conversion/file](/reference/text-to-speech-tts/convert-voice-file)**: Audio file response.

### EVI API additions \[#evi-api-additions-11-7-2025]

* **Added a control plane API for EVI.** Perform secure server-side actions and connect to active chats. See the [Control Plane guide](/docs/speech-to-speech-evi/guides/control-plane).
  * **POST [/v0/evi/chat/:chat\_id/send](/reference/speech-to-speech-evi/control-plane/send)**: Send a message to an
    active chat.
  * **WSS [/v0/evi/chat/:chat\_id/connect](/reference/speech-to-speech-evi/control-plane/chat-chat-id-connect)**:
    Connect to an active chat over WebSocket.
* **Added a [tool call webhook event](/reference/speech-to-speech-evi/chat-webhooks/tool-call).** Subscribe to tool
  calls to know when to invoke your tool, then send the tool response back to the chat using the control plane.

## October 3, 2025 \[#10-3-2025]

### TTS API improvements \[#tts-api-improvements-9-12-2025]

* **Octave 2 is now available** for use in TTS endpoints.
  * For HTTP endpoints, specify `"version": "2"` in your request body.
    ([reference](/reference/text-to-speech-tts/synthesize-json-streaming#request.body.version))
  * For the WebSocket endpoint, specify `version=2` in the query parameters of the handshake request.
    ([reference](/reference/text-to-speech-tts/stream-input#request.query.version))
* **Word and phoneme level timestamps are now supported** for TTS APIs. See our [Timestamps Guide](/docs/text-to-speech-tts/timestamps) to learn more.

### EVI API improvements \[#evi-api-improvements-10-3-2025]

* **EVI version 4-mini is now available.** This version enables the use of Octave 2 for TTS alongside a supplemental LLM of your
  choosing, bringing Octave 2's multilingual capabilities to EVI. Specify `"version": "4-mini"` in your EVI config
  version to use it.

## September 12, 2025 \[#9-5-2025]

### TTS API improvements \[#tts-api-improvements-9-12-2025]

* Responses from `/v0/tts/stream/json` now include a `request_id` field for easier tracking and debugging.

### EVI API improvements \[#evi-api-improvements-9-12-2025]

* You can now change the voice within an active session by specifying a
  [voice\_id](/reference/speech-to-speech-evi/chat#send.SessionSettings.voice_id) in a session settings message.

## September 5, 2025 \[#9-5-2025]

### TTS API improvements \[#tts-api-improvements-9-5-2025]

* Introduced a [TTS WebSocket endpoint](/reference/text-to-speech-tts/stream-input) that streams text in and speech out.

## August 22, 2025 \[#8-22-2025]

### EVI API improvements \[#evi-api-improvements-8-8-2025]

* Fixed a bug where the `voice_id` query parameter on the [/chat](/reference/speech-to-speech-evi/chat) endpoint only
  accepted Voice Library voices. It now supports custom voices as well.

## August 8, 2025 \[#8-8-2025]

### EVI API changes \[#evi-api-changes-8-8-2025]

* Added new [`voice_id`](/reference/speech-to-speech-evi/chat#request.query.voice_id) query parameter to EVI `/chat`
  endpoint.
  * The name or ID of the voice from the Voice Library to be used as the speaker for this EVI session. This will
    override the speaker set in the selected configuration.
* Removed `editable` [context type](/reference/speech-to-speech-evi/chat#send.SessionSettings.context) for
  injected context.

### EVI API improvements \[#evi-api-changes-8-8-2025]

* Added support for OpenAI's `GPT-5`, `GPT-5-mini`, and `GPT-5-nano` models as a supplemental LLM options.

## July 18, 2025 \[#7-18-2025]

### EVI API changes \[#evi-api-changes-7-18-2025]

* **EVI 3 is now available in the API.** You can enable it by setting `evi_version: "3"` in your config.
  * Refer to the [Migration Guide](/docs/speech-to-speech-evi/configuration/evi-version#migrating-to-evi-3) if you're
    upgrading from EVI 1 or 2. **EVI 1 and 2 will be deprecated on August 30, 2025**, so be sure to migrate before
    then.
  * **A voice must be explicitly specified** in all EVI 3 configs. Default voices are no longer supported.
  * **EVI 3 supports voices from the Voice Library**, as well as voices you design or clone. Legacy EVI 2 Base Voices
    and legacy Custom Voices are not supported.
  * **Assistant prosody scores are now sent in a dedicated
    [`assistant_prosody`](/reference/speech-to-speech-evi/chat#receive.AssistantProsody) message**, rather than
    inside the `assistant_message`. Each `assistant_prosody` message can be linked to its corresponding
    `assistant_message` via the `id` field.
  * **EVI 3 supports two new native speech-language models**: hume-evi-3 and hume-evi-3-websearch.

### EVI API improvements \[#evi-api-improvements-7-18-2025]

* **New supplemental LLMs are now supported for all EVI versions:**
  * Claude Sonnet 4 (Anthropic)
  * Llama 4 Maverick (SambaNova)
  * Qwen3 32B (SambaNova)
  * DeepSeek R1-Distill (Llama 3.3 70B Instruct, via SambaNova)
  * Kimi K2 (Groq)

---

## Jun 27, 2025 \[#6-27-2025]

### TTS API changes \[#tts-api-changes-6-27-2025]

* [Instant mode](/docs/text-to-speech-tts/overview#ultra-low-latency-streaming-instant-mode) is now enabled by default for all [streaming endpoints](/reference/text-to-speech-tts/synthesize-json-streaming).
* The 10% surcharge for instant mode has been removed. It is now priced the same as standard streaming.
* Improved error message when making a TTS streaming request with instant mode enabled but without specifying a voice.

---

## June 13, 2025 \[#6-13-2025]

### EVI API additions \[#evi-api-additions-6-13-2025]

* Added support for defining [nudges](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#request.body.nudges) in your EVI config, to help EVI naturally fill the silence during inactivity.

### TTS API additions \[#tts-api-additions-6-13-2025]

* TTS responses now contain [transcribed\_text](https://dev.hume.ai/reference/text-to-speech-tts/synthesize-json-streaming#response.body.snippet.transcribed_text) within each `Snippet` when `instant_mode` is not enabled.

---

## May 9, 2025 \[#5-9-2025]

### EVI API additions \[#evi-api-additions-5-9-2025]

* Added support for Google's `gemini-2.5-flash-preview-04-17` model as a supplemental LLM option

---

## April 18, 2025 \[#4-18-2025]

### TTS API additions \[#tts-api-additions-4-18-2025]

* Added [`instant_mode`](/reference/text-to-speech-tts/synthesize-json-streaming#request.body.instant_mode) for ultra‑low‑latency streaming, which starts sending audio chunks immediately (first chunk in \~200 ms).
* Added [`strip_headers`](/reference/text-to-speech-tts/synthesize-json-streaming#request.body.strip_headers) to remove per‑chunk headers so that streamed audio can be concatenated into a single file.

---

## April 4, 2025 \[#4-4-2025]

### TTS API additions \[#tts-api-additions-4-4-2025]

* Added new TTS [streaming endpoints](/reference/text-to-speech-tts/synthesize-json-streaming) for streaming audio output
* Added [list voices](/reference/voices/list) and [delete voice](/reference/voices/delete) endpoints
* Added [speed](/reference/text-to-speech-tts/synthesize-json#request.body.utterances.speed) parameter for adjusting rate of speech
* Added [trailing\_silences](/reference/text-to-speech-tts/synthesize-json#request.body.utterances.trailing_silence) for injecting pauses between utterances

### TTS API changes \[#tts-api-changes-4-4-2025]

* Improved audio fidelity for Octave TTS outputs by doubling sample rate from `24kHz` to `48kHz`

### EVI API additions \[#evi-api-additions-4-4-2025]

* Added support for Anthropic's `claude-3-7-sonnet-latest` model as a supplemental LLM option

---

## November 15, 2024 \[#11-15-2024]

### EVI API additions \[#evi-api-additions-11-15-2024]

* Added support for [Server-Sent Events (SSE) for Custom Language Models](./documentation/empathic-voice-interface/custom-language-model#overview), an alternative approach that can reduce latency and simplify the development process

### EVI API changes \[#evi-api-changes-11-15-2024]

* Ensured that when a `custom_session_id` is sent in the `SessionSettings` message, this custom session ID will be added to all returned payloads

## November 11, 2024 \[#11-11-2024]

### EVI API additions \[#evi-api-additions-11-11-2024]

* Added support for Anthropic's `claude-3.5-haiku-latest` model as a supplemental LLM option
* Added support for OpenAI's `gpt-4-turbo` model
* Introduced `{{now}}` default dynamic variable for system prompts, which is replaced with the current UTC timestamp and does not require sending a variable value in `SessionSettings`

### EVI API changes \[#evi-api-changes-11-11-2024]

* Deprecated support for `claude-instant-1.2` (any existing integrations should migrate to current models like `claude-3.5-haiku-latest`)

### Bugs bashed \[#bugs-bashed-11-11-2024]

* Fixed audio reconstruction errors that affected some chat recordings
* Prevented some EVI errors by dropping any empty assistant messages
* Enhanced audio quality in reconstructed audio by removing unnecessary WAV headers, eliminating clicking artifacts

---

## October 25, 2024 \[#10-25-2024]

### EVI API additions \[#evi-api-additions-10-25-2024]

* Added support for `claude-3.5-sonnet-latest` (currently points to `claude-3-5-sonnet-20241022`) and made this model the recommended supplemental LLM
* Added support for tool use with Gemini models (`gemini-1.5-pro` and `gemini-1.5-flash`)

### Bugs bashed \[#bugs-bashed-10-25-2024]

* Fixed a bug where [context](https://dev.hume.ai/reference/speech-to-speech-evi/chat#send.SessionSettings.context) was incorrectly set as persistent and added to every user messages, despite being specified as `type: temporary`

---

## October 11, 2024 \[#10-11-2024]

### EVI API additions \[#evi-api-additions-10-11-2024]

* Added a new base voice, `Sunny`, featuring a male voice with an Indian accent
* Improved the reliability of the experimental custom voice creation feature by reducing hallucinations, and added 11 new adjustable parameters - `articulation`, `buoyancy`, `enthusiasm`, `nasality`, `smoothness`, `tightness`, `assertiveness`, `confidence`, `gender`, `relaxedness`, `tepidity`

### EVI API changes \[#evi-api-changes-10-11-2024]

* Added a more informative error message for when Google Gemini models are overloaded, returning an `E0718` error code instead of silently dropping the connection
* Implemented Anthropic prompt caching to reduce latency with Claude 3 models, especially for longer prompts and conversations

### Bugs bashed \[#bugs-bashed-10-11-2024]

* Reduced the frequency of all hallucinations when using EVI 2
* Prevented voice hallucinations when EVI 2 outputs less common text formats, including numbered lists, emails, hashtags, very short messages, and numbers

---

## September 27, 2024 \[#09-27-2024]

### EVI API changes \[#evi-api-changes-09-27-2024]

* Upgraded `gemini-1.5-pro` and `gemini-1.5-flash` models to use the latest versions, `gemini-1.5-pro-002` and `gemini-1.5-flash-002`
* Improved audio quality for EVI phone calling

### Bugs bashed \[#bugs-bashed-09-27-2024]

* Fixed an issue with the EVI WebSocket auto-reconnecting after timeouts, by updating the inactivity timeout socket close code from 1001 to 1000
* Fixed a bug where the `GET /chat_groups/{id}` endpoint would return all chats, not just the chats in the `chat_group`

---

## September 20, 2024 \[#09-20-2024]

### EVI API changes \[#evi-changes-09-20-2024]

* Added support for resuming chats with supplemental LLMs for EVI 2
* Updated the DACHER base voice, making it significantly higher quality and more reliable
* Improved EVI's ability to recover from accidental interruptions. Previously, if EVI was interrupted by non-speech sounds, EVI would stop and wait for further input. EVI will now continue speaking after these interruptions

### Bugs bashed \[#bugs-bashed-09-20-2024]

* Fixed an issue where @ signs would be removed in emails, leading to incorrect pronunciation; now they will be replaced with "at" and pronounced correctly
* Fixed a bug with numbered lists, leading to lists being split into new lines and spoken incorrectly

---

## September 13, 2024 \[#09-13-2024]

### EVI API additions \[#evi-api-additions-09-13-2024]

* Released the EVI 2 API, with major improvements to the core EVI experience. Developers can try it now: [EVI 2 docs](/docs/speech-to-speech-evi/configuration/evi-version)
* Introduced an experimental feature for creating custom voices through adjustable sliders: [Custom voices](/docs/speech-to-speech-evi/configuration/voices)

### EVI API changes \[#evi-api-changes-09-13-2024]

* Improved text validation permissiveness for config names and descriptions, allowing a wider range of printable characters
* Added a new error code (E0720) to handle scenarios where [data retention](/docs/resources/privacy#zero-data-retention-and-data-usage-options) is off so chat group history is unavailable, providing a more informative error message before closing the session

### Bugs bashed \[#bugs-bashed-09-13-2024]

* Fixed an issue to ensure `chat_id` is passed to users when using custom language models and phone calling together, enabling developers to retrieve post-call details with these features
* Fixed a bug where resumed chat groups would use the first rather than the most recent config in the chat group when starting a new chat

---

## August 8, 2024 \[#08-08-2024]

### EVI API changes \[#evi-api-changes-08-08-2024]

* Enabled resuming previous chats with a new config. Previously, it was not possible to resume chats in a chat group with different configs. This change allows developers to change the prompt, voice, and other options in their config, while still retaining the context in their chat history: [Chat resumability](/docs/speech-to-speech-evi/faq#does-evi-support-resuming-chats)
* Introduced the new `E0717` error type, which will occur when a developer tries resuming a chat when one of the chats in its `chat_group` is already active.
* Added two new errors for issues with supplemental language model providers. If a provider is overloaded, EVI will return `E0718`, and if a provider has unexpected internal errors EVI will return `E0719`. If these errors occur, developers can try again later or change their configurations to use a different LM provider.

---

## August 2, 2024 \[#08-02-2024]

### EVI API additions \[#evi-api-additions-08-02-2024]

* Added support for new language models with the Groq provider: `llama-3.1-70b-versatile` and `llama-3.1-8b-instant`
* Added support for new language models with the Fireworks provider: `accounts/fireworks/models/llama-v3p1-405b-instruct`, `accounts/fireworks/models/llama-v3p1-70b-instruct`, and `accounts/fireworks/models/llama-v3p1-8b-instruct`
* Added a `hang_up` built in tool to allow EVI to end calls. To use this, developers can include the `hang_up` tool in the `builtin_tools` object when creating a config, and provide instructions on when EVI should end the call in the prompt

### EVI API changes \[#evi-api-changes-08-02-2024]

* Added the ability to [create a prompt during config creation](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#request.body.prompt). The new prompt object in the config creation request has three nullable fields (`id`, `version`, and `text`). Providing only `text` in the `prompt` field when creating a new config will create a new prompt
* Dropped support for the older Llama 3 70B Instruct model from Fireworks (`accounts/fireworks/models/llama-v3-70b-instruct`), as it is replaced by the new Llama 3.1 70B model (`accounts/fireworks/models/llama-v3p1-70b-instruct`)

---

## July 26, 2024 \[#07-26-2024]

### EVI API changes \[#evi-api-changes-07-26-2024]

* Invalid `SessionSettings` payloads now return an `E0716` error. Invalid payloads include empty system prompts, duplicate tool names, removing previously enabled tools, and overlapping builtin and custom tool names. If an update is invalid, the error message will explain why, and the `SessionSettings` will not be applied

---

## July 18, 2024 \[#07-18-2024]

### EVI API additions \[#evi-api-additions-07-18-2024]

* Added the `on_inactivity_timeout` configuration option, allowing EVI to speak a message when the user is inactive for some period of time: [Inactivity timeout message](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#request.body.event_messages.on_inactivity_timeout)
* Added the `on_max_duration_timeout` configuration option, allowing EVI to speak a message when the maximum chat duration is reached: [Max duration timeout message](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#request.body.event_messages.on_max_duration_timeout)
* Added support for the `gpt-4o-mini` language model

### EVI API changes \[#evi-api-changes-07-18-2024]

* Updated the Hume Typescript SDK, with detailed changes and a migration guide in the [release notes for version 0.8.2](https://github.com/HumeAI/hume-typescript-sdk/releases/tag/0.8.2)

---

## July 12, 2024 \[#07-12-2024]

### EVI API additions \[#evi-api-additions-07-12-2024]

* Added dynamic variables, allowing developers to define variables in `SessionSettings` and reference their values in the system prompt (e.g., `{{variable_name}}`): [Dynamic variables](https://dev.hume.ai/docs/speech-to-speech-evi/configuration/build-a-configuration#dynamic-variables)
* Added support for the Google language model provider and the `gemini-1.5-pro` and `gemini-1.5-flash` language models
* Added EVI configuration options to set timeouts for user inactivity (`inactivity`) and maximum session duration (`max_duration`): [Timeouts](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#response.body.timeouts)
* Added support for retrieving the phone numbers of inbound callers, using the `metadata.twilio.caller_number` property of the `evi/chats/:id` endpoint: [List chat events](https://dev.hume.ai/reference/speech-to-speech-evi/chats/list-chat-events#response.body.metadata)
* Added the `/v0/evi/language-models` API endpoint to retrieve the language models supported by EVI and the built-in tools available for each model

---

## July 5, 2024 \[#07-05-2024]

### EVI API additions \[#evi-api-additions-07-05-2024]

* Added a `config_id` filter option for the `GET /chat_groups` endpoint, allowing developers to limit paginated results to chat groups associated with a specific config ID
* Added a `name` filter option for the `GET /configs`, `GET /tools`, and `GET /prompts` endpoints. These allow developers to limit paginated results to only include objects with a specific name
* Introduced data storage options for the EVI API. The "do not retain data" option disables storage of chat histories and voice recordings for EVI sessions. The "do not use for training" opts out of Hume using anonymized data from EVI sessions for model improvements. Developers can toggle these options from the [profile page in the Hume portal](https://app.hume.ai/account)
* Added more descriptive error messages for transcription-related errors

---

## June 28, 2024 \[#06-28-2024]

### EVI API additions \[#evi-api-additions-06-28-2024]

* Added a `request_id` field to ChatMetadata to uniquely identify sessions
* Added an [on\_new\_chat](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#response.body.event_messages.on_new_chat) configuration option. Set `event_messages.on_new_chat.enabled` to `true` to have EVI speak first in the conversation. To control the exact text of that first message, also set `event_messages.on_new_chat.text`
* Added an [allow\_short\_responses](https://dev.hume.ai/reference/speech-to-speech-evi/configs/create-config#response.body.ellm_model.allow_short_responses) configuration option, which allows developers to turn off short responses generated by Hume's empathic large language model (eLLM). To disable these responses, set `ellm_model.allow_short_responses` to `false`

---

## June 21, 2024 \[#06-21-2024]

### EVI API additions \[#evi-api-additions-06-21-2024]

* Added support for Claude 3.5 Sonnet (`claude-3-5-sonnet-20240620`) to the EVI API

### EVI API changes \[#evi-api-changes-06-21-2024]

* Changed the default language model for the EVI API to Claude 3.5 Sonnet
* Changed the default voice for the EVI API to `Ito`
* Changed requirements to allow tool use if no language model is specified, allowing tool use when using the default LLM

### Bugs bashed \[#bugs-bashed-06-21-2024]

* Fixed a bug where sending an `AssistantInput` message at the beginning of an EVI chat configured with Anthropic models would result in an error
* Fixed a bug with chat resumability where previous chat group events were not being included in the LLM chat history, and EVI would forget details from before the chat was resumed

---

## June 7, 2024 \[#06-07-2024]

### EVI API additions \[#evi-api-additions-06-07-2024]

* Added a `total_pages` field to all paginated EVI REST endpoints

### EVI API changes \[#evi-api-changes-06-07-2024]

* EVI REST endpoints will now return the 201 status code instead of the 200 status code when creating new entities including new configs, chat groups, prompts, and tools
* EVI REST endpoints will now return the 404 status code if referencing a config, chat, prompt, or tool that doesn't exist. If an invalid page number exceeding the total number of pages is specified, the endpoint will return an empty list rather than a 404 status code
* Added more detailed error messages for Custom Language Model. If the connection between Hume's API and a developers's language model times out, we will now send an `E0712:custom_language_model_timed_out` error. If the connection fails, we will send an `E0713:custom_language_model_connection_failed` error

---

## May 31, 2024 \[#05-31-2024]

### EVI API additions \[#evi-api-additions-05-31-2024]

* Added chat resumability, allowing developers to resume previous chats with EVI by specifying a chat group ID in the `resumed_chat_group_id` query parameter: [Chat resumability](https://dev.hume.ai/docs/speech-to-speech-evi/faq#does-evi-support-chat-resumability)
* Added the `api.hume.ai/v0/evi/chat_groups` endpoint to support listing chat groups or listing events from a specific chat group: [Chat groups endpoint](https://dev.hume.ai/reference/speech-to-speech-evi/chat-groups/list-chat-groups)
* Added the `ChatMetadata` output message, which includes a `chat_id` to identify each individual chat with EVI and a `chat_group_id` to support resumability and group resumed chats together: [ChatMetadata](https://dev.hume.ai/reference/speech-to-speech-evi/chat#receive.ChatMetadata.chat_group_id)
* Added support for chat resumability to the Hume Python SDK: [Release notes for version 0.6.0](https://github.com/HumeAI/hume-python-sdk/releases/tag/v0.6.0)
* Added support for chat resumability and pause/resume messages to the Hume TypeScript SDK: [Release notes for version 0.1.6](https://github.com/HumeAI/empathic-voice-api-js/releases/tag/v0.1.6)

### EVI API changes \[#evi-api-changes-05-31-2024]

* Added more detailed error messages for Custom Language Model. If Hume's API cannot reach a developers's language model, we will now send an `E0706: custom_language_model_unreachable` error to the developer
* Added error messages for chat resumability - `E0710: resuming_chat_group_with_new_config` when a developer attempts to resume a chat group with a new config, `E0708: chat_group_not_found` when a chat group does not exist, and `E0709: config_not_found` when a config does not exist
* Added an error message for unavailable EVI supplemental LLMs. While supplemental LLMs can always be enabled by passing an API for a 3rd party LLM service, if EVI is configured with an LLM that is not currently available as a Hume-managed LLM, we will send an `E0711: language_model_unavailable` error

---

## May 24, 2024 \[#05-24-2024]

### EVI API additions \[#evi-api-additions-05-24-2024]

* Added support for streaming custom language model responses in parts. Developers can send text chunks to start generating audio responses much faster
  The Custom Language Model endpoint now expects text to be formatted in the following payload:

  ```
  # send this to add text
  {"type": "assistant_input", "text": "<chunk>"}

  # send this message when you're done speaking
  {"type": "assistant_end"}
  ```

* Added support for pausing and resuming EVI responses with with `pause_assistant_message` and `resume_assistant_message`. Sending a pause message stops EVI from generating and speaking Assistant messages. Sending a resume message allows EVI to continue responding to the User messages

### EVI API changes \[#evi-api-changes-05-24-2024]

* Increased the limit for tool descriptions from 100 chars to 512 chars
* Set the maximum length for `tool_name` to 64 chars

---

## May 17, 2024 \[#05-17-2024]

### EVI API additions \[#evi-api-additions-05-17-2024]

* Added support for built-in tools, starting with web search: [Using built-in tools](https://dev.hume.ai/docs/speech-to-speech-evi/features/tool-use#using-built-in-tools)
* Added support for phone calling through a Twilio integration: [Phone calling](https://dev.hume.ai/docs/speech-to-speech-evi/guides/phone-calling)
* Added `DACHER` voice to the voice configuration options
* Added support for the `gpt-4o` language model

### EVI API changes \[#evi-api-changes-05-17-2024]

* Increased the limit for tool descriptions from 100 chars to 512 chars

---

## May 10, 2024 \[#05-10-2024]

### EVI API additions \[#evi-api-additions-05-10-2024]

* Added support for three open-source models through the Groq language model provider: Gemma 7B (`gemma-7b-it`), Llama 3 8B (`llama3-8b-8192`), and Llama 3 70B (`llama3-70b-8192`)
* Added support for Llama 30 70B language model through the Fireworks language model provider (`accounts/fireworks/models/llama-v3-70b-instruct`)
* Added a `custom_session_id` field in the `SessionSettings` message, and documentation for using it: [Custom Session ID](https://dev.hume.ai/docs/speech-to-speech-evi/guides/custom-language-model#custom-session-id)

### EVI API changes \[#evi-api-changes-05-10-2024]

* Disabled short response generation for [custom language models](https://dev.hume.ai/docs/speech-to-speech-evi/guides/custom-language-model)
* Added error codes for when Hume credits run out while using EVI. Users will receive either the `E0300` error code if they are out of credits or `E0301` if they are blocked via subscription. The WebSocket connection will also be closed with code `1008`

### Bugs bashed \[#bugs-bashed-05-10-2024]

* Fixed an issue with the `from_text` field in `UserMessage`. It is now set to True if any part of the `UserMessage` is from a developer-provided `UserInput` message

---

## May 3, 2024 \[#05-03-2024]

### EVI API additions \[#evi-api-additions-05-03-2024]

* Added support for `Tools` through our [tool use feature](https://dev.hume.ai/docs/speech-to-speech-evi/features/tool-use)
* Added `ToolErrorMessage` as a supported input type

### Bugs bashed \[#bugs-bashed-05-03-2024]

* Added an error that returns status `400` if a Config, Tool, or Prompt is created with a name or `versionDescription` that's too long or non-ASCII. Names must be under 75 chars, `versionDescription` must be under 256 chars, `description` for Tools must be under 100 chars, `fallback_content` for Tools must be under 2048 chars, and `model_resource` for LanguageModels must be under 1024 chars
* Fixed several edge cases and bugs involving Tool calls, including supporting only single tool calls with EVI (no parallel tool calling)

---

## April 30, 2024 \[#04-30-2024]

### EVI API additions \[#evi-api-additions-04-30-2024]

* Added support for reading language model type from EVI configs
* Added support for reading language model `temperature` from EVI configs
* Added system prompt to `SessionSettings` message to allow dynamic prompt updating

### EVI API changes \[#evi-api-changes-04-30-2024]

* Renamed `TextInput` message to `UserInput` to indicate this is text to be added to the chat history as a `User` message and used as context by the LLM
* Renamed `TtsInput` message to `AssistantInput` to make it clear that this is input text to be spoken by EVI and added to the chat history as an `Assistant` message
* Moved audio configuration options to `SessionSettings` message

### Bugs bashed \[#bugs-bashed-04-30-2024]

* Fixed chats staying open after errors, chats will now end upon exceptions
* Added an error thrown if config uses both `custom_model` and `prompt`, because custom language models do not use prompts
* Fixed issue where erroring when sending errors would cause the API to get stuck
* Added clearer errors for custom language models
* Added unable to configure audio service error
* Added an error to invalidate outdated language model responses

---