Add support for OpenAI text-to-speech instructions
parameter
#1011
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of the Change
This PR adds support for OpenAI's
instructions
parameter in the text-to-speech feature, allowing users to control voice characteristics using natural language instructions.Changes made:
Added a new "Voice instructions" textarea field to the OpenAI Text-to-Speech settings
Updated default settings to include the
instructions
parameterModified the API request to include instructions when provided
Added
get_instructions()
method with filter supportAdded two new filters:
classifai_openai_text_to_speech_instructions
andclassifai_openai_text_to_speech_request_body
Users can now control voice characteristics with natural language (e.g., "Speak in a calm, professional tone")
Provides more flexibility in audio generation
Maintains backward compatibility (instructions are optional)
Approaches considered:
Closes #998, Closes #997
How to test the Change
Build the frontend assets:
Access the settings:
Test the functionality:
Test filters:
Changelog Entry
Credits
Props @swissky @dkotter @faisalalvi
Checklist: