Google Virtual Try-On
google-virtual-try-on
Il suffit de téléverser une photo en pied pour générer un rendu de l'essayage du vêtement choisi ; grâce à une technologie de diffusion, les plis du tissu et les jeux d'ombre et de lumière sont simulés afin d'aider à décider d'un achat de vêtement en ligne
Essayer google-virtual-try-on
Entrée
Créations
Voir toutes les créationsSortie
imageTarifs
google-virtual-try-on per image
| Prix unitaire | $0.1075 |
|---|
Présentation
Google Virtual Try-On est un modèle de génération image-à-image : il prend en entrée une photo de personne et une image de vêtement produit, et produit une image montrant cette personne portant le vêtement. Il convient aux applications de e-commerce de mode, de recommandation de tenues et d'aide à la décision d'achat en ligne. Les développeurs transmettent les URL des deux images via l'interface unifiée HiAPI.ai et obtiennent une image composite, utilisable pour les pages de détail produit, les aperçus d'essayage ou les références de tenues, ce qui réduit la difficulté pour l'utilisateur d'évaluer le rendu porté.
Points clés
- Entrée à deux images, rendu porté généré directement — il suffit de fournir deux liens (image de personne et image de vêtement produit) ; le modèle synthétise la scène où la personne porte le vêtement, sans annotation ni masque supplémentaires.
- Préservation des plis et du tombé du tissu — la génération simule l'ajustement, les plis et les effets de lumière sur le corps, pour un aperçu plus proche du rendu réel.
- Interface simple, adaptée à l'intégration en masse — très peu de paramètres, seulement deux adresses d'images, ce qui facilite l'intégration aux flux existants (détail produit, recommandation de tenues).
Capacités
Synthèse d'essayage pilotée par deux images : reçoit deux adresses http(s) — photo de personne et image de vêtement produit — et produit une image de cette personne portant le vêtement, adaptée à la génération d'aperçus d'essayage à la demande.
Restitution des détails du vêtement : le résultat reflète le tombé, les plis et les effets de lumière du vêtement sur le corps, pour montrer à l'utilisateur un rendu porté proche du réel.
Sortie d'une seule image par requête : chaque requête renvoie exactement une image ; le paramètre de quantité ne peut valoir que 1, ce qui facilite la facturation par requête et la gestion des résultats.
Entrée d'images par lien : l'entrée n'accepte que des adresses d'images http(s), sans flux de fichier à téléverser, ce qui simplifie l'intégration au stockage d'images et au CDN existants.
Cas d'usage
- E-commerce de mode : aperçu d'essayage sur la page produit — l'utilisateur téléverse une photo en pied sur la page produit et obtient en temps réel une image de lui portant l'article, pour l'aider à juger si le modèle lui convient.
- Recommandation de tenues : générer un rendu porté pour un article recommandé — associer le vêtement recommandé à la photo de l'utilisateur pour produire une image d'essayage servant de visuel de carte de tenue, et renforcer la perception de la recommandation.
- Partage social : générer une image de tenue à enregistrer — produire à partir du résultat d'essayage une image de référence de tenue à enregistrer ou à partager, pour les échanges de style et la diffusion de contenu.
Limites et conseils de sélection
Le modèle génère uniquement une image de rendu porté : il ne peut pas indiquer si la taille convient, ni remplacer l'expérience réelle du tissu et de la coupe. Il exige une photo de personne en pied et une image nette du vêtement produit ; la qualité des entrées influence directement le résultat. Il n'est pas adapté en l'absence de photo de personne ou d'image produit. Pour des conseils de taille, des rendus multi-angles ou un essayage de niveau vidéo, il faut choisir un autre modèle offrant ces capacités. Chaque requête ne produit qu'une seule image.
Nouveautés
Voir le journal des modifications →- Mise à jour des prix Ajustement tarifaire de google-virtual-try-on
- Changement de paramètre google-virtual-try-on : num_images fixé à 1
- Nouveau modèle Nouveau modèle : google-virtual-try-on (essayage virtuel Google, POST /v1/tasks). Transmettez per…
Questions fréquentes
Voir toutes les questions →-
Quelles sont les entrées requises par Google Virtual Try-On ?
Une photo d'une personne et une image d'un vêtement, les deux sont obligatoires, aucune invite n'est nécessaire.
-
Quel type de photo de personne donne le meilleur résultat ?
Les photos d'une seule personne, avec les principales parties du corps bien visibles et sans obstruction importante, donnent le meilleur résultat ; une pose debout de face ou légèrement de trois-quarts est la plus stable.
-
Quelles sont les exigences pour les photos de vêtements ?
Une photo à plat ou suspendue convient ; l'effet est meilleur lorsque le vêtement est complet, le fond propre et qu'aucune autre personne n'apparaît.
-
Combien d'images peut-on générer à la fois ?
1 par requête, num_images est fixé à 1. Pour obtenir plusieurs variantes, vous pouvez soumettre plusieurs fois les mêmes entrées ; les détails des résultats varieront légèrement.
Créer une tâche de génération
https://api.hiapi.ai/v1/tasks En-têtes
AuthorizationstringRequisClé API du compte. Requise sur chaque requête. Exemple : Bearer YOUR_HIAPI_API_KEY. Obtenir une clé API
Content-TypestringOptionnelLe corps de la requête est toujours analysé en JSON ; s'il est envoyé, seul application/json (charset facultatif) est accepté — toute autre valeur renvoie 415. Exemple : application/json.
Idempotency-KeystringOptionnelClé d'idempotence, jusqu'à 255 octets. Les reprises avec la même clé du même compte ne créent la tâche qu'une seule fois ; les rejeux renvoient le taskId d'origine.
En cas de timeout réseau ou de relance automatique du client, la même clé ne crée la tâche qu'une seule fois, sans double facturation (portée = le compte de la clé API). Utilisez un identifiant métier unique (ex. "order-42") ; les rejeux renvoient le taskId d'origine et les clés expirent 24 h après la première requête. La matrice complète des scénarios est dans la présentation de l'API asynchrone unifiée.
Corps
modelstringRequisValeur fixe actuelle : google-virtual-try-on
routestringOptionnelValeur fixe actuelle : default
inputobjectRequis
Objet de paramètres métier pour google-virtual-try-on et la route default — voir le tableau des paramètres ci-dessous.
num_imagesintegerOptionnelDéfaut: 1min 1max 1Nombre d'images à générer par requête, doit être 1, valeur par défaut 1.
person_image_urlstringRequisminLength 1pattern ^https?://URL http(s) de la photo du mannequin, utilisée pour désigner le sujet portant le vêtement essayé.
product_image_urlstringRequisminLength 1pattern ^https?://URL http(s) de l'image du produit vestimentaire à essayer ; le résultat de l'essayage sera généré à partir de ce vêtement.
callbackobjectOptionnel
Configuration de notification d'état terminal. Sans elle, aucun callback — interrogez la tâche vous-même.
Fournissez callback.url à la création et HiAPI envoie un POST à votre service à l'état terminal — plus besoin de polling. Le corps du rappel reprend la structure du détail de tâche ; vérification de signature, relances et idempotence sont décrits dans la présentation de l'API asynchrone unifiée.
urlstringRequisObligatoire si callback est présent. Un POST est envoyé vers cette URL à l'état terminal ; doit être une URL http(s) valide.
whenstringOptionnelDéfaut: "final"Seul final est pris en charge pour l'instant — notifié sur success et fail.
finalstoragestringOptionnelDéfaut: "temp"Niveau de stockage des artefacts : temp (par défaut, ~7 jours) ou persistent (long terme, facturé au volume). Solde insuffisant ou dépassement de limite ⇒ rétrogradation silencieuse en temp ; le niveau effectif figure dans la réponse de détail.
temppersistentExemples de requête
# Soumet une tâche asynchrone ; renvoie immédiatement un taskId (n'attend pas la génération)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google-virtual-try-on",
"input": {
"num_images": 1,
"person_image_url": "…",
"product_image_url": "…"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "google-virtual-try-on",
input: {
"num_images": 1,
"person_image_url": "…",
"product_image_url": "…"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "google-virtual-try-on",
"input": {
"num_images": 1,
"person_image_url": "…",
"product_image_url": "…"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtenir le détail de la tâche
https://api.hiapi.ai/v1/tasks/:id Champs de réponse
taskIdstringRequisIdentifiant de tâche, toujours préfixé tk-hiapi-.
modelstringRequisNom complet résolu du modèle. Les tâches envoyées avec le paramètre route renvoient base@route (ex. gpt-image-2/text-to-image@ext) ; sinon identique au nom fourni.
routestringOptionnelPrésent uniquement si le paramètre route explicite a été utilisé ; renvoie la valeur soumise.
statusstringRequisStatut de la tâche.
queued En file, pas encore démarrée.
handling En cours de traitement.
archiving Traitement terminé, préparation des artefacts.
success Terminal : terminé, artefacts disponibles (output renvoyé).
fail Terminal : échec (error renvoyé).
Après soumission, suivez status : success et fail sont terminaux, le reste non terminal. Interrogez toutes les 1–3 s jusqu'à l'état terminal. En cas de succès, téléchargez les artefacts via output[].url et transférez-les avant expireAt ; pour une conservation longue durée, indiquez storage: "persistent" à la création.
creatednumberRequisDate de création de la tâche (secondes Unix).
completednumberRequisSecondes Unix de l'état terminal ; 0 tant que non terminal.
outputarrayOptionnel
Présent uniquement si status == success. Liste d'artefacts — toujours un tableau ; une tâche peut renvoyer plusieurs types à la fois (ex. video + first_frame).
Array [ object ]
Éléments du tableau
urlstringRequisURL de l'artefact, téléchargeable directement.
typestringRequisValeurs possibles actuelles : video, image, audio, first_frame, last_frame, thumbnail ; d'autres pourront s'ajouter.
expireAtnumberRequisSecondes Unix de disponibilité de l'artefact ; téléchargez ou transférez avant l'expiration.
errorobjectOptionnel
Présent uniquement si status == fail.
codestringRequisCode d'erreur métier.
messagestringRequisDescription de l'erreur.
Exemples de réponse
Succès
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En cours (non terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Échec
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Articles
Voir tous les articles →-
Tutoriel
Tutoriel pour kandinsky-6.0-pro/image-to-video sur HiAPI : curl + Python
Lancer une requête image-vers-vidéo exploitable sur HiAPI : de l'envoi de la première image à l'interrogation asynchrone jusqu'au téléchargement final
-
Tutoriel
Comment appeler hailuo-2.3/text-to-video via l'API HiAPI : curl, Python et exemples de requêtes exécutables
-
Tutoriel
Comment utiliser kling-4.0/text-to-video via l'API HiAPI : curl, Python et un exemple de requête fonctionnel
Guide pratique pour les développeurs : prompts cinématographiques, audio synchronisé, interrogation asynchrone et téléchargement des sorties
-
Tutoriel
recraft-v4.1-flash génération d'images texte-à-image en pratique : 5 scénarios métier à forte valeur et points d'intégration clés
À partir d'un coût de 0,01 $ par image, planifier le déploiement de la génération d'images dans de vrais contextes métier
-
Tutoriel
Utiliser Kandinsky 6.0 Pro texte-vers-vidéo sur HiAPI : tutoriel curl et Python
Démonstration pratique axée sur la requête : construire l'appel du prompt au clip vidéo, soumettre la requête, interroger l'état d'achèvement et télécharger le résultat
-
Comparatif et évaluation
Comparatif transversal de hailuo-2.3-fast/image-to-video : comment choisir un modèle image-to-video et les points clés de migration
-
Tutoriel
Comment appeler hailuo-2.3-fast/image-to-video via l'API HiAPI : curl et Python en pratique
La première requête exploitable du palier image-vers-vidéo rapide et économique — de l'ID du modèle au téléchargement du MP4
-
Tutoriel
Comment appeler kling-4.0/image-to-video sur HiAPI : curl, Python et interrogation périodique
-
Comparatif et évaluation
Comparatif horizontal de Recraft v4.1 Flash en génération d'images à partir de texte : guide de sélection et de migration pour les développeurs
Avec un coût de 0,01 $ par image et ses capacités de génération pure à partir de texte, déterminez s'il convient à votre pipeline de génération d'images
Modèles associés
Voir tous les modèles →Même type
-
Ideogram V4.5 Ideogram $0.011 /image -
Recraft V4.1 Recraft $0.010 /image -
Seedream 4.5 ByteDance $0.045 /image -
Grok Imagine Quality xAI $0.070 /image -
FASHN Tryon v1.6 FASHN $0.107 /image -
Nano Banana Pro Google $0.057 /image -
FIBO 1.5 Bria $0.058 /image -
FLUX.1 Fill Pro Black Forest Labs $0.071 /image -
Imagen 4 Google $0.030 /image -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /image -
FLUX.2 Black Forest Labs $0.035 /image -
FLUX.1 Kontext Max Black Forest Labs $0.071 /image
Même fournisseur
-
Nano Banana 2 Google $0.036 /image -
Veo 3.1 Fast Google $0.170 /seconde -
Nano Banana 2 Lite Google $0.033 /image -
Imagen 4 Google $0.030 /image -
Gemini Omni 1.1 Flash Google $0.450 /vidéo -
Lyria 3.5 Google $0.090 /morceau -
Nano Banana Pro Google $0.057 /image -
Nano Banana Google $0.021 /image -
Lyria 3 Pro Google $0.140 /morceau -
Veo 3.1 Google $0.290 /seconde -
Gemini Omni Google -- -
Gemini 3.1 Flash TTS Google --











