Microsoft AI: MAI-Image-2.5
Microsoft AI MAI-Image-2.5 crée des images à partir de texte et apporte des modifications ciblées aux photos ou designs fournis. Il prend en charge les changements d’objets et de texte, le nettoyage d’artefacts et les révisions préservant les visages, avec sortie PNG et jusqu’à cinq références visuelles. Sa fiche précise un contexte de 32K et 1 048 576 pixels de sortie.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
Microsoft AI MAI-Image-2.5 est l’édition de génération générale et de montage contrôlé de la famille d’images 2.5. Sa fiche décrit un modèle de diffusion utilisant l’appariement de flux, avec 20 milliards de paramètres hors plongements, des entrées texte et image et un contexte de 32K jetons. Il produit des images pour les concepts, les portraits, les visuels de produits, les illustrations et les révisions de designs existants. Le choix de départ utile consiste à déterminer si la tâche nécessite une nouvelle composition ou une modification précise d’une ressource contenant déjà le sujet voulu.
Pour la génération, décrivez le sujet principal, le style visuel, la lumière, le point de vue et l’agencement. Le fabricant souligne les images détaillées et cohérentes, le rendu de texte, les visuels de produits et le respect des prompts. Un brief pratique d’illustration de présentation peut préciser le rôle du sujet, l’accent visuel voulu et la quantité d’espace environnant. Un concept de produit peut inclure la matière, l’échelle et la finition de surface. Gardez la description cohérente pour que les objets partagent une scène et un plan d’éclairage au lieu de combiner plusieurs traitements visuels incompatibles.
Le raisonnement visuel de cette édition concerne la structure de scène, l’éclairage, l’échelle et les relations spatiales. Le fabricant donne l’ajout d’un objet avec une perspective et des ombres appropriées comme usage de montage. Pour un montage d’atelier, placez un petit tabouret près d’un établi tout en conservant le point de vue et la lumière existants. La vérification doit comparer la taille du tabouret, son contact avec le sol et l’alignement de son ombre avec les autres objets. Un objet localement convaincant doit tout de même s’intégrer à la géométrie de toute l’image source.
Les montages dirigés comprennent le retrait ou le remplacement d’objets, les changements d’attributs, la retouche localisée, l’adaptation de mise en page, les mises à jour de texte et le nettoyage, comme la réduction d’artefacts de flou de mouvement. Fournissez l’image source et nommez la correction ainsi que les détails à conserver. Un montage photo ciblé pourrait retirer un objet gênant de l’arrière-plan tout en gardant la personne, le recadrage et l’agencement du premier plan. Une révision de design pourrait mettre à jour une courte ligne de texte tout en conservant la composition. Comparez tout le résultat à la source au lieu d’évaluer uniquement la zone modifiée.
Microsoft souligne aussi la cohérence de l’identité faciale entre les montages, y compris les changements de pose, d’expression ou de point de vue. Utilisez une référence claire pour la ressemblance et précisez le changement voulu de façon à préserver les caractéristiques d’identification. Le guide de montage actuel du fabricant accepte jusqu’à cinq images JPEG ou PNG, permettant à différentes références d’identifier la personne, l’objet, la scène ou le style. Nommez ces rôles dans le prompt. Pour une révision de portrait, inspectez le visage ainsi que les vêtements ou l’arrière-plan modifiés avant de considérer l’image comme terminée.
La fiche exacte du modèle limite la sortie à 1 048 576 pixels au total, équivalents à un carré de 1024×1024, et permet à un côté de dépasser 1024 si le total reste dans cette surface. Le guide de service exige en plus que les deux dimensions mesurent au moins 768 pixels. Une cible rectangulaire comme 1344×768 compte 1 032 192 pixels et respecte ces règles documentées de surface et de dimensions minimales. La limite utile est le produit de la largeur et de la hauteur : préparez donc le format de destination avant de demander une composition paysage ou portrait.
La génération et le montage renvoient des données d’image PNG dans l’interface de service du fabricant. La fiche native rapporte un contexte de 32K jetons, tandis que cette interface précise un contexte de prompt maximal de 32 000 jetons. Le chiffre distinct de 4 096 jetons de sortie du catalogue est une allocation de jetons plutôt qu’une dimension de sortie. Conservez ces portées déclarées lorsque vous organisez un prompt détaillé et l’image terminée. Les ressources sources, les caractéristiques conservées, les modifications demandées et la taille cible constituent un dossier de révision utile avec le PNG.
La portée créative du modèle couvre les images photoréalistes et cinématographiques, les portraits, les concepts de produits ou de marque, les designs avec texte et d’autres styles visuels. Pour une étiquette ou une enseigne, fournissez le texte exact et vérifiez son orthographe à la taille d’affichage finale. Une surface photographique reconnaissable peut quand même contenir un détail inventé, un reflet incohérent ou des caractères inexacts. Une vérification pratique suit les exigences du design : l’identité des objets, la lisibilité, les relations spatiales et la scène conservée comptent toutes. Gardez une correction précise distincte des modifications qui ont déjà fonctionné.
Dans la famille 2.5, Pro met l’accent sur une fidélité supérieure et des relations stables dans les scènes denses, tandis que Flash sert une production plus réactive. La famille 2.6 introduit une plus grande surface de pixels documentée, l’ancrage Web facultatif et la sélection du format dirigée par le modèle. Le 2.5 standard conserve son propre processus de génération et de montage sans ces commandes ultérieures. Choisissez l’édition selon la difficulté réelle de la tâche d’image et vérifiez le résultat terminé par rapport à ce brief.
Ailoot Ultra · Génération d’images POST /v1/images/generations microsoft/mai-image-2.5
microsoft/mai-image-2.5Pour commencer
Microsoft AI MAI-Image-2.5 crée des images à partir de texte et apporte des modifications ciblées aux photos ou designs fournis. Il prend en charge les changements d’objets et de texte, le nettoyage d’artefacts et les révisions préservant les visages, avec sortie PNG et jusqu’à cinq références visuelles. Sa fiche précise un contexte de 32K et 1 048 576 pixels de sortie.
- Entrées acceptées
- Texte · Images
- Résultats
- Images
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Génération d’images POST /v1/images/generations
- Entrée
text,image- Sortie
image
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites microsoft/mai-image-2.5 | Par défaut— |
Champprompt | Typestring | ExigenceObligatoire | Valeurs et limites Longueur minimale: 1 | Par défaut— |
Champaspect_ratio | Typestring | ExigenceFacultatif | Valeurs et limites 1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3, auto | Par défaut— |
Champn | Typeinteger | ExigenceFacultatif | Valeurs et limites Minimum: 1 Maximum: 1 | Par défaut— |
Champinput_references | Typearray | ExigenceFacultatif | Valeurs et limites Nombre minimal d’éléments: 0 Nombre maximal d’éléments: 1 | Par défaut— |
Champprovider | Typeobject | ExigenceFacultatif | Valeurs et limites | Par défaut— |
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, prompt |
Paramètrematerial_types | Contrattext, image |
Cycle de vie : synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id effectivement renvoyé ou enregistrement de la bibliothèque multimédia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Tarifs
Calcul du coût final
Les tarifs affichés servent à estimer le coût avant la génération. Le montant final est calculé à partir du coût enregistré pour la génération d’origine. La durée mesurée du résultat et les quantités prévisionnelles ne constituent pas la quantité finale facturable.
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Non précisé Lorsque le mode rapide est sélectionné
- Mode Flex
- Non précisé Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs estimés à des fins de comparaison
Prix par configuration
Associez chaque coût aux conditions indiquées. Utilisez un seul tarif pour chaque ensemble de configurations alternatives.
| Configuration | Barème tarifaire | Quantité prévisionnelle | Coût |
|---|---|---|---|
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Quantité prévisionnelle— | Coût Entrée · Jetons en entrée · Estimation à des fins de comparaison uniquement — / 1K jetons Sortie · Jetons en sortie · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Lecture du cache · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Écriture dans le cache · Estimation à des fins de comparaison uniquement — / 1K jetons Entrée · Écriture dans le cache, 1 h · Estimation à des fins de comparaison uniquement — / 1K jetons |
| ConfigurationCoût de génération estimé | Barème tarifaire— | Quantité prévisionnelleestimation pour une génération | Coût Sortie · Coût estimé de génération · Estimation à des fins de comparaison uniquement $0.385024 estimation avant génération Cette estimation ne constitue ni des frais supplémentaires ni un tarif fixe pour la génération terminée. |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Génération d’images
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p={'model': 'microsoft/mai-image-2.5', 'prompt': 'a red panda astronaut floating in space, studio lighting'}
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/images/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import base64, json, os, subprocess
from pathlib import Path
from urllib.parse import urlsplit, urljoin
def save_images(items):
if not items: raise SystemExit("No completed images; retain the full response")
for index, item in enumerate(items):
encoded=item.get("b64_json")
uri=item.get("url", "")
if not encoded and uri.startswith("data:image/"):
header, separator, encoded=uri.partition(",")
if not separator or ";base64" not in header: raise SystemExit("Unsupported image data URI")
if encoded:
raw=base64.b64decode(encoded,validate=True)
elif uri:
uri=urljoin("https://api.ailoot.ai",uri)
parsed=urlsplit(uri)
if parsed.scheme!="https" or not parsed.netloc or parsed.username or parsed.password:
raise SystemExit("Invalid returned image URL")
owned=parsed.netloc=="api.ailoot.ai" and parsed.path.startswith("/v1/media/assets/") and parsed.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",uri]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
temporary=Path(f"image-{index}.bin")
subprocess.run(args+["-o",str(temporary)],check=True)
raw=temporary.read_bytes()
temporary.unlink()
else: raise SystemExit("Image has neither bytes nor URL")
if not raw: raise SystemExit("Empty image result")
ext="png" if raw.startswith(b"\x89PNG") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "svg" if raw.lstrip().startswith((b"<svg",b"<?xml")) else "bin"
Path(f"image-{index}.{ext}").write_bytes(raw)
print("Every returned image saved; complete response metadata retained")
save_images(json.loads(Path("result.json").read_text())["data"])
PY_RESULT
Recevoir et enregistrer les résultats
Ailoot Ultra · Génération d’images
Téléchargez chaque image renvoyée ou enregistrez son contenu Base64
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Autres lectures de contenu
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Conserver tous les résultats terminés
Enregistrez chaque image terminée ; récupérez chaque URL renvoyée ou décodez son contenu Base64.
Conservez la réponse complète et les en-têtes, chaque sortie effective, les identifiants initialement renvoyés et tous les champs d’utilisation. Récupérez l’opération d’origine sans soumettre à nouveau sa création.
Si la réponse d’origine doit être vérifiée
Conservez le X-Client-Request-ID renvoyé pour le rapprochement. Consultez uniquement les valeurs task_id/asset_id effectivement renvoyées ou votre bibliothèque multimédia ; ne construisez jamais une URL de tâche à partir de l’identifiant de l’opération et ne soumettez jamais à nouveau la création.
Champs de la réponse
| Champ | Type |
|---|---|
Champcreated | Type |
Champdata[].url | Type |
Champdata[].b64_json | Type |
Champusage | Type |
Alias
Alias du modèle
Ailoot Ultra microsoft/mai-image-2.5
Alias des chemins de méthode
/v1/images
ID d’appel associés
FAQ · Microsoft AI: MAI-Image-2.5
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/images/generations·microsoft/mai-image-2.5:text,image→image- Quels champs la requête utilise-t-elle ?
POST /v1/images/generations·microsoft/mai-image-2.5:model,prompt,aspect_ratio,n,input_references,provider- Quelles limites s’appliquent ?
POST /v1/images/generations·microsoft/mai-image-2.5:n.minimum:1;n.maximum:1