Aller au contenu principal

Face Swap est le face swap d’image de SpicyAPI. Il ne transfère que les traits du visage d’une photo de référence sur une image cible, qui garde sa forme de tête, ses cheveux, sa pose et son arrière-plan. Deux URL d’image, seed facultative, pas de prompt.

À partir de $0.013/image

Atelier

Entrée

Édition d’image
1/1

Déposez des fichiers ou des liens de médias, collez ou parcourez · 1 fichier · 10 Mo max. · JPG · PNG · WEBP

  • 1
1 / 1 fichiers
L’image que l’on modifie. La forme de crâne, la coiffure, la pose, la tenue et l’arrière-plan de cette personne sont préservés — seuls ses traits de visage sont remplacés. 1 caractères minimum
1/1

Déposez des fichiers ou des liens de médias, collez ou parcourez · 1 fichier · 10 Mo max. · JPG · PNG · WEBP

  • 1
1 / 1 fichiers
L’image qui fournit les traits du visage. Seul le visage est prélevé, pas la forme du crâne ni les cheveux. Choisissez-la éclairée à peu près depuis la même direction que la cible. 1 caractères minimum
Correspondance des visages0/10
Pour les photos de groupe : indiquez quel visage de la référence va sur quel visage de la cible, une paire par entrée, visages numérotés à partir de 0 dans l’ordre de détection. Sans cette liste, un seul visage est échangé. Sans effet sur le prix. 10 éléments maximum
Style
realisticbeautifylossless
Finition du visage échangé : realistic (par défaut) garde le teint et le grain naturels, beautify lisse et éclaircit la peau, lossless conserve le plus de détails du visage. Sans effet sur le prix.
Améliorer le visage
Applique une passe d’amélioration au visage échangé pour lui donner une résolution plus élevée. Désactivé par défaut. Sans effet sur le prix.
Seed
Réutilisez une seed pour comparer deux appels sur la même paire d’images à partir d’un tirage identique ; laissez-la vide ou à 0 pour un tirage aléatoire à chaque fois. C’est un outil de comparaison, pas une garantie de résultat identique. pas inférieur à 0 · pas supérieur à 2147483647
Filtre de sécuritéDésactivé

SpicyAPI n’applique aucun filtre de sécurité à ce modèle. Votre prompt et vos médias sont transmis tels quels, et c’est le modèle lui-même qui décide du résultat.

Nous vérifions votre compte avant d’activer l’envoi et le calcul du prix.

Sortie

Prêt pour une nouvelle exécution
silver-bob-recastRendu d’exemple

Modèles liés et tâches suivantes

Le modèle que vous cherchez n’est pas là ?

Dites-nous lequel ajouter et à quoi il vous servira. Les demandes vont directement à l’équipe qui décide des prochains modèles.

Un schéma strict à trois champs, une image en retour

L’API d’édition de Face Swap prend une image cible dans image_url et un visage à transférer dans reference_image_url, puis renvoie une image où les traits du visage ont été déplacés. seed est le seul autre champ accepté par le schéma, et tout le reste dans le corps de la requête échoue à la validation. Chaque champ image accepte une URL HTTPS publique, un URI de fichier téléversé ou un URI de données inline.

Ouvrir le Playground
Un schéma strict à trois champs, une image en retour
Champs obligatoires
image_url (la cible) et reference_image_url (le visage)
Champ facultatif
seed, un entier de 0 à 2 147 483 647
Comment transmettre les images
URL HTTPS publique, URI de fichier téléversé ou URI de données inline
Formats acceptés
JPEG, PNG ou WebP pour chacun des deux champs image
Délai de la tâche
1 800 secondes, au-delà desquelles la tâche expire
Facturation
Par image produite, un seul palier de prix, aucune variante à choisir
Validation
Un champ inconnu arrête la requête avant qu’elle ne devienne une tâcheLe schéma nomme trois champs et fixe additionalProperties à false ; une clé oubliée d’un autre modèle (une valeur d’intensité, une chaîne de prompt) revient donc en erreur 400 en nommant le champ fautif. Rien n’est mis en file d’attente, et rien n’est silencieusement ignoré au passage.
Seed
seed couvre toute la plage signée sur 32 bitsTout entier de 0 à 2 147 483 647 est accepté. Réutiliser la même valeur sur la même paire d’images stabilise le tirage assez pour comparer deux exécutions entre elles ; ce n’est pas une promesse que les deux images reviendront identiques. Omettre le champ tire une valeur aléatoire à chaque appel.
Délai
1 800 secondes est le plafond, pas l’attente attendueChaque tâche porte un délai de 1 800 secondes après son acceptation, indiqué sur l’enregistrement de la tâche sous deadlineAt. Une tâche qui l’atteint se termine en expired plutôt que de renvoyer une image. Calibrez la boucle de sondage sur ce chiffre plutôt que sur une estimation du temps de traitement d’une paire de photos.

Ce que fait bien l’API Face Swap

Tout le corps de la requête tient en trois clés

Tout le corps de la requête tient en trois clés

image_url et reference_image_url sont obligatoires, seed est facultatif, et c’est toute la liste. Il n’y a aucun curseur d’intensité à régler ni de zone à peindre, si bien que la même forme de requête sert aussi bien un portrait en studio qu’un plan en pied, et un traitement par lots n’a que deux URL à faire varier par tâche.

Le format est indépendant entre les deux images

Le format est indépendant entre les deux images

image_url et reference_image_url acceptent chacun JPEG, PNG ou WebP de manière indépendante, si bien qu’une cible en WebP avec un visage de référence en JPEG est tout aussi valide qu’une paire assortie, sans conversion préalable d’aucun des deux fichiers. La manière dont chaque champ est transmis est elle aussi indépendante.

  • Un champ image accepte un lien, un envoi ou des octets inline

    Un lien HTTPS public ne demande aucun appel supplémentaire. Un fichier peut aussi être téléversé sur la plateforme au préalable, via un ticket d’envoi puis une validation, avant d’être référencé par l’URI renvoyé. De petites images peuvent voyager en inline sous forme d’URI de données, jusqu’à 1 048 576 octets décodés et 8 192 pixels par côté.

  • Une tâche, une image

    Une tâche terminée expose un seul actif image depuis le stockage de la plateforme, et le schéma n’a aucun champ de compte ou de lot pour en demander davantage. Dix paires de photos donnent dix tâches, chacune avec son propre identifiant et son propre suivi d’état, ce qui évite qu’un échec sur une paire ne bloque les neuf autres.

  • seed prend tout son sens pour les relances

    Omettre seed, ou envoyer 0, tire une nouvelle valeur à chaque appel. Le fixer devient utile quand une exécution ultérieure sur la même paire doit être comparée à une précédente, par exemple après avoir remplacé la photo de référence par une mieux éclairée. Les appels ponctuels peuvent ignorer ce champ sans conséquence.

  • Sondez la tâche, ou laissez-la vous rappeler

    Chaque requête est asynchrone : la création de la tâche répond avec un identifiant à l’état queued. À partir de là, sondez la tâche jusqu’à ce qu’elle se stabilise, ou passez callBackUrl à la création et recevez le résultat final directement. Cette URL doit être en HTTPS public, car la livraison transporte des liens de résultat signés.

À qui Face Swap s’adresse

  • Un schéma assez petit pour coder en dur plutôt que templatiser

    Ingénieurs backend

    Un schéma assez petit pour coder en dur plutôt que templatiser

    Avec seulement image_url, reference_image_url et seed à remplir, le corps de la requête n’a besoin ni de moteur de templates ni de liste de champs dynamique — trois variables mappées directement dans un objet JSON couvrent tous les appels que ce point de terminaison accepte.

  • Tester un rendu sur des prises de vue déjà éclairées et cadrées

    Équipes e-commerce et catalogue

    Tester un rendu sur des prises de vue déjà éclairées et cadrées

    La photographie produit existante (tombé du vêtement, pose, arrière-plan) reste intacte dans image_url pendant que reference_image_url substitue le visage d’un autre modèle, ce qui évite de reprogrammer une séance photo pour vérifier comment une fiche produit rend avec quelqu’un d’autre en couverture.

  • Un visage reporté sur des images générées ailleurs

    Plateformes de personnages et d’avatars

    Un visage reporté sur des images générées ailleurs

    Un ensemble de scènes produites par un autre modèle d’image peut ensuite partager une même identité en exécutant le même reference_image_url sur chaque image tour à tour, une tâche par paire, avec seed fixé quand une relance doit correspondre à un lot précédent.

  • Publier une image sans le vrai visage du sujet

    Flux de confidentialité et d’anonymisation

    Publier une image sans le vrai visage du sujet

    Quand une photo cible peut être publiée mais que l’identité réelle de la personne ne doit pas l’être, reference_image_url peut pointer vers un visage synthétique ou déjà autorisé plutôt que vers le visage d’une seconde personne réelle. Les règles d’autorisation de la FAQ ci-dessous encadrent toujours les deux images.

Comment appeler l’API Face Swap

  1. Décidez comment chaque image atteint le point de terminaison

    image_url et reference_image_url sont des chaînes de caractères ; chacune a donc besoin d’un lien HTTPS public, d’un URI de fichier issu d’un envoi sur la plateforme, ou d’un URI de données transporté inline dans la requête. JPEG, PNG et WebP sont acceptés dans les deux champs.

  2. N’envoyez que les champs définis par le schéma

    Construisez le corps à partir de image_url, reference_image_url et, si besoin, seed. Toute autre clé échoue à la validation puisque additionalProperties vaut false ; retirez donc les champs résiduels d’un autre point de terminaison avant d’envoyer.

  3. Testez une nouvelle intégration avec un devis

    Le point de terminaison de devis applique les mêmes contrôles de validation et d’admission que la création de tâche, sans créer de tâche ni réserver de fonds, et le devis signé qu’il renvoie reste valide cinq minutes. C’est le moyen le plus rapide de confirmer qu’un corps de requête est bien formé.

  4. Envoyez, puis sondez ou recevez le callback

    Envoyez la requête et conservez l’identifiant de tâche renvoyé. Sondez jusqu’à ce que la tâche atteigne un état final, ou enregistrez callBackUrl et attendez la livraison. Une Idempotency-Key fait qu’une relance renvoie la tâche d’origine plutôt que d’en créer une seconde.

  5. Récupérez l’unique image produite

    Une tâche réussie expose un seul actif image servi depuis le stockage de la plateforme. Il n’y a aucun champ de compte, donc plus de sorties signifie plus de tâches : une par paire cible-référence, chacune sondée et facturée pour elle-même.

Exemples travaillés avec Face Swap

  • Une reprise de produit le jour même

    Un commerçant dispose déjà d’une photo produit parfaitement éclairée d’un premier modèle et a besoin de la même prise de vue avec un second modèle, autorisé, à la place. image_url reste la photographie d’origine et reference_image_url pointe vers la photo du second modèle ; la tâche renvoie une image où la pose, le vêtement et l’éclairage restent intacts.

  • Un lot de dix images d’avatar partageant une identité

    Dix images cibles générées séparément par un modèle d’image reçoivent tour à tour le même reference_image_url — dix tâches, un visage partagé. Fixer une seule valeur de seed sur tout le lot garde la relance d’une image comparable à son premier passage.

  • Un traitement par lots qui survit à une connexion coupée

    Chaque paire part avec une Idempotency-Key dérivée des deux identifiants source. Quand une connexion se coupe en cours d’envoi et que le traitement relance l’appel, la clé renvoie la tâche d’origine plutôt que d’en ouvrir une seconde, si bien qu’un lot relancé ne paie pas deux fois pour une paire déjà envoyée.

Questions sur l’API Face Swap

Il n’y a aucun prompt à rédiger, l’essentiel du travail d’intégration porte donc sur les entrées et la tuyauterie. Décidez tôt comment les images atteindront le point de terminaison : un lien HTTPS ne demande aucun appel supplémentaire, un envoi demande un ticket puis une validation, et un URI de données doit rester sous 1 048 576 octets décodés. Faites passer le premier corps de requête par un devis avant de dépenser un appel réel, conservez seed pour les relances que vous prévoyez de comparer, et envoyez une Idempotency-Key à chaque création.

Modèles de cette série4

Modèles image3