[PR #3612] [CLOSED] feat: Add TTS voice selection per model #44344

Closed
opened 2026-04-29 18:24:42 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/open-webui/open-webui/pull/3612
Author: @moblangeois
Created: 7/3/2024
Status: Closed

Base: devHead: feature/tts-voice-per-model


📝 Commits (1)

  • 2358a9b feat: Add TTS voice selection per model

📊 Changes

4 files changed (+44 additions, -11 deletions)

View changed files

📝 backend/apps/webui/internal/migrations/001_initial_schema.py (+1 -0)
📝 backend/apps/webui/internal/migrations/010_migrate_modelfiles_to_models.py (+1 -0)
📝 src/lib/components/chat/Messages/ResponseMessage.svelte (+8 -9)
📝 src/routes/(app)/workspace/models/edit/+page.svelte (+34 -2)

📄 Description

Pull Request Checklist

Note to first-time contributors: Please open a discussion post in Discussions and describe your changes before submitting a pull request.

Before submitting, make sure you've checked the following:

  • Target branch: This pull request targets the dev branch.
  • Description: Implemented the ability to set TTS voice per model.
  • Changelog: A changelog entry has been added at the bottom of the PR description.
  • Documentation: Relevant documentation has been updated to reflect the new functionality.
  • Dependencies: No new dependencies were added.
  • Testing: Tests have been written and run to validate the changes.
  • Code review: A self-review of the code has been performed, addressing coding standard issues and ensuring adherence to the project's coding standards.
  • Prefix: The pull request title has been prefixed with "feat: ".

Changelog Entry

Description

  • Introduced a feature allowing the selection of TTS voice per model. This was discussed in #3097.
  • Users can now set a specific TTS voice for each model in Open WebUI. This feature enhances the customization of AI responses by providing unique voices for different models. Works with both openedai-speech and OpenAI voices.

Added

  • Added a dropdown menu in the model editing interface to select the TTS voice.
  • Added a new property tts_voice in the metadata of the model to store the selected TTS voice.
  • Integrated the tts_voice property in the speech synthesis logic to use the selected voice for TTS.

Changed

  • Updated the model editing page to include the TTS voice selection.
  • Modified the backend logic to handle the tts_voice property in the model metadata.

Deprecated

  • None

Removed

  • None

Fixed

  • None

Security

  • None

Breaking Changes

  • None

Additional Information

  • The tts_voice feature has been tested locally and verified to work with the existing models. Users can now assign a custom TTS voice to each model and hear distinct voices during speech synthesis.

Screenshots or Videos

  • N/A

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/open-webui/open-webui/pull/3612 **Author:** [@moblangeois](https://github.com/moblangeois) **Created:** 7/3/2024 **Status:** ❌ Closed **Base:** `dev` ← **Head:** `feature/tts-voice-per-model` --- ### 📝 Commits (1) - [`2358a9b`](https://github.com/open-webui/open-webui/commit/2358a9bd311631d187b54b52f7ba9ba1fb58dd35) feat: Add TTS voice selection per model ### 📊 Changes **4 files changed** (+44 additions, -11 deletions) <details> <summary>View changed files</summary> 📝 `backend/apps/webui/internal/migrations/001_initial_schema.py` (+1 -0) 📝 `backend/apps/webui/internal/migrations/010_migrate_modelfiles_to_models.py` (+1 -0) 📝 `src/lib/components/chat/Messages/ResponseMessage.svelte` (+8 -9) 📝 `src/routes/(app)/workspace/models/edit/+page.svelte` (+34 -2) </details> ### 📄 Description # Pull Request Checklist ### Note to first-time contributors: Please open a discussion post in [Discussions](https://github.com/open-webui/open-webui/discussions) and describe your changes before submitting a pull request. **Before submitting, make sure you've checked the following:** - [x] **Target branch:** This pull request targets the `dev` branch. - [x] **Description:** Implemented the ability to set TTS voice per model. - [x] **Changelog:** A changelog entry has been added at the bottom of the PR description. - [ ] **Documentation:** Relevant documentation has been updated to reflect the new functionality. - [x] **Dependencies:** No new dependencies were added. - [ ] **Testing:** Tests have been written and run to validate the changes. - [x] **Code review:** A self-review of the code has been performed, addressing coding standard issues and ensuring adherence to the project's coding standards. - [x] **Prefix:** The pull request title has been prefixed with "feat: ". # Changelog Entry ### Description - Introduced a feature allowing the selection of TTS voice per model. This was discussed in #3097. - Users can now set a specific TTS voice for each model in Open WebUI. This feature enhances the customization of AI responses by providing unique voices for different models. Works with both `openedai-speech` and OpenAI voices. ### Added - Added a dropdown menu in the model editing interface to select the TTS voice. - Added a new property `tts_voice` in the metadata of the model to store the selected TTS voice. - Integrated the `tts_voice` property in the speech synthesis logic to use the selected voice for TTS. ### Changed - Updated the model editing page to include the TTS voice selection. - Modified the backend logic to handle the `tts_voice` property in the model metadata. ### Deprecated - None ### Removed - None ### Fixed - None ### Security - None ### Breaking Changes - None --- ### Additional Information - The `tts_voice` feature has been tested locally and verified to work with the existing models. Users can now assign a custom TTS voice to each model and hear distinct voices during speech synthesis. ### Screenshots or Videos - N/A --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-29 18:24:42 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/open-webui#44344