Skip to content

Pourquoi un prompt ne suffit pas à créer une identité visuelle cohérente

Note de rechercheReliable AI SystemsLucas Jahier14 septembre 202611 min read

Résumé

Les modèles de diffusion répondent efficacement à de nombreuses instructions textuelles, mais cette capacité ne garantit pas la persistance d'une identité visuelle entre plusieurs générations. Nous étudions ici la différence entre décrire un personnage et l'identifier. Une première expérience compare deux prompts, l'un sommaire et l'autre détaillé, sur douze seeds et à paramètres de génération constants. Le prompt détaillé stabilise plusieurs attributs saillants — couleur des cheveux, maquillage, teint et esthétique générale — sans stabiliser avec la même efficacité la géométrie du visage. Dans une première lecture exploratoire, aucune des onze variantes de chaque série n'a pu être classée sans hésitation comme la même personne que l'image prise pour ancre. Ces résultats suggèrent qu'un prompt peut définir un type visuel cohérent sans constituer une mémoire d'identité. Nous présentons le protocole permettant de reproduire cette expérience avec mlx-diffusion-lab, puis les comparaisons encore nécessaires pour évaluer l'apport d'un LoRA et d'une référence visuelle.

Mots-clés : diffusion, identité visuelle, prompting, LoRA, reproductibilité, évaluation humaine.

Statut du papier. L'expérience initiale a été exécutée. Sa lecture visuelle doit encore être confirmée humainement. Les résultats relatifs au LoRA, aux références visuelles et à la longueur du prompt ne sont pas encore validés.

1. Introduction

Créer une image convaincante est relativement facile. Produire une série d'images représentant la même personne, dans des vêtements, des décors, des poses et des cadrages différents, est un problème distinct.

Le premier réflexe consiste souvent à enrichir le prompt. On précise l'âge, la forme du visage, la couleur des yeux, la coiffure, le teint, le maquillage et la silhouette. La description finit par ressembler à une fiche d'identité. Pourtant, lorsque la seed change, le modèle ne restitue pas nécessairement la même personne : il produit une autre personne compatible avec cette fiche.

Ce décalage motive notre question de recherche :

Dans quelle mesure l'ajout de caractéristiques physiques à un prompt stabilise-t-il l'identité d'un personnage entre plusieurs générations ?

Deux notions doivent être séparées. La cohérence des attributs désigne la répétition de propriétés explicitement formulées, comme une couleur de cheveux ou un maquillage. La cohérence de l'identité désigne la conservation des relations propres à un même visage : proportions, mâchoire, menton, nez, yeux et âge apparent.

Notre hypothèse est qu'une description détaillée améliore la première sans nécessairement garantir la seconde. Autrement dit, le prompt se comporte comme une instruction, pas comme une clé d'identité.

2. Du texte à l'identité

Une description comme « femme adulte aux cheveux auburn, au visage ovale et aux yeux clairs » définit une région dans l'espace des images possibles. Beaucoup de visages différents peuvent satisfaire ces critères. Ajouter des détails réduit cette région : le modèle peut devenir plus constant sur les cheveux, le maquillage ou la forme générale du visage. Ces attributs ne forment cependant pas une représentation biométrique complète.

La seed ne résout pas ce problème. Elle initialise l'aléa de la génération et permet de rejouer une sortie lorsque toutes les autres entrées restent fixes. Elle ne constitue pas une mémoire du personnage indépendante de la pose, du décor ou du cadrage. Reproductibilité de l'image et stabilité de l'identité sont donc deux propriétés différentes.

Un LoRA propose un autre mécanisme. Au lieu d'énumérer les caractéristiques dans le texte, il adapte les poids du modèle à partir d'un ensemble d'exemples. Il peut ainsi apprendre des relations entre les traits qui sont difficiles à formuler. Cette mémoire apprise peut néanmoins absorber des éléments indésirables du dataset, comme une tenue ou un fond récurrent. Son intérêt doit donc être mesuré comme un compromis entre fidélité identitaire et liberté du prompt.

3. Méthode

3.1. Dispositif expérimental

Notre première expérience comporte deux conditions :

  • a1, une description courte précisant le sujet, les cheveux, le cadrage, le fond et la lumière ;
  • a2, une description détaillée ajoutant la géométrie du visage, les yeux, les sourcils, le nez, les lèvres, le teint, le maquillage, les cheveux et la silhouette.

Chaque condition est générée avec les douze seeds 8001 à 8012, soit 24 images au total. Le modèle, l'encodeur, la résolution, le nombre de steps et les autres paramètres restent constants. La variable indépendante est le niveau de détail du prompt ; la sortie observée est la variation des attributs et de l'identité entre les seeds.

Le choix de douze seeds vise à exposer la distribution des réponses du modèle. Une image isolée permettrait seulement de montrer qu'un résultat satisfaisant est possible, pas qu'il est stable.

3.2. Protocole d'évaluation

Pour chaque condition, l'image produite avec la seed 8001 sert d'ancre. Les onze autres images sont classées dans trois catégories :

  • même identité : les différences restent compatibles avec une autre photographie de la même personne ;
  • doute : plusieurs traits concordent, mais une décision ferme n'est pas possible ;
  • identité différente : la géométrie du visage paraît incompatible avec celle de l'ancre.

L'évaluation porte sur la forme du visage, la mâchoire, le menton, le nez, les yeux, les lèvres et l'âge apparent. Les cheveux, le maquillage, le teint, le cadrage et le fond sont relevés séparément comme attributs demandés. Cette séparation limite le risque de confondre une direction artistique stable avec une identité stable.

La lecture présentée ici est exploratoire, non aveugle et sans mesure d'accord entre évaluateurs. Elle doit être considérée comme une étape de formulation des hypothèses, non comme une validation humaine définitive.

4. Résultats préliminaires

4.1. Classement identitaire

DescriptionMême identitéDouteIdentité différente
Courte (a1)0/113/118/11
Détaillée (a2)0/115/116/11

La description détaillée déplace deux résultats de la catégorie « identité différente » vers la catégorie « doute ». Elle ne produit toutefois aucun cas supplémentaire pouvant être classé sans hésitation comme la même personne que l'ancre.

Compte tenu de la taille de l'échantillon et du caractère exploratoire de la notation, ce tableau décrit la planche observée. Il ne constitue pas une estimation généralisable à tous les modèles ou à toutes les formulations.

4.2. Stabilité des attributs

La condition a2 présente une cohérence visuelle nettement plus forte. La plupart des images conservent des cheveux bordeaux ondulés, une peau claire, un rouge à lèvres sombre, un eye-liner marqué et une esthétique de portrait studio. Le prompt détaillé réduit donc visiblement la dispersion des attributs qu'il nomme.

Cette stabilité crée cependant une illusion possible. Les portraits semblent appartenir au même univers et au même casting, alors que la largeur de la mâchoire, la forme du menton, le nez, l'espacement des yeux, les lèvres et l'âge apparent continuent de varier. Les images convergent vers un type visuel, pas nécessairement vers une personne unique.

4.3. Effet possible sur le cadrage

La condition détaillée demande un portrait serré tout en décrivant la silhouette. Ses résultats sont globalement cadrés plus largement que ceux de la condition courte. Cette observation est compatible avec une concurrence entre instructions, mais l'expérience actuelle ne permet pas d'en établir la cause. Une comparaison dédiée au cadrage est nécessaire avant d'en faire une conclusion.

5. Discussion

5.1. Un type cohérent n'est pas une identité cohérente

Le résultat principal ne réside pas seulement dans la persistance de la dérive. Il tient au contraste entre deux niveaux de cohérence. Visuellement, les images de a2 paraissent beaucoup plus proches les unes des autres que celles de a1. Cette proximité provient surtout de signes faciles à reconnaître : même palette, même coiffure, même maquillage et même traitement photographique.

Lorsque l'examen se déplace vers la géométrie du visage, cette impression s'affaiblit. Le modèle satisfait les propriétés descriptives tout en échantillonnant plusieurs solutions compatibles. Ajouter des adjectifs réduit la diversité sans préserver nécessairement les relations précises entre les traits.

Cette distinction explique pourquoi une série peut sembler cohérente dans une planche d'ambiance tout en échouant lorsqu'un personnage doit être reconnu d'un plan à l'autre.

5.2. Ce que l'expérience permet d'affirmer

Dans la configuration testée, enrichir la description améliore la stabilité des attributs explicitement nommés. En revanche, cette amélioration ne suffit pas à obtenir une identité jugée identique à travers les onze changements de seed.

La formulation reste volontairement circonscrite au protocole. L'expérience ne prouve pas qu'aucun prompt ne puisse jamais maintenir une identité, ni que tous les modèles se comportent de la même manière. Elle montre que, dans ce cas, un prompt canonique détaillé n'a pas transformé une description en mémoire stable.

5.3. Conséquence pour le LoRA

L'étape suivante consiste à exécuter le même sweep avec un profil LoRA. Le témoin et l'expérience doivent partager le même checkpoint, le même encodeur, la même quantification, les mêmes prompts et les mêmes seeds. Seule la pile d'adaptateurs doit changer.

Cette comparaison devra répondre à deux questions distinctes :

  1. davantage de générations représentent-elles clairement la même personne ?
  2. le modèle conserve-t-il sa capacité à suivre les nouveaux vêtements, poses et décors ?

Une meilleure ressemblance accompagnée d'un retour systématique du fond ou de la tenue du dataset ne constituerait pas une amélioration sans réserve. Elle indiquerait que le LoRA mémorise bien une identité, mais aussi des corrélations qui auraient dû rester variables.

6. Limites et travaux complémentaires

La première limite concerne l'évaluation. La catégorie « même personne » reste une appréciation perceptuelle. Une revue humaine en aveugle doit confirmer les classements. Une métrique faciale peut compléter cette lecture, mais une similarité d'embeddings ne constitue pas à elle seule une preuve d'identité.

La deuxième limite concerne la longueur du prompt. Deux formulations ne permettent pas de conclure qu'un prompt toujours plus long se dégrade. Les expériences suivantes ajouteront les mêmes informations par paliers et placeront le bloc identitaire soit au début, soit à la fin. Elles devront distinguer dilution, sensibilité à la position et concurrence entre instructions.

La troisième limite concerne les autres catégories de contrôle. Vêtements, matières, objets et décors seront évalués séparément, sans exclure les capacités connues pour être plus fragiles : comptage, relations gauche-droite et texte dans l'image. Sans ces contrôles négatifs, conclure que « le prompt contrôle bien les objets » reviendrait à sélectionner uniquement les exemples faciles.

Enfin, une référence visuelle nécessite une expérience distincte. Elle n'apporte pas seulement un visage, mais aussi une pose, une lumière, une tenue et un arrière-plan. Son influence sera étudiée en faisant varier image_strength à référence, prompts et seeds fixes. Cette section ne sera présentée comme un résultat qu'après exécution du protocole.

7. Reproduire l'expérience

Le code d'exécution est fourni par mlx-diffusion-lab. Notre sujet, nos prompts complets, notre dataset, notre LoRA et nos résultats bruts restent privés. Le protocole suivant permet de reproduire la méthode avec un autre sujet et un LoRA compatible.

7.1. Définir les deux profils

Créez my-profiles.toml :

[engine.identity-test]
checkpoint = "mlx-community/flux2-klein-4b-4bit"
config = "flux2_klein_4b"
guidance = 1.0
guidance_locked = true
steps = { generate = 4, edit = 8, mask = 8 }
width = 768
height = 1024

[profile.control-4b]
engine = "identity-test"
adapters = []

[profile.identity-4b]
engine = "identity-test"
adapters = [
  { path = "my-subject.safetensors", scale = 1.0 },
]

Si le LoRA exige un encodeur particulier, celui-ci doit être déclaré sur le moteur commun afin que les deux profils l'utilisent. Si un token déclencheur est nécessaire, il doit rester présent dans les prompts des deux campagnes.

7.2. Construire le sweep

Créez my-identity-sweep.json en remplaçant SUBJECT_TOKEN et la description physique :

{
  "profile": "control-4b",
  "width": 768,
  "height": 1024,
  "steps": 4,
  "guidance": 1.0,
  "seeds": [42, 137, 777],
  "common_prompt": "Editorial photograph of SUBJECT_TOKEN, a fictional adult woman aged 35 with a long oval face, high cheekbones, grey-green eyes, straight dark eyebrows, a narrow straight nose, shoulder-length dark auburn hair and natural skin texture.",
  "prompts": [
    { "id": "portrait-front", "prompt": "Head-and-shoulders portrait facing the camera, neutral expression, plain warm-grey background, soft frontal light." },
    { "id": "portrait-three-quarter", "prompt": "Head-and-shoulders three-quarter portrait, composed expression, plain blue-grey background, soft window light." },
    { "id": "office-full-body", "prompt": "Full-length view standing in a modern office, navy suit and white shirt, holding a closed document folder." },
    { "id": "street-walking", "prompt": "Full-length view walking through a city street at blue hour, beige trench coat, natural stride." },
    { "id": "cafe-seated", "prompt": "Waist-up view seated in a quiet cafe, burgundy sweater, hands resting around a white ceramic cup." },
    { "id": "rooftop-sunset", "prompt": "Three-quarter view on a rooftop at sunset, white blazer, light wind moving the hair, city skyline behind her." }
  ]
}

Trois seeds et six situations produisent dix-huit images par profil. Les scènes font varier cadrage, vêtements, décor et action sans modifier la description commune de l'identité.

7.3. Exécuter et examiner

Depuis le dépôt mlx-diffusion-lab :

uv sync --extra dev --extra mflux
export IMAGEGEN_WEIGHTS=/path/to/weights

uv run imagegen-sweep my-identity-sweep.json \
  --catalogue my-profiles.toml \
  --profile control-4b \
  --runner mflux \
  --out runs/identity-control

uv run imagegen-sweep my-identity-sweep.json \
  --catalogue my-profiles.toml \
  --profile identity-4b \
  --runner mflux \
  --out runs/identity-lora

uv run imagegen-sheet runs/identity-control
uv run imagegen-sheet runs/identity-lora

Les manifestes et sidecars permettent de contrôler le profil, le modèle, la seed, les paramètres et la pile d'adaptateurs de chaque sortie. Les planches doivent être examinées dans leur intégralité et, si possible, sans révéler le profil. Compter les réussites et les échecs est plus informatif que sélectionner quelques images convaincantes.

8. Conclusion

Notre première expérience met en évidence une frontière simple. Un prompt détaillé peut stabiliser ce qu'il nomme : couleur, coiffure, maquillage, lumière ou style. Il ne fournit pas nécessairement une représentation suffisamment précise pour préserver la même géométrie faciale lorsque la seed change.

Le résultat n'est pas que le prompt serait inutile. Il reste l'outil principal pour piloter les attributs variables d'une image. Mais demander au texte de porter seul une identité revient à confondre description et mémoire.

Le LoRA peut devenir cette mémoire, à condition que son apport soit démontré et que son dataset ne l'enferme pas dans un fond, une tenue ou une expression. La question de l'identité mène ainsi directement à une question de data engineering : si les poids doivent apprendre ce qui reste stable, encore faut-il leur fournir des données cohérentes, traçables et correctement séparées de ce qui doit continuer à varier.

Lucas Jahier

Founder of Stratorys, a data systems architecture and engineering practice.

Face à une décision de système ?

Nous aidons les équipes à évaluer des choix techniques difficiles et à formuler une recommandation ou une voie de mise en œuvre, avec le raisonnement associé.