image_generation_config; } /** * Sets the image generation configuration. * * @since 0.7.0 * * @param Image_Generation_Config $image_generation_config The image generation configuration. */ final protected function set_image_generation_config( Image_Generation_Config $image_generation_config ): void { $this->image_generation_config = $image_generation_config; } /** * Sets the image generation configuration if provided in the `generationConfig` model parameter. * * @since 0.7.0 * * @param array $model_params The model parameters. * * @throws InvalidArgumentException Thrown if the `generationConfig` model parameter is invalid. */ protected function set_image_generation_config_from_model_params( array $model_params ): void { if ( ! isset( $model_params['generationConfig'] ) ) { return; } if ( is_array( $model_params['generationConfig'] ) ) { $model_params['generationConfig'] = Image_Generation_Config::from_array( $model_params['generationConfig'] ); } if ( ! $model_params['generationConfig'] instanceof Image_Generation_Config ) { throw new InvalidArgumentException( sprintf( 'Invalid generationConfig model parameter: The value must be an array or an instance of %s.', Image_Generation_Config::class ) ); } $this->set_image_generation_config( $model_params['generationConfig'] ); } }