diff --git a/core/Controller/TextToImageApiController.php b/core/Controller/TextToImageApiController.php index d3a05011fb76a..1019114bee997 100644 --- a/core/Controller/TextToImageApiController.php +++ b/core/Controller/TextToImageApiController.php @@ -81,6 +81,12 @@ public function schedule(string $input, string $appId, string $identifier = '', if (strlen($input) > 64_000) { return new DataResponse(['message' => $this->l->t('Input text is too long')], Http::STATUS_PRECONDITION_FAILED); } + if ($numberOfImages > 12) { + return new DataResponse(['message' => $this->l->t('Cannot generate more than 12 images')], Http::STATUS_PRECONDITION_FAILED); + } + if ($numberOfImages < 1) { + return new DataResponse(['message' => $this->l->t('Cannot generate less than 1 image')], Http::STATUS_PRECONDITION_FAILED); + } $task = new Task($input, $appId, $numberOfImages, $this->userId, $identifier); try { try { diff --git a/lib/public/TextToImage/Task.php b/lib/public/TextToImage/Task.php index 7b94de0fbb3bb..ea1b45ef99c4b 100644 --- a/lib/public/TextToImage/Task.php +++ b/lib/public/TextToImage/Task.php @@ -68,6 +68,12 @@ final public function __construct( protected ?string $userId, protected ?string $identifier = '', ) { + if ($this->numberOfImages > 12) { + throw new \ValueError('Cannot generate more than 12 images'); + } + if ($this->numberOfImages < 1) { + throw new \ValueError('Cannot generate less than 1 image'); + } } /**