diff --git a/core/Controller/TextToImageApiController.php b/core/Controller/TextToImageApiController.php index 1a06b24d58f..b626baf4987 100644 --- a/core/Controller/TextToImageApiController.php +++ b/core/Controller/TextToImageApiController.php @@ -93,6 +93,12 @@ class TextToImageApiController extends \OCP\AppFramework\OCSController { 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 e610af6aa96..cee8e614f03 100644 --- a/lib/public/TextToImage/Task.php +++ b/lib/public/TextToImage/Task.php @@ -83,6 +83,12 @@ final class Task implements \JsonSerializable { 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'); + } } /**