adachsoft / ai-image-minimax
v0.2.0
2026-03-18 20:22 UTC
Requires
- adachsoft/ai-image-contract: ^0.2
- adachsoft/collection: ^3.0
- guzzlehttp/guzzle: ^7.10
Requires (Dev)
- adachsoft/php-code-style: ^0.4
- friendsofphp/php-cs-fixer: ^3.94
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^13.0
- rector/rector: ^2.3
- vlucas/phpdotenv: ^5.6
This package is not auto-updated.
Last update: 2026-03-19 14:37:36 UTC
README
MiniMax adapter for adachsoft/ai-image-contract.
Installation
composer require adachsoft/ai-image-minimax
Usage
use AdachSoft\AiImageContract\Collections\ImageInputCollection;
use AdachSoft\AiImageContract\Models\GenerationRequest;
use AdachSoft\AiImageContract\ValueObjects\ImageSize;
use AdachSoft\AiImageContract\ValueObjects\Prompt;
use AdachSoft\AiImageMiniMax\Factory\MiniMaxImageGeneratorFactory;
$generator = MiniMaxImageGeneratorFactory::create('your-api-key');
$response = $generator->generate(new GenerationRequest(
prompt: new Prompt('A futuristic city at sunset, cyberpunk style'),
imageInputs: new ImageInputCollection([]),
size: new ImageSize(1024, 1024),
options: [
'model' => 'image-01',
'response_format' => 'url',
'n' => 1,
'prompt_optimizer' => true,
],
));
foreach ($response->images as $image) {
if ($image->url !== null) {
echo $image->url . PHP_EOL;
}
}
Notes
This adapter supports text-to-image requests using the MiniMax image generation endpoint.
Current adapter behavior:
imageInputsare rejected as unsupported by this provider adapter.- The request
sizeis converted into the MiniMaxaspect_ratiopayload field. - The adapter currently expects MiniMax to return image URLs.
Contract Compatibility
This package is compatible with adachsoft/ai-image-contract ^0.2.
The updated contract introduces provider-level exception semantics such as retryable failures and content moderation rejections. This adapter maps MiniMax transport and HTTP failures to the contract exceptions exposed by the library.
Exceptions
The adapter may throw exceptions from adachsoft/ai-image-contract, including:
InvalidInputExceptionwhen unsupported request features are used.RetryableExceptionfor temporary transport failures, rate limits, and 5xx responses.ContentModerationExceptionfor moderation or safety-filter style rejections.GenerationFailedExceptionfor non-retryable provider failures or invalid generation responses.