Aller au contenu principal

Créer une fonction de sosie de célébrité à partir d'un portrait, sans inventer de score de ressemblance

Look-Alike coûte 0,05 $ par portrait et renvoie une image générée, sans nom ni score. Comment la vérifier et gérer le consentement avant de la partager.

Auteur
Lydia
Publié
Lecture
9 min de lecture
Mis à jour
Illustration éditoriale d'une séance portrait : une femme adulte aux cheveux courts auburn, en turquoise, est assise devant un appareil photo sur trépied, tandis qu'un photographe adulte règle une softbox sur le côté ; ce n'est pas un résultat Look-Alike.

Celebrity Look-Alike (look-alike-v1) transforme un portrait en une image générée de sosie de célébrité, pour 0,05 $ par requête. La réponse est uniquement une image : aucun champ d'identifiant de célébrité, aucun classement, aucun score de similarité. L'image elle-même peut être une mise en page à deux volets avec un titre imprimé, un nom de célébrité et une signature de style manuscrit, et le lettrage peut sortir déformé. Concevez la carte de partage en conséquence, et ne présentez jamais le nom comme une identification vérifiée.

Look-Alike convient à une fonction de divertissement volontaire : l'utilisateur envoie un selfie et reçoit une image partageable. Il n'y a ni prompt, ni sélecteur de personne cible, ni réglage d'intensité ; pour un changement de tenue dirigé ou un personnage fictif récurrent, utilisez un éditeur d'images.

Choisir le bon type d'API « sosie »

La plupart des outils de sosie sont en réalité l'une de deux autres choses. Les services et projets open source de reconnaissance faciale convertissent un visage en vecteur, interrogent une base de célébrités et renvoient des noms avec des scores. Les sites grand public affichent des pourcentages du type « 92 % de ressemblance » sans méthode derrière. Look-Alike ne fait ni l'un ni l'autre.

Vous voulezUtilisez
Une image de sosie générée et partageable à partir d'une photoLook-Alike
Des noms de célébrités classés ou un chiffre de similaritéUn service de reconnaissance ou votre propre recherche par embeddings sur une base que vous avez le droit de détenir ; Look-Alike ne renvoie ni l'un ni l'autre
Le visage d'une personne placé sur une image cible de votre choixUn endpoint de face swap

Ce que l'endpoint accepte

ÉlémentContrat actuel
ID du modèlespicyapi/look-alike-v1/edit
EntréeUn seul image_url : JPG, PNG, WEBP ou GIF, jusqu'à 10 Mo
Prix0,05 $ par requête, facturé même si le résultat ne vous plaît pas
Non disponiblePrompt, célébrité cible, seed, taille, intensité, similarité
ConservationLes images sources sont supprimées après 1 jour, les résultats après 14
Deux portraits de studio côte à côte d'hommes adultes en chemise blanche, sous le titre « Your Celebrity Look-Alike » et un nom de célébrité imprimé ; le portrait de droite porte aussi une signature de style manuscrit du même nom

Un exemple de résultat Look-Alike tiré de la page du modèle : l'image renvoyée est un collage à deux volets avec un titre et le nom d'une personne réelle imprimé dessus ; une mise en page qui suppose un simple portrait propre se brisera.

L'exemple de la page du modèle est un collage à deux volets avec nom imprimé et signature : attendez-vous à du lettrage et prévoyez-le. Prévisualisez l'export réel à la taille de votre carte, gardez ses proportions (l'étirer dans un carré déforme les visages), et si vous recadrez pour retirer le lettrage, le visage restant n'en est pas pour autant une correspondance vérifiée.

Préparer la photo source

La page du modèle liste les cas d'échec : photos de groupe, profils, lunettes de soleil, mains ou cheveux devant le visage, flou de mouvement et visages très petits dégradent la correspondance ou font échouer l'appel. Utilisez un visage unique, bien éclairé, à peu près de face, qui occupe une part raisonnable du cadre, avec les deux yeux et la ligne des cheveux visibles. Appliquez l'orientation et le recadrage avant l'envoi : la miniature d'une galerie peut ignorer des métadonnées de rotation que vos octets envoyés conservent. Agrandir un visage minuscule d'une photo de groupe n'ajoute aucun détail ; demandez plutôt une nouvelle photo.

Une femme adulte fictive aux cheveux courts auburn, en blouse turquoise, photographiée à peu près de face sur un fond uni, les deux yeux visibles

Illustration, pas un résultat Look-Alike : un portrait d'adulte à peu près de face montre un cadrage d'entrée lisible.

Essayer d'abord dans le Playground

  1. Ouvrez la page Look-Alike et restez sur l'onglet Playground, en vue Form. Connectez-vous avec un compte approvisionné pour lancer.
  2. Déposez le portrait d'un adulte consentant dans Input image (JPG, PNG, WEBP ou GIF, jusqu'à 10 Mo), ou collez un lien direct avec Asset URL. Il n'y a rien d'autre à régler.
  3. Lancez, puis ouvrez l'image complète renvoyée et vérifiez-la comme décrit plus bas.

Essayez ici votre photo source la plus difficile avant d'écrire du code : si la correspondance est mauvaise dans le Playground, elle le sera aussi via l'API, et la solution est une meilleure photo.

Puis l'appeler depuis le code

Installez le SDK Python (pip install spicyapi), définissez SPICY_API_KEY dans l'environnement de votre serveur, puis exécutez :

python
import urllib.request
import uuid

from spicyapi import SpicyClient, output_assets

client = SpicyClient()  # reads SPICY_API_KEY from the environment

photo = client.upload_file("./authorized-adult-portrait.jpg")  # becomes a spicy:// URI

task = client.create_task(
    model="spicyapi/look-alike-v1/edit",
    input_data={"image_url": photo["uri"]},
    idempotency_key=str(uuid.uuid4()),  # new key per new request; reuse only to retry the same one
)

final = client.wait_for_terminal(task["taskId"])
if final["state"] != "succeeded":
    raise RuntimeError(f"Task {task['taskId']} ended as {final['state']}")

url = output_assets(final)[0]["url"]
# some script clients get 403 without a User-Agent
request = urllib.request.Request(url, headers={"User-Agent": "look-alike-example/1.0"})
with urllib.request.urlopen(request) as response, open("look-alike.webp", "wb") as out:
    out.write(response.read())

Envoyez uniquement image_url ; les propriétés supplémentaires, comme le nom d’une célébrité, sont refusées. Les téléversements, l’attente et les nouvelles tentatives sont décrits dans le guide des tâches et la référence du SDK Python. Pour les webhooks, consultez le guide comparant polling et webhooks. Les résultats sont supprimés après 14 jours : copiez donc l’image dans votre propre stockage si l’utilisateur souhaite la conserver.

Ou laisser un Agent l'exécuter

Quand un assistant doit lancer les requêtes, la CLI et le serveur MCP affichent le prix et demandent votre accord avant un appel payant ; le Skill n'ajoute que des instructions.

  • CLI. spicyapi exécute une tâche depuis un terminal (npx @spicyapi/cli fonctionne sans installation). Mettez {"image_url": "spicy://..."} dans input.json, avec l'URI affichée par l'envoi :

``bash spicyapi files upload ./authorized-adult-portrait.jpg spicyapi tasks create --model spicyapi/look-alike-v1/edit --input-file input.json --wait ``

  • Serveur MCP. Ajoutez le serveur MCP à votre assistant, puis demandez : « Run Look-Alike on ./authorized-adult-portrait.jpg. » Il appelle spicyapi_upload_file, puis spicyapi_task_create, qui s'arrête pour que vous confirmiez le prix, puis spicyapi_task_wait.
  • Skill. npx skills add spicyapi-ai/spicy-skill installe l'Agent Skill, qui fait lire à un assistant de code le schéma du modèle en direct au lieu de deviner les champs. Il ne peut pas exécuter de tâches seul : utilisez-le avec la CLI ou le MCP.

Vérifier le résultat avant la carte de partage

Ouvrez l'image renvoyée en entier, pas un recadrage du visage. Cherchez les volets en trop, les titres, les noms réels, les signatures, les visages supplémentaires et un âge apparent modifié. Étiquetez le résultat Generated look-alike portrait (portrait de sosie généré). Si vous ne voulez pas afficher le nom, recadrez ou masquez le lettrage ; le visage restant n'est toujours pas une correspondance vérifiée. Ne mettez pas « 93 % de ressemblance » ou « identité de célébrité vérifiée » à côté, et n'affichez pas un nom extrait de l'image par un autre modèle comme si Look-Alike l'avait évalué. Le lettrage intégré est du contenu généré et peut être faux.

Une femme adulte en turquoise tient un tirage portrait pendant qu'un photographe adulte en bleu marine le désigne, avec d'autres tirages de paysages sur le bureau

Illustration, pas un résultat Look-Alike : examinez l'image entière et tout ce qui entoure le visage avant de choisir un export.

Si le participant n'aime pas l'image, proposez de la supprimer ou d'essayer une autre photo. Rien ne dirige le résultat vers une célébrité choisie : une nouvelle tentative est un nouveau candidat à 0,05 $, pas un affinage.

ProblèmeAction suivante
Requête rejetéeRetirez les champs prompt, seed, taille et nom ; n'envoyez que image_url.
Source introuvableRemplacez une page de connexion, une URL expirée ou une réponse HTML par une image accessible ou une référence spicy://.
Visage peu net ou mauvaise personne associéeUtilisez un recadrage à visage unique issu d'un original suffisant, ou demandez un portrait plus net.
Nom ou signature dans l'image que vous ne voulez pas montrerSuspendez le partage et changez la présentation ; le nom n'est pas un champ de réponse que vous pouvez demander ou retirer.
Le participant veut un personnage ou une tenue précisUtilisez plutôt un éditeur d'images acceptant des images de référence.
Le téléchargement échoue pour une tâche terminéeRelancez le téléchargement ; ne créez pas de nouvelle requête.

Consentement et partage

L'entrée est toujours le visage d'une personne réelle : traitez donc la fonction comme de la reconnaissance faciale pour évaluer vos obligations légales. Les données biométriques sont régies séparément dans l'UE et dans certains États américains ; le BIPA de l'Illinois, par exemple, exige un avis écrit et un consentement éclairé avant la collecte d'identifiants biométriques. Utilisez des photos d'adultes qui ont sciemment accepté cet usage, jamais de photos de personnalités publiques ni d'images prises ailleurs, et n'utilisez pas Look-Alike pour l'identification, la vérification, la surveillance ou la constitution d'une base de visages. Considérez l'autorisation de générer comme distincte de l'autorisation de publier la source ou le résultat.

Look-Alike fonctionne sans filtre de sécurité : votre produit doit donc appliquer ses propres règles d'âge et de contenu. N'utilisez pas de portraits de personnes réelles pour produire du contenu sexuel, intime ou diffamatoire, et ne présentez pas le résultat comme une affirmation sur une personne réelle. Un portrait en buste d'un adulte entièrement habillé est l'entrée par défaut la plus sûre pour une fonction de divertissement publique.

Construisez un parcours étroit : un aperçu privé de la source, un état de traitement, le résultat complet et une action explicite d'enregistrement ou de partage. Ne publiez pas automatiquement à la fin de la génération.

Aussi en English · 日本語 · 한국어 · Deutsch · Español · Português (Brasil) · Русский · Italiano · Polski