Class TtsModel
java.lang.Object
com.google.genkit.plugins.googlegenai.TtsModel
- All Implemented Interfaces:
Model,Action<ModelRequest,,ModelResponse, ModelResponseChunk> Registerable
Text-to-Speech model using Gemini TTS models.
This model uses Gemini's TTS capabilities via responseModalities=AUDIO and speechConfig for voice configuration.
Supported models:
- gemini-2.5-flash-preview-tts
- gemini-2.5-pro-preview-tts
Configuration options (via custom config):
- voiceName - Name of the voice to use (e.g., "Zephyr", "Puck", "Charon", "Kore", etc.)
Available voices: Zephyr, Puck, Charon, Kore, Fenrir, Leda, Orus, Aoede, Callirrhoe, Autonoe, Enceladus, Iapetus, Umbriel, Algieba, Despina, Erinome, Algenib, Rasalgethi, Laomedeia, Achernar, Alnilam, Schedar, Gacrux, Pulcherrima, Achird, Zubenelgenubi, Vindemiatrix, Sadachbia, Sadaltager, Sulafat
-
Constructor Summary
ConstructorsConstructorDescriptionTtsModel(String modelName, GoogleGenAIPluginOptions options) Creates a TtsModel for the specified model. -
Method Summary
Modifier and TypeMethodDescriptiongetInfo()Gets information about the model's capabilities.getName()Returns the name of the action.static booleanisTtsModel(String modelName) Checks if the given model name is a supported TTS model.run(ActionContext context, ModelRequest request) Generates a response from the given request.run(ActionContext context, ModelRequest request, Consumer<ModelResponseChunk> streamCallback) Generates a streaming response from the given request.booleanReturns whether this model supports streaming.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.google.genkit.ai.Model
getDesc, getInputSchema, getMetadata, getOutputSchema, getType, register, runJson, runJsonWithTelemetry
-
Constructor Details
-
TtsModel
Creates a TtsModel for the specified model.- Parameters:
modelName- the TTS model nameoptions- the plugin options
-
-
Method Details
-
getName
Description copied from interface:ActionReturns the name of the action.- Specified by:
getNamein interfaceAction<ModelRequest,ModelResponse, ModelResponseChunk> - Returns:
- the action name
-
getInfo
Description copied from interface:ModelGets information about the model's capabilities. -
supportsStreaming
public boolean supportsStreaming()Description copied from interface:ModelReturns whether this model supports streaming.- Specified by:
supportsStreamingin interfaceModel- Returns:
- true if streaming is supported
-
run
Description copied from interface:ModelGenerates a response from the given request.- Specified by:
runin interfaceAction<ModelRequest,ModelResponse, ModelResponseChunk> - Specified by:
runin interfaceModel- Parameters:
context- the action contextrequest- the model request- Returns:
- the model response
-
run
public ModelResponse run(ActionContext context, ModelRequest request, Consumer<ModelResponseChunk> streamCallback) Description copied from interface:ModelGenerates a streaming response from the given request.- Specified by:
runin interfaceAction<ModelRequest,ModelResponse, ModelResponseChunk> - Specified by:
runin interfaceModel- Parameters:
context- the action contextrequest- the model requeststreamCallback- callback for streaming chunks- Returns:
- the final model response
-
isTtsModel
Checks if the given model name is a supported TTS model.- Parameters:
modelName- the model name to check- Returns:
- true if the model is a TTS model
-