mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-07 19:38:46 -05:00
enh: reset requested voice model after switching TTS Engine #1456
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ahmedsaed on GitHub (Jul 6, 2024).
Bug Report
Description
Bug Summary:
Before setting up openedai-speech, I was using the webapi
Google UK English Femalevoice. After I completed the setup for openedai-speech, I was getting these errorsOpen webui logs
Openedai-speech logs
The error message clearly shows that the requested model didn't get reset or overridden by the value chosen in Admin settings. I had to update the voice model from the user (settings button) settings.
I believe the
admin settingsandsettingsshould be in sync at least for the admin user.Steps to Reproduce:
Expected Behavior:
When the engine changed through admin settings, users should have audio settings updated or reset.
Actual Behavior:
The voice model chosen in
settingswas being used despite it being invalid.Environment
Open WebUI Version: v0.3.7
Operating System: Ubuntu 20.04
Browser (if applicable): Chrome latest
Reproduction Details
Confirmation:
Installation Method
Both open webui and openedai-speech were installed through docker.
@ahmedsaed commented on GitHub (Jul 6, 2024):
Also the settings page doesn't display the full list of available voices when a voice is already selected. I have to delete the selected voice for the complete list to show.
It feels more of an autocomplete than a drop down menu
@ahmedsaed commented on GitHub (Jul 7, 2024):
I've noticed a bug related to caching.
To explain it, I need to understand where the voices list in the dropdown menu comes from. Specifically, I'm referring to the list that includes voices like alloy, echo, fable, etc..
I assumed this list was populated with the available voices, but when I added my custom voice to the openedai-speech config, the list did not include the new voice, even after restarting.
Interestingly, I can manually enter the name of the custom voice and it works, except when I try to play a message that has already been played with one of the predefined voices.
To elaborate, I initially used the alloy voice to play a message. After switching to my custom voice, the play button didn't work, despite the logs showing no errors.
This issue only occurs with custom models. If I select another voice from the predefined list, it plays normally.
Playing the custom voice on a new message, however, works without any problems.
@tjbck commented on GitHub (Jul 8, 2024):
PR welcome!
@jason-e-gross commented on GitHub (Jul 11, 2024):
I can confirm that this is an issue. I stood up my own container of openedai-speech, and I can exec into Open WebUI's container, and
curlto the speech contsainer, and get it to generate audio (so I know the endpoint is reachable from within Open WebUI) but Open WebUI keeps throwing 400 Bad Requests, when I watch open webui's docker logs.Also has nothing to do with any custom voices - i can't get it to work with the default settings.
Docker logs from Open WebUI

Docker logs from OpenedAI-Speech

It looks like it's passing in some other setting from elsewhere? "Microsoft Zira"?
Oh, huh - I gotta go into my own personal settings also and change it. Odd.
@jason-e-gross commented on GitHub (Jul 11, 2024):
Follow-up, tried a custom - and can't seem to get custom voices to work at all. only the standard ones included in openedai-speech.
@ahmedsaed commented on GitHub (Jul 11, 2024):
Have you noticed the third message a wrote about a potential bug with caching and invalidation?
What exactly is the problem you are facing?
Have you tested the custom voice through a curl command?
If the model is working through other methods then the issue is probably related to the caching
Don't test the custom model on a message that had been played with the standard ones
@jason-e-gross commented on GitHub (Jul 11, 2024):
Finally, for me - its a custom file that just won't work. But I don't know that it's open-web-ui's issue - because when I curl the file, opened-ai-speech generates the mp3, but it's corrupt - so im probably doing something wrong there.
@ZA5542 commented on GitHub (Aug 11, 2024):
I had the same issue with the corrupt mp3 file. Change it to a .wav file, and it will work.