Tech 54 min read

Anima hair intakes: character borrow, identity strip, and upper-front camera

IkesanContents

I was writing another post on tidying up Anima negative prompts and tried to verify it by checking whether negatives could pull out a specific bang feature — but I got stuck before reaching that step.
Anima doesn’t produce hair intakes when you put intakes into a generic prompt.
This post traces that detour: 27 conditions across the diagnosis and the eventual recipe for transplanting a Kanon-derived large intake onto a generic blonde character.

How I got stuck

The target shape was the hair intake bang.
Common in older anime and visual novel characters: a pair of forward-curving locks at the temples, separated from the rest of the bangs.
The Danbooru wiki for hair intakes defines it like this:

A hair style that creates twin forward-facing scoops between other hair strands. Might become hair ears when intensified.

When the forward-facing scoops originate from the scalp near hairline and not between other hair strands, use curtained hair instead of hair_intakes.

“Twin forward-facing scoops appearing between other hair strands.”
The wiki points at two alternate tags as well: hair ears for an intensified version, and curtained hair for scoops that start at the scalp rather than between other strands.
The tag taxonomy splits along those three, and Anima’s training data is presumably indexed the same way.

Nayuki Minase from Key’s Kanon is the textbook example for hair intakes: blunt bangs in front plus a pair of independent curved locks at the temples.

Condition A: run the starting prompt as-is

Positive:

masterpiece, best quality, score_7, safe,
A girl with long, straight blonde hair and blue eyes. She appears to be in her late teens to early twenties; she is slender but has a slightly larger bust. The back of her hair is pulled up into a half-up braid tied with a blue ribbon. Her hair is long bangs sidelocks and intakes and blunt bangs.

Negative is the “starting kit” from the other post, unchanged.
use_speed_lora: true via Anima Turbo LoRA, 4 images.

Condition A image 1. Full side profile, half-up braid + blue ribbon + blunt bangs + blonde hair Condition A image 2. A faint blue halo-like ring appears in the background Condition A image 3. Same side profile, dark vest Condition A image 4. Same side profile, white shirt

All four landed on full side profiles.
Half-up braid, blue ribbon, blunt bangs, blonde — every element shows up.
But the combination is the canonical visual of a Blue Archive-style character, and image 2 even has a faint blue halo-like ring in the background.
With the face turned fully sideways, the intake angle isn’t even available.

The reason for the rotation is guessable.
The prompt carries back-of-head info (“half-up braid tied with a blue ribbon on the back”), and Anima probably rotated the composition to fit both the front and the back into the frame.

Condition A2: force a 3/4 view

If the face faces the camera, I can at least judge whether intakes show.
Add three quarters view, upper body, to the start of the positive. Everything else stays the same as A.

Condition A2 image 1. 3/4 view, ribbon and face both fit in the frame Condition A2 image 2. Same 3/4 view, faint halo-like ring in background Condition A2 image 3. 3/4 view, dark blazer-style outfit Condition A2 image 4. 3/4 view, white shirt

The camera swung to 3/4, putting both the back ribbon and the face in frame.
Blue ribbon, blunt bangs, and blonde hair all hold.
But the locks dropping down from the sides of the bangs aren’t the “forward-curving scoop” the wiki defines — they’re just straight sidelocks falling to the shoulders.
The word intakes in the prompt isn’t firing as a visual element.

Time to stop and split the question.
Does Anima know hair intakes as a concept at all?
If it doesn’t, no amount of negative prompting will surface something that isn’t there.
If it does but the prompt format isn’t activating it, then changing the format should fix it.
Need to separate the two cases.

Character tag reference: Nayuki Minase

Since the hair intakes tag exists on Danbooru, images learned under it should be in the training set somewhere.
Call a classic intake-bearing character with the minimum prompt and see if Anima can render her.

masterpiece, best quality, score_7, safe,
1girl, solo, minase nayuki, kanon (game),
upper body, looking at viewer, simple background

Nayuki test 1. Two clear forward-facing scoops rising from the bangs Nayuki test 2. School uniform with crest, same intake structure Nayuki test 3. Hand-to-chest pose, intakes still present Nayuki test 4. Red ribbon tie uniform, intakes present

4/4 intake activation.
Above the blunt bangs, on each temple, a pair of independent curved locks rises forward.
Exactly the wiki’s “twin forward-facing scoops between other hair strands” definition.
Outfits vary per seed (school uniform, casual wear), but the hair structure is consistent across all four.

So Anima recognizes hair intakes at the training data level.
But that knowledge is bound up as a character-tag identity via minase nayuki, not surfaced from generic natural-language enumeration.

Re-checking with the alternate tags hair ears / curtained hair in NL

One more branch to check.
Is it intakes as a word that doesn’t fire? Or is it the format of embedding a Danbooru tag word into natural-language prose?
Swap the wiki’s alternate tags hair ears and curtained hair into the same NL position as intakes in A2 and run them.
If only the tag word matters, a different tag should produce something.

End of the positive sentence is swapped:

  • Condition E: ... long bangs sidelocks and hair ears and blunt bangs.
  • Condition F: ... long bangs sidelocks and curtained hair and blunt bangs.

Everything else (3/4 view, negative, image count) matches A2.

Condition E image 1. Two animal-ear-like ears rising from the top of the head Condition E image 2. Same plain sidelocks as A2, no ears Condition E image 3. Same sidelocks, no change Condition E image 4. Same sidelocks

Only image 1 of hair ears produced two animal-ear-like protrusions at the top of the head.
Not “intensified intakes” as the wiki note suggests — literally interpreted as “ears made of hair”, as in beast-girl ears.
The other three look indistinguishable from A2’s plain sidelocks.

Condition F image 1. Same plain sidelocks as A2 Condition F image 2. Same sidelocks, white frilly outfit Condition F image 3. Same sidelocks, white shirt Condition F image 4. Same sidelocks, white frilly outfit

curtained hair showed no activation in 4/4, identical pattern to A2.
Even though the wiki points at curtained hair as the alternate for “scoops originating directly from the hairline,” that boundary doesn’t propagate through Anima’s natural-language path.

Three conditions summarized:

ConditionTagFormatResult
A2intakesembedded in NL sentencerounds off to sidelocks, intake doesn’t fire
Ehair earsembedded in NL sentence1/4 turns into beast-girl ears, not intakes
Fcurtained hairembedded in NL sentenceno activation, indistinguishable from A2

The wiki’s taxonomy (the gradient and origin difference between hair intakes / hair ears / curtained hair) does not reproduce through Anima’s natural-language path.
The fix isn’t a different tag word; it’s a different format.

Condition G: Danbooru tag list + natural language together

As noted in the earlier post on LoRA caption rewrites, Anima is trained on “Danbooru tags + natural language captions + combinations of both.”
The official model card explicitly lists “combinations of tags and captions” among training data sources.
In A2/E/F I had embedded tag words inside the NL sentence but never as a proper standalone tag list.
This time: front-load the positive with a Danbooru tag list, then continue with the A2 natural-language sentence.
Both the target hair intakes and the wiki’s alternates hair ears and curtained hair go into the tag list.

masterpiece, best quality, score_7, safe,
three quarters view, upper body, looking at viewer,
1girl, solo, blonde hair, long hair, blue eyes, blunt bangs,
hair intakes, hair ears, curtained hair, sidelocks, half updo, braid, blue ribbon,
A girl with long, straight blonde hair and blue eyes. ... Her hair is long bangs sidelocks and hair intakes and hair ears and curtained hair and blunt bangs.

Condition G image 1. A slight forward bulge on the locks at both temples Condition G image 2. Same slight rise, blue ribbon tie + white top Condition G image 3. Blurred window background, slight rise Condition G image 4. Blue ribbon tie, slight rise

Compared to A2/E/F, there’s now a slight forward bulge on the locks at each temple.
Not completely flat sidelocks any more — a faint version of the wiki’s “forward-facing scoop” is starting to lift.
But it’s nowhere near Nayuki’s clear large scoops.
The feature is firing; the size is just small.

Size hypothesis: the temporal distribution of the training data

Pausing here to lay out a hypothesis.
Intake bangs change in style over time, and modern characters (especially 2020s social-game and anime characters) rarely have large forward-projecting intakes.
The poster-child large-intake characters cluster in early-to-mid 2000s works like Kanon or Fate.
If Anima’s training data leans modern, the average shape pulled by the hair intakes tag will be a small, sidelock-adjacent intake.

The Blue Archive-style canonical look that came out in condition A (half-up braid + blue ribbon + blunt bangs + blonde) is squarely in the center of the modern-character group “with no intakes, or extremely small intakes.”
The weak intake in condition G fits the picture of a typical-intake reproduction from the training data.
Nayuki bringing a large intake is the case of minase nayuki being tightly bound with the “older large-intake representation.”

If the hypothesis holds, getting a large intake out of hair intakes alone requires weight emphasis.
Adding (hair intakes:1.5) to the tag list and pulling the sample distribution toward the large-intake tail.

Condition I: weight emphasis (hair intakes:1.5)

Using G as the base, add weight 1.5 to hair intakes only — both in the tag list and at the corresponding spot in the natural-language sentence.

... 1girl, solo, blonde hair, long hair, blue eyes, blunt bangs,
(hair intakes:1.5), hair ears, curtained hair, sidelocks, half updo, braid, blue ribbon,
A girl with long, straight blonde hair and blue eyes. ...
Her hair is long bangs sidelocks and (hair intakes:1.5) and hair ears and curtained hair and blunt bangs.

Condition I image 1. Weight 1.5, the bulge at the temples is slightly larger than G Condition I image 2. Weight 1.5, white shirt, slightly stronger forward curve Condition I image 3. Weight 1.5, sleeveless white top Condition I image 4. Weight 1.5, white blouse with blue ribbon tie

Compared to G, the forward bulge at the temples increases slightly.
But it still doesn’t reach Nayuki’s clear large scoops.
Weight pushes it, but there’s a ceiling.

This is consistent with the training-data hypothesis.
The tag is learned, but if the average intake size of the image population labeled hair intakes is small, raising the weight only shifts the average — it doesn’t fly to the large-intake tail.
To call out a large intake, you need direct access to the tail (older characters), which means using a character-tag reference.

You could push to weight 2.0+, but that risks breaking other elements (blunt bangs, half-up braid).
The alternative path is to directly reference a character in natural language and use the negative prompt to strip her identity-specific elements.

Condition H: NL direct reference “like minase nayuki” + negative identity strip

Tag list and weight emphasis have hit their ceiling. Try a different route.
Describe the intake shape via direct character reference in natural language, and use the negative prompt to strip the character-specific identity.

End of the positive sentence is rewritten — not the vague intake enumeration of A2/G, but a character reference.

Her front hair has prominent forward-facing intake locks like minase nayuki from kanon (game).

Negative gets her identity-bearing elements added:

... nsfw, explicit, nipples, pubic hair,
minase nayuki, blue hair, dark blue hair, navy hair, school uniform, sailor collar

minase nayuki itself goes into the negative to cancel the identity core, and her signature blue-tinted hair and sailor uniform are stripped explicitly.
What’s left is supposed to be just the intake shape.

Condition H image 1. Triangular, pointed scoops projecting forward from each temple Condition H image 2. Same pointed scoops, white turtleneck Condition H image 3. Slightly profile-leaning but scoops still form, white T-shirt Condition H image 4. 3/4 view with pointed scoops, white blouse + blue ribbon tie

Compared to G/I, the bangs at the temples now have triangular pointed scoops projecting forward — clearly formed.
This runs more directly than weight emphasis.
Blonde hair, blue ribbon, blunt bangs hold; blue-tinted hair colors and sailor uniform are gone from the negative.
The intake size isn’t as big as the actual Nayuki, but it meets the wiki’s “twin forward-facing scoops between other hair strands” definition.

Why this works: if minase nayuki as a character tag is tightly bound with the hair intakes shape in training, then referencing the character by name in natural language functions as a “trigger that drags the intake shape along.”
The character identity proper (face, hair color, clothes) is then cancelled by putting minase nayuki in the negative, with hair color and uniform explicitly stripped — borrowing only the shape.

Condition J: H + weight 1.5 stacked

H worked without weight emphasis, so add (hair intakes:1.5) on top.
Set the tag list’s hair intakes to weight 1.5, keep the NL character reference.

... blunt bangs, (hair intakes:1.5), sidelocks, half updo, braid, blue ribbon, ...
Her front hair has prominent forward-facing intake locks like minase nayuki from kanon (game).

Negative same as H.

Condition J image 1. Sharp triangular scoops projecting far forward from each temple Condition J image 2. Wing-like intakes clearly formed at both temples, largest size so far Condition J image 3. Forward-facing triangular peak, white T-shirt Condition J image 4. 3/4 view, temple scoops still in place

Largest intake so far.
J-01 and J-02 are quite close to actual Nayuki — wing-like scoops spreading forward from both temples.
Other elements (blonde, blunt bangs, half-up braid, blue ribbon) all hold.

Putting it together, getting “a Nayuki-derived large intake transplanted onto a generic character in Anima” needs three layers stacked:

LayerMechanismPosition in prompt
1NL character reference making the shape’s source explicitAt end of positive NL sentence: Her front hair has prominent forward-facing intake locks like minase nayuki from kanon (game).
2Identity strip in negative, removing the character bodyNegative: minase nayuki, blue hair, school uniform, sailor collar
3Weight emphasis to push the distribution toward intake samplesTag list: (hair intakes:1.5)

Any single layer alone is weak. Only the combination gets close to the “older large-intake character” feature space bound up with the intake label in the training data.

Condition K: same prompt on WAI-Illustrious v17

There’s lore that Illustrious series can pull out hair intakes more easily, so run J’s prompt verbatim on WAI-Illustrious v17 (SDXL) for a cross-model comparison.
Drop Anima’s speed LoRA, use the default 30 steps / cfg 5.5.

Condition K image 1. WAI-IL v17, temples lean toward normal sidelocks, intake scoop subdued Condition K image 2. Dark background, painterly rendering but subtle intake Condition K image 3. 3/4 view, striped background, intake barely visible Condition K image 4. Mirror-flipped with ribbon on the left, white blouse with blue stripes, faint intake

Same prompt + same weight, but IL’s intake size is smaller than Anima J.
The rendering is more painterly with finer outfit and background detail, but the hair-structural intake feature is subdued.
IL is more obedient to the 3/4 view request; it doesn’t escape to side profiles like Anima.

The “IL fires when you hit it harder” claim might hold under different prompt structures, but for the J-exact comparison, Anima > IL on intake size.
Cross-model conclusions need more samples and a wider weight range before being written down.

Looking carefully at K-04, the white blouse with blue stripes and the left-side ribbon position lean toward Nayuki’s actual uniform.
Even with minase nayuki in the negative, identity stripping isn’t as effective in IL as in Anima.
IL holds character tags more tightly.

Condition L: J + the original “competing-bangs negative”

Back to the original setup from the other post.
The plan was: add straight bangs, center-parted bangs, side-swept bangs, parted bangs, hair over one eye, neat hair, smooth hair, flat bangs to the negative to crush all the bangs except intakes, and let intakes surface.
Now that J has a working intake-firing positive, stack that negative on top and see if the original plan actually pays off when the positive is moving.

Positive stays J. Negative gets the competing-bangs tags added.

Condition L image 1. blunt bangs preserved, intake slightly smaller than J Condition L image 2. 3/4 view, blunt bangs + small intake Condition L image 3. Triangular intakes at temples, blunt bangs preserved Condition L image 4. 3/4 view, subtle intake, blue ribbon still there

blunt bangs (in positive) holds in 4/4.
Even with straight bangs in the negative — a concept that should interfere with blunt bangs — it doesn’t blow them away.
Intake is roughly the same as J, maybe slightly subdued.
The expected “sharpening intakes by crushing competing bangs in negative” doesn’t visibly show up.

This means the original plan’s premise was partly off.
Crushing competing things in the negative doesn’t lift a feature that wasn’t there in the first place.
J already fires the positive side fully, so additional negatives are redundant.
The “competition removal” via negative only works when there’s a competing path resisting the positive activation.
This intake was already settled on the positive side; there’s nothing left for the negative to chip away.

Conversely, it also confirms that blunt bangs survives a conceptually-adjacent straight bangs in the negative without breaking.
The two are sufficiently separated inside Anima’s representation.

Condition M: drop the back-of-head elements to force a front view

Up to this point everything’s been 3/4 view, and a likely cause is Anima wanting to fit both the back-side half-up braid and the face into the frame.
If you remove the back-of-head spec entirely, can the composition come around to a true front view?

Drop the half updo, braid, blue ribbon tags and the NL sentence “The back of her hair is pulled up into a half-up braid tied with a blue ribbon.”
Switch the composition from three quarters view to front view, facing viewer, upper body, looking at viewer.
Add profile, from side to the negative to suppress profiles.

Condition M image 1. Front-facing, blunt bangs, white turtleneck, subdued intake Condition M image 2. Front-facing, white turtleneck, subtle intake Condition M image 3. Front-facing, white top with black strap Condition M image 4. Front-facing, white turtleneck, small intake peak at temples

All 4 successfully front-facing.
But the intake size dropped sharply versus J.
Removing the back-of-head elements also stripped Anima’s bias toward “Nayuki / older visual-novel character group,” landing on a default “blonde long-hair front view” representation.
Composition vs intake intensity is a tradeoff.

There’s a second loss too.
Up through J, the positive carried half updo, braid, blue ribbon, so even in 3/4 view one side of the braid was peeking into the frame.
In M, with both the tag list and the NL sentence stripped of back-of-head specs, the result is just a plain blonde long-hair with no braid visible at all.
The front view was won at the cost of the intended hairstyle (where the braid should at least partially show).
The change in prompt naturally drove this result, but the target state — “half-up braid + front-facing + intakes visible” — wasn’t reached.

A side effect: the blonde + blue eyes + blunt bangs front-facing combo started leaning toward Alice Schuberg’s face from SAO Alicization.
Strip the back-of-head specs and you drift toward the “blonde long hair + front view + blunt bangs” cluster in the training data, with Alice as a representative.
That said, the white turtleneck shared across all four images isn’t an Alice trait. Alice’s canonical outfit is the gold Integrity Knight armor + blue cape + headband, no turtleneck anywhere.
The frequent turtleneck has a separate cause — Alice-ness should be judged on the face/hair/bangs layer, not the outfit.

Why white turtlenecks kept showing up in M〜P2

Stepping back across M / O / P / P2, the outfits are repeatedly white turtlenecks. J had some too.
The prompt never specifies an outfit, but Anima keeps choosing turtleneck on its own.

Possible causes:

  • The safe rating tag biases toward conservative outfit choices
  • she is slender but has a slightly larger bust in the NL sentence is the source — it triggers chest-covering tops (turtleneck, tight tops)
  • The most-frequent outfit cluster for “blonde long-hair + front-facing + blunt bangs + SFW” in the training data happens to be turtleneck-leaning
  • Anima Turbo LoRA may have outfit-specific quirks of its own

To control outfits, explicitly specify a top in the positive (sailor uniform, blouse, t-shirt) or suppress with turtleneck in the negative.
This run focused on intake bangs and composition, so the outfit is a side variable not pursued further.

Condition N: confirm with Alice (SAO) as the reference character

M’s output was leaning toward Alice, so as a reference test, call up Alice with a minimum prompt.
Same procedure as the Nayuki test.

masterpiece, best quality, score_7, safe,
1girl, solo, alice schuberg, sword art online,
upper body, looking at viewer, simple background

Alice ref 1. Integrity Knight armor + headband, no intakes Alice ref 2. Armor + heart background, no intakes Alice ref 3. Armor, blunt bangs + sidelocks, no intakes Alice ref 4. Armor + red heart speech bubble, no intakes

4/4 Alice herself clearly rendered (blonde long hair + blue-green eyes + Integrity Knight armor + blue cape + headband).
But the intakes are absent. All four show just regular blunt bangs + sidelocks.
In Anima’s training data, Alice is learned as a non-intake character.

My own memory was “Alice also has intakes” but looking at the output, that’s probably wrong.
To verify the memory, checked the SAO Wiki too.
According to the wiki, the thing on Alice’s head is a white cloth headband (not a metal forehead protector), and its function is “to separate the main hair from the locks tied at both sides.”
She’s worn it since childhood (Rulid Village) and continues to wear it as an Integrity Knight.
Alice’s hairstyle is “blonde long hair + back braid + tied locks at both sides + white headband,” and whether the tied side locks satisfy Danbooru’s hair intakes definition of “forward-facing scoop between other hair strands” is a separate question.
They’re sidelocks held up by a headband, not scoop-shaped — that’s the accurate read.
The reason I had Alice pegged as intake-bearing was that I was matching her tied side locks to “something intake-ish” without checking the Danbooru tag definition.
Anima makes the same call on the training data side: the alice schuberg tag produces sidelocks + headband structure, not intakes.

Two takeaways:

  1. Nayuki and Alice are both “blonde long-hair characters Anima recognizes,” but the presence of the intake feature is on a separate axis. The reason like minase nayuki in J/H worked was that it was calling Nayuki’s specific intake feature.
  2. Just because two characters share appearance traits (blonde, long hair, blue eyes) doesn’t mean they share intake features. Anima keeps the appearance cluster and intake presence independent.

So to transplant intakes, you need to reference a character that actually has intakes — appearance similarity alone won’t substitute.
And the case of “I remembered this character as intake-bearing but actually not” can be reverse-confirmed via Anima’s output.

Condition O: keep the half-up braid spec, force front view

Stripping the braid spec entirely in M was overcorrection.
A canonical half-up braid should be visible from the front too — the braid section or ribbon shows at the temples or top of the head. M’s “plain long hair” outcome was a result of under-specification.
Keep J’s half-up braid spec (half updo, braid, blue ribbon tag list + NL sentence) and force just the composition to front view.
Rewrite the NL sentence from “The back of her hair” to “half-up braid tied with a blue ribbon, the braided section visible across the temples and top of the head,” pulling the description toward the front-side perspective.
Add profile, from side to the negative.

Condition O image 1. Front-facing, two blue ribbons at the temples, braid itself not prominent Condition O image 2. Front-facing, two blue ribbons, white button shirt Condition O image 3. Front-facing, two blue ribbons, white turtleneck Condition O image 4. Front-facing, two blue ribbons, red zip-up

4/4 front-facing achieved.
And two blue ribbons appear at each temple — one on each side.
The braid itself (the woven section) isn’t really visible.
Anima didn’t read half updo, braid, blue ribbon as a unified “half-up + braid + blue ribbon” structure but decomposed it into “twin side ribbons.”

Intake is slightly subdued versus J, roughly equivalent to M.
The intended hairstyle (half-up braid) still isn’t being reproduced correctly.

The proper SDXL/NovelAI tag conventions (confirmed separately):

  • half updo: hair pulled up at the temples and tied at the back
  • half up braid: variant of half-updo where the tied section is braided (written as a single tag)
  • hair bow: a ribbon tying the hair

The correct Danbooru/NovelAI form is half up braid, hair bow as compound tags, not the decomposed half updo, braid, blue ribbon list.

Condition P: switch to the half up braid single-tag form

Replace O’s tags with the canonical form.

... 1girl, solo, blonde hair, long hair, blue eyes, blunt bangs,
(hair intakes:1.5), sidelocks, half up braid, hair bow, blue hair bow, ...
Her hair is styled as a half up braid tied with a blue hair bow, the braid visible across the temples.
Her front hair has prominent forward-facing intake locks like minase nayuki from kanon (game).

Negative and view same as O (front view forced, profile, from side in negative).

Condition P image 1. Front-facing, two side ribbons, small intake peak at temple Condition P image 2. Front-facing, two blue ribbons, white T-shirt, subtle intake Condition P image 3. Front-facing, two blue ribbons, white button shirt, subtle intake Condition P image 4. Front-facing, two blue ribbons, white turtleneck, subtle intake

Normalizing the format didn’t change Anima’s interpretation.
4/4 converge on the cluster “twin side ribbons + front long hair + blunt bangs + weak intake.”
Even with half up braid as a single tag, Anima doesn’t generate the back-tied half-up braid structure; it decomposes into left-right symmetric hair bows.
That suggests, for images learned under the half up braid tag in Anima’s training data, the average visual interpretation at front view is “side ribbons.”

Intake is significantly subdued versus J, but unlike M, a small intake peak is visible in all 4 images at front view.
The original goal “front-facing with intakes visible” is met, but at a size compromise.
The tradeoff remains between J’s Nayuki-leaning cluster (3/4 view + large intake) and M/O/P’s modern-character cluster (front view + small intake).

The ribbons are also noticeably larger than they were in J.
That’s a tag issue, not a composition one — J used blue ribbon, but O/P switched to hair bow / blue hair bow to match SDXL/NovelAI conventions.
In Danbooru tags, ribbon / blue ribbon is a thin strip used to tie hair, while hair bow is a bow-shape ornament, drawn larger and three-dimensional — it’s a different tag.
Normalizing the format also normalized the visual.
For J’s small ribbons, the right move is to stay with blue ribbon. If you want hair bow, accept that the ribbons get bigger.
Matching Danbooru’s vocabulary down to the detail is the obvious lesson, but the visual impact bites back each time you change something.

Condition P2: revert P’s ribbon to blue ribbon

Switch P’s hair bow, blue hair bow back to J’s blue ribbon.
Same composition and intake settings as P, just the ribbon visual reverted to J’s small thin ribbon.

Condition P2 image 1. Front-facing, one small blue ribbon on the right, natural size Condition P2 image 2. Front-facing, two small blue ribbons on both sides, clearly smaller than P Condition P2 image 3. Front-facing, two small blue ribbons on both sides, white turtleneck Condition P2 image 4. Front-facing, one small blue ribbon on the right, white button shirt

Ribbon size returns to J’s small thin form.
2/4 with only one side (asymmetric), the other 2 with both sides.
The visual is corrected, but the left-right symmetry is still unstable.
Intake remains the same small size as P.

The tag format choice affects both the visual (hair bow vs blue ribbon) and the placement pattern. Separately controlling size, symmetry, and ornament shape means using Anima’s tag vocabulary at a finer granularity.

Anima thinks half-up braids aren’t visible from front view

Looking at M / O / P / P2 together, one common discomfort emerges.
All conditions specify front view, facing viewer, looking at viewer, but the actual faces aren’t perfectly head-on — they’re tilted 10–20 degrees off.
The reason ribbons sometimes appear on just one side in P / P2, or end up left-right asymmetric, also fits as a side effect of that subtle rotation.

If this isn’t random noise but Anima’s compromise tactic, it makes sense.

  • The positive contains both front view and half up braid
  • In Anima’s training data, half-up braids are bound up with images shot from “back / profile / 3/4 view”
  • There’s almost no training example where a half-up braid is visible at a true front view (training data bias)
  • The two positive specs conflict, so Anima compromises by “rotating the face slightly to fit the braid into the frame”
  • The result: ribbons peek on just one side, or the gaze isn’t quite perfectly front

So Anima’s internal common sense holds “at front view, half-up braid scenes don’t exist.”
This also ties back to why condition A escaped entirely to side profile — the “want to fit the back-of-head element into the frame” composition bias outranks positive specs in some cases.

Workaround candidates:

  • Give up the back-of-head spec and take pure front view (condition M; loses the braid in exchange for facing straight on)
  • Keep the braid and accept 3/4 view (condition J; coexists with intakes)
  • Switch to an angle like from above that shows the braid from the top of the head
  • Replace the half-up braid with a style consistent with front view, like low ponytail or hime cut

What you’re really doing is reverse-engineering “what Anima learned to show at front view.”
The work shifts from picking single tags to making the combination of tags fit Anima’s training distribution.

Condition J2: weight 1.5 → 2.0 to find the intake ceiling

Keep J’s composition (3/4 view + Nayuki reference + identity strip in negative) and raise (hair intakes:1.5) to (hair intakes:2.0).
Goal: find the upper bound on intake size.

Condition J2 image 1. 3/4 view, clear intake at temples, equal to or larger than J Condition J2 image 2. 3/4 view, intake holds, white turtleneck Condition J2 image 3. 3/4 view, intake present, white blouse + red skirt + blue tie Condition J2 image 4. 3/4 view, intake holds, white blouse with blue ribbon tie

Intake is on par with J — going from weight 1.5 to 2.0 doesn’t bring a dramatic size increase.
But intake shows consistently across all 4 images, more stable than J.
The other elements (blunt bangs, half-up braid + ribbon, blonde) don’t break.

Consistent with the earlier “weight pushes but plateaus” hypothesis.
Weight 2.0 is near the size ceiling; stability of activation goes up, but intake size itself stays glued to J’s ceiling.
If “intake label + large scoop” samples are scarce in Anima’s training data, raising the weight only pulls the average — it converges around J.

The practical ceiling is 3/4 view + character reference + weight 1.5–2.0. Going past that means using the character tag itself more strongly or augmenting with a LoRA — no other path easily.

One more thing: looking at J2, the face and atmosphere lean toward Nayuki herself more than J.
Even with minase nayuki in the negative to strip identity, at weight 2.0 the Nayuki-ness goes up.

That also makes sense, as a tug-of-war between positive and negative.

  • Pushing hard with (hair intakes:2.0) on the positive pulls Anima into “intake space”
  • The densest cluster in intake space is bound to Nayuki (training data bias)
  • The harder you push toward intake, the more Nayuki identity gets dragged along
  • The negative minase nayuki, blue hair, ... tries to strip it, but the positive’s weight 2.0 wins

Up through weight 1.5, the negative side wins and identity strip succeeds; at 2.0 the positive side wins out.
Intake size has plateaued but side-effects keep growing — that’s the region we’re in.
Practically, J (weight 1.5) is the optimal balance. Going beyond gives identity leak as the cost without meaningfully more intake.

Condition Q: drop the natural-language sentence entirely, Danbooru tag list only

Strip the natural-language paragraph completely from J and run with the Danbooru tag list alone.
The like minase nayuki from kanon (game) reference in the NL also disappears.
Test whether the tag list’s (hair intakes:1.5) alone can produce J-level intakes.

masterpiece, best quality, score_7, safe,
three quarters view, upper body, looking at viewer,
1girl, solo, blonde hair, long hair, blue eyes, blunt bangs,
(hair intakes:1.5), sidelocks, half updo, braid, blue ribbon,
slender, large breasts

Negative is the same as H (stripping Nayuki identity).

Condition Q image 1. 3/4 view, clear blue halo-like ring in background, blunt bangs, small intake at temples Condition Q image 2. 3/4 view, blue halo background, white blouse + dark skirt, small intake Condition Q image 3. 3/4 view, white blouse + blue ribbon tie, blunt bangs + ahoge, small intake Condition Q image 4. 3/4 view, white blouse + dark vest + blue ribbon, small intake

The moment the NL paragraph disappeared, a clear blue halo-like ring appeared in the background.
The Blue Archive-style canonical look from condition A is back at roughly the same intensity in Q-01/Q-02.
Outfits also shifted to the “Blue Archive school uniform” composition with white blouse + dark vest + blue ribbon.

Intake size is significantly subdued versus J, retreating to G/I-level small size.
That means the like minase nayuki NL reference in J was doing two jobs:

  1. Triggering the intake shape
  2. Counterweighting the pull toward the Blue Archive cluster (Toki, as we’ll see)

Removing the NL drops both, so the intake weakens and the prompt drifts to the most frequent cluster in the training data.

Condition R: blend minase nayuki as a low-weight character tag

Try producing H’s effect via a character tag instead of an NL reference.
Not an NL reference but a low-weight (minase nayuki:0.4) mixed into the tag list.
Negative still has minase nayuki to keep the identity strip.

... blunt bangs, (hair intakes:1.5), sidelocks, half updo, braid, blue ribbon,
(minase nayuki:0.4), slender, large breasts

Condition R image 1. 3/4 view, white turtleneck + dark vest, small intake Condition R image 2. 3/4 view, blue background, blue ribbon, small intake Condition R image 3. 3/4 view, hand to chest, blue ribbon, small intake Condition R image 4. 3/4 view, white blouse + dark corset, small intake

Intake is subdued versus J, roughly G/I level.
Blending the character tag at weight 0.4 doesn’t pull the intake shape as strongly as H’s NL reference path.
With minase nayuki on both positive and negative, the low-weight positive gets easily crushed by the negative, and doesn’t seem to function as a shape trigger.

The NL reference (H) and the low-weight character tag (R) come from the same “hint at Nayuki to call up intakes” idea, but the actual behavior differs significantly.

  • H: the word inside the NL sentence acts strongly as a “shape reference,” but the character identity as a whole rides weakly
  • R: the tag thins the identity uniformly, so the formed feature doesn’t surface easily

Anima’s text encoder (Qwen3 based) seems to be processing NL “like X” descriptions as shape references, while low-weight character tags in the tag list are treated as diluted identity mixing.

Condition Toki: the original prompt was a Toki spec

The cluster that kept coming up in A/Q/R — “blue halo + blonde + blunt bangs + half-up + blue ribbon + larger bust” — matches the spec of a specific character in the training data: Asuma Toki from Blue Archive.
The suspicion: my generic prompt had unconsciously become a Toki spec sheet.
Call Toki herself with the minimum prompt and see whether the output matches A/Q/R visually.

masterpiece, best quality, score_7, safe,
1girl, solo, asuma toki (blue archive), blue archive,
upper body, looking at viewer, simple background

Toki ref 1. Clear blue halo above head, honey blonde + blue eyes, blunt bangs, right-side half-up + blue bow tie, dark jacket + white blouse Toki ref 2. Same blue halo, dark jacket + large blue bow tie Toki ref 3. Blue halo, guts pose, blue bow tie + black belt Toki ref 4. Blue halo, same uniform + blue bow tie

4/4 clearly Toki herself.
Blue halo, honey blonde (more yellow than pure gold), blue eyes, blunt bangs, right-side half-up + large blue bow tie, dark jacket + white blouse.
This was the identity of the character that “kept appearing creepily” in A/Q/R.

Cross-checking against earlier conditions, many things line up:

  • The blue halo-like ring in the background of condition A → matches Toki’s halo in size and position
  • The “one-sided ribbon” or left-right asymmetric ribbon in P/P2 → Toki’s ribbon is on the right side only (not symmetric)
  • “The blonde in A is more yellow than I expected” → Toki is honey-blonde-leaning, not pure gold
  • The repeated dark jacket + white blouse + blue ribbon school uniform → Toki’s actual uniform
  • “slender + large breasts” at the end of the prompt also matches Toki’s body description

So the generic prompt I thought I’d written — “blonde + blue eyes + blunt bangs + half-up braid + blue ribbon + slender + slightly larger bust” — matched Toki’s feature vector in Anima’s training data closely enough that Anima decided “this is Toki.”
Even condition A escaping to side profile may have been partly Toki bias, since her official illustrations skew to that angle.

That explains most of what happened in the intake experiment:

  • Why J/H only produced Nayuki-leaning intakes when like minase nayuki was added: the positive was overwriting the attractor from Toki to Nayuki
  • Why Q/R brought back the Blue Archive halo: the moment the overwrite was removed, the original Toki bias returned
  • Why outfits frequently showed white blouse + dark vest rather than turtleneck: it’s part of the Toki uniform cluster

This section is a meta-finding: a separate axis problem was running underneath the originally-intended “hair intakes tag activation problem.”
The case of “a generic-prompt description colliding with a specific character in training data” probably happens in other combinations too. “I thought I wrote a generic character but it turned out to be a specific character’s spec sheet” — that happens normally with biased-training-data models like Anima.

Condition V: J recipe with Nero Claudius

Is J’s recipe Nayuki-specific, or does the same path move with a different character?
Replace like minase nayuki from kanon (game) with like nero claudius from fate (series), and adjust the negative’s identity strip for Nero (nero claudius, green eyes, red dress, red military uniform, gold trim, epaulettes, hair bun, ahoge).

Condition V image 1. 3/4 view, green eyes + hair bun leaked, small-to-medium intake at temples Condition V image 2. 3/4 view, white dress + hair bun + ribbon, green eyes leak Condition V image 3. 3/4 view, white dress, green eyes + hair bun + ahoge leak Condition V image 4. 3/4 view, white dress + blue ribbon, green eyes + hair bun leak

With a different character reference, the intake transplant still moves. All 4 produce intakes at the temples.
But the size is subdued compared to J (Nayuki version). Nayuki’s intake feature is more strongly bound in Anima’s training data.

Meanwhile, the identity strip is weaker for Nero:

  • Green eyes leak in 4/4 (green eyes wasn’t in the negative, but it’s Nero’s defining color)
  • Ahoge persists in 4/4 (ahoge is in the negative but isn’t getting through)
  • Hair bun at the back also persists despite being in the negative

Nero’s identity is more densely burned into Anima than Nayuki’s. The same-strength negative can’t strip it cleanly.
For a different character reference, you spell out the identity elements in the negative more carefully — for Nero, add green eyes, push hair bun and ahoge with stronger negative weight.

“Intake transplant is set by the combination of character strength and how easily the identity strips off.” Nayuki is the current most-cooperative reference; swapping in another character means rewriting the negative for that character first.

Condition U: from above to show the top-of-head braid

A different approach to M’s “front view but braid disappears” problem.
Putting the camera above and looking down should fit the top-of-head half-up braid into the frame.
Switch composition from front view to from above, looking up, and rewrite the NL sentence to “the braid visible across the crown of her head.”

Condition U image 1. From above, looking up, faint braid at crown, white T-shirt Condition U image 2. From above, white blouse + dark vest, faint braid Condition U image 3. From above, white blouse + blue ribbon + red skirt, faint braid Condition U image 4. From above, gray turtleneck, faint braid at crown

4/4 became from-above-with-looking-up.
The top-of-head braid does fit into the frame but only barely shows. The subject’s head shrinks at the bottom of the frame and the braid gets compressed.
Intake is small to medium. As a way to verify the half-up braid it’s a slight improvement over M.
Side effect: the face looks younger (the looking up effect), drifting below the intended age range.

Dropping looking up and using from above alone would suppress the face-younger artifact, but then the camera position and the subject’s gaze would mismatch and the composition gets unnatural. Trade-off.

Condition W: 22.5° angle (slightly turned to the side)

Aim for a midpoint between 3/4 view and front view.
Rewrite the composition to slightly turned to the side, almost front view, and add three quarters view to the negative to suppress overshooting in the other direction.

Condition W image 1. Nearly front-facing, clear braid on the upper left, blue ribbon still there, medium intake Condition W image 2. Nearly front-facing, top-of-head braid visible, white turtleneck + dark vest Condition W image 3. Nearly front-facing, braid + blue ribbon visible on the right side of the head, white turtleneck Condition W image 4. Nearly front-facing, top-of-head braid clear, blue ribbon still there

This is the sweet spot.
Holding nearly front-facing, the top of the head now clearly shows the half-up braid weave, and the blue ribbon shows on the back side too.
Intake is mid-sized — smaller than J’s 3/4 view but larger than M/O/P’s front view.
”Braid in the frame” from M and “intake clearly visible” from J coexist at the 22.5° angle.

Anima’s “no half-up braid at front view” common sense gets sidestepped at the 22.5° compromise point.
The “not front but almost front” prompt pulls Anima’s cluster judgment out of the “strictly-front-only cluster.”

Condition X: replace half-up braid with low ponytail for a front-view-compatible style

If half-up braid conflicts with front view, swap to a style that doesn’t conflict.
A low ponytail ties hair low and falls down the back, so even from the front the tied section sits behind the neck and shouldn’t interfere with the composition.

Condition X image 1. Front, white turtleneck, ponytail glimpsing at the side, small intake at temple Condition X image 2. Front, white sleeveless + black trim, ponytail at side Condition X image 3. Front, gray shirt, bundled hair in front of shoulder Condition X image 4. Front, white T-shirt, blue ribbon at side

4/4 front-facing.
But low ponytail is hard to recognize at front view — the tied locks fall over the shoulder and edge into the frame at best.
Whether the ponytail structure is clearly visible is ambiguous.
Intake is small, around M/O/P level.

Switching hairstyles to avoid conflict with front view removes the conflict — but at the cost of also losing the visible element. You end up with fewer hair accents you can verify on screen.
Ponytails as a whole share this property: regardless of Anima’s judgment, they’re physically hard to see from the front.
To verify on screen, showing a half-up braid in W’s 22.5° composition is the practical choice.

Condition Y: isolating the cause of frequent turtlenecks

The white turtleneck that appeared frequently in M〜P2 and J/J2 needs its cause isolated.
Candidate hypotheses:

  • The safe rating tag pulls toward conservative outfits
  • The NL sentence she is slender but has a slightly larger bust triggers chest-covering tops
  • The most-frequent cluster in the training data happens to be turtleneck-leaning

In Y, remove the bust description from the NL sentence (drop slender but has a slightly larger bust) and add turtleneck to the negative.
If the turtleneck disappears, the combination of the bust description and the training data cluster is the main cause.

Condition Y image 1. 3/4 view, white blouse + red vest + blue ribbon, no turtleneck Condition Y image 2. 3/4 view, white blouse + red vest, no turtleneck Condition Y image 3. 3/4 view, white blouse + red vest, no turtleneck Condition Y image 4. 3/4 view, black top + blue ribbon, but a black turtleneck-ish top with the negative not fully effective

3/4 with turtleneck gone; the remaining one (Y-04) is a black turtleneck-ish top — even with turtleneck in the negative, it’s not fully suppressed.
In the 3 turtleneck-less images, the new outfit is white blouse + red vest + large blue ribbon tie.
At first I read this as another Toki uniform cluster, but on closer look it’s different from Toki’s uniform (dark jacket + white blouse + blue bow tie + halo).
The red vest + blue ribbon tie, no halo — this is leaning toward Kanon’s school uniform.
The NL like minase nayuki from kanon (game) reference was still in the positive, so the moment the bust description was removed, “Nayuki’s school uniform” seeped in as a cluster via the NL reference.

Conclusions:

  • The main cause of turtleneck frequency is the combination of slightly larger bust in the NL description + no turtleneck in the negative. Just removing the bust description makes the turtleneck disappear
  • The outfit after turtleneck removal gets pulled toward Kanon’s uniform by the NL like minase nayuki reference
  • For full outfit freedom: remove the bust description + remove the NL character reference (which also removes the intake) + explicit outfit specification (t-shirt, dress etc.) — that’s how far you need to go

The outfit attractor moves with the prompt composition. “Blonde + blue eyes + blunt bangs + ribbon + slightly larger bust” → Toki-leaning. “Blonde + blue eyes + blunt bangs + like minase nayuki + no bust description” → Nayuki’s-uniform-leaning. The attractor character changes.

Condition Z: from above alone, without looking up

In U, the combination of from above, looking up had the side effect of the face looking younger.
With looking up removed and from above alone, the camera is just placed above while the subject looks normally forward.

Composition changes to from above, upper body, looking at viewer.
Add looking up to the negative to suppress the upward gaze.

Condition Z image 1. Slight downward angle, top-of-head braid visible, white turtleneck, small intake at temple Condition Z image 2. Slight downward angle, top-of-head braid clear, white T-shirt Condition Z image 3. Slight downward angle, top-of-head braid present, blue tank top Condition Z image 4. Slight downward angle, top-of-head braid present, white turtleneck + red collar

4/4 with a more natural overhead angle than U, the face-younger side effect suppressed.
The top-of-head half-up braid shows up larger than in U — comparable verifiability to W.
Intake is small to medium, on par with W.
Z (from above alone) and W (22.5° angle) end up as parallel composition candidates. Use Z when you want to show the top-of-head braid, W when you want a more frontal face — pick by goal.

Condition AA: hime cut for a front-view-compatible style

X tried low ponytail, but the ponytail structure had the limitation of being physically hard to see from the front.
A hime cut — blunt bangs + scissor-cut shorter sides + the rest of the hair flowing down the back — should be identifiable as a hairstyle even from front view.

Switch the hairstyle to hime cut.
Rewrite the NL sentence to “Her hair is styled in a hime cut, with straight bangs, long sidelocks framing the face, and the rest of the hair flowing down her back.”

Condition AA image 1. Front, white T-shirt, hime cut feel is weak Condition AA image 2. Front, white T-shirt, smile, hime cut not clearly out Condition AA image 3. Front, gray turtleneck, side-cut feel weak Condition AA image 4. Front, white T-shirt, hime cut feel ambiguous

All 4 got front view, but the hime cut characteristics (bangs + shorter sides + long back, the 3-part structure) aren’t clearly out.
The result rounds toward plain long straight hair + blunt bangs.
You can’t really tell from the image whether it’s a hime cut or just blunt bangs — both fall in a direction where neither is clearly expressed.
Anima’s training data probably has a thin hime cut cluster, or limited learning samples under the hime cut tag.

Intake is also minimal. The like minase nayuki NL reference is in, but pushed by the hime cut description, it doesn’t fire enough.

Switching hairstyles to chase front-view alignment depends on the training sample volume for each tag in Anima. hime cut is hard to control as a target element to show, same as X’s low ponytail.

Condition AB: pull the outfit cluster away from Nayuki/Toki

Y showed “removing the bust description pulls toward Nayuki’s uniform cluster.”
The base prompt’s “blonde + blue eyes + blunt bangs + blue ribbon” combination was Nayuki/Toki-shaped to begin with. Try changing those at the root and escape both clusters.

Positive changes:

  • blonde hairbrown hair
  • blue eyesgreen eyes
  • blunt bangswavy bangs
  • blue ribbonred ribbon
  • slender but has a slightly larger bustslender (drop the bust description)

Keep the NL reference like minase nayuki from kanon (game) (the main intake-summoning axis).
Add minase nayuki, asuma toki (blue archive), blonde hair, blue eyes, blunt bangs, halo, large breasts to the negative to suppress both characters.

Condition AB image 1. Brown hair + green eyes + wavy bangs + red ribbon, no halo, weak intake Condition AB image 2. Brown hair + green eyes + wavy bangs + red ribbon, gray top Condition AB image 3. Brown hair + green eyes + wavy bangs + red ribbon, white T-shirt Condition AB image 4. Brown hair + green eyes + wavy bangs + red ribbon tie, white blouse + red ribbon tie leaning toward Nayuki uniform

4/4 Toki-cluster escape successful. The halo is gone and the blue ribbon was replaced with red ribbon.
But the character that came out looks like a blend of multiple Kanon characters.

  • Hair color (brown, beige-leaning) + half-up → close to Sayuri Kurata (Kanon’s half-up character, beige hair + large ribbon)
  • Green eyes + wavy bangs → leaning toward Kaori Misaka (Kanon side character, brown hair + green eyes + wavy bangs)
  • Red ribbon tie + Kanon school uniform → Kaori-leaning outfit

In other words, the output landed on a partial blend of Kaori and Sayuri.
(The prompt’s explicit half updo, braid, red ribbon also reinforced the half-up element.)

This is a variant of the Toki discovery: I tried to escape the Toki spec, but the like minase nayuki from kanon (game) NL reference is anchored to the Kanon world, so other Kanon characters’ features seeped in.

Intake is showing.
4/4 have forward-facing scoops at the temples, slightly smaller than J/W/Z but clearly present.
Both Kaori and Sayuri are intake-bearing characters, so even in a Kanon-blend the intake feature is brought along.
Kanon’s female cast is essentially uniformly intake-bearing, so the moment you pull the prompt toward a Kanon feel, intakes come along as a bonus by construction.
Even without landing on a specific character, as long as the anchor to the Kanon world remains, intakes show.

One hypothesis emerges.
The like minase nayuki from kanon (game) NL reference isn’t a trigger for Nayuki alone — it’s an anchor to the female cast of Kanon as a whole.
And since Kanon has female characters who are almost uniformly intake-bearing, the Kanon feel itself is tightly bound with the intake feature.

  • Base appearance matches Nayuki (blonde + blue eyes + blunt bangs) → lands cleanly on Nayuki within Kanon → Nayuki’s specific large intake (J/H/W/Z)
  • Base appearance partially matches multiple Kanon characters (AB’s brown + green + wavy bangs + half-up → Kaori + Sayuri blend) → doesn’t land on a single character, ends up as a Kanon-world synthesis, but with the constituent character group being intake-bearing, intakes still show, slightly smaller than J (AB)
  • Base appearance completely outside the Kanon group (hypothetically, low similarity to all intake-bearing Kanon characters) → the pull itself weakens and intakes should fade

So the NL reference isn’t “pulling individual character features” but “a hook that accesses the feature set of the entire work through the reference character.”
For a group like Kanon where a specific feature (intakes) is baked in as a cluster-wide prior, one NL reference is enough to surface that feature.
For works where the feature isn’t uniform across the group (FGO, with its diverse hair styles), the cluster-prior pull weakens.

This is the Kanon-version of the Toki finding: Anima’s cluster decision runs on three layers — “single character tag” + “work-level world anchor + cluster prior” + “appearance matching.”
Conversely, for transplanting a specific feature to a generic character, picking a reference character from a work where the feature is a cluster prior is the stable path. Kanon has a strong intake prior on its female cast, so it works cleanly as an NL reference hook.

Character popularity and identity binding

Condition V showed “Nero’s identity is harder to strip than Nayuki’s.”
A hypothesis: training data popularity / sample count determines binding strength.

  • Nayuki (Kanon, early-2000s visual novel) is an older character. Even internet-savvy users recognize her, but mainstream awareness is lower than current anime/games. Danbooru and other fan-art counts are also modest
  • Nero Claudius (Fate/Extra, Fate/Grand Order) is a post-2010 character. As one of FGO’s main characters, fan art exists in volume

The more training images, the higher the identity resolution pulled from character tags like alice schuberg or nero claudius, and the harder it gets to strip via the negative — that’s consistent.

This isn’t directly measured. It’s a hypothesis built from looking at outputs.
Measuring it properly would need running the J recipe across multiple characters and cross-comparing “intake summon ease” against “identity strip difficulty.”

Condition AC: W + Z combined upper-front angle

Combine W’s 22.5° angle with Z’s from above to get all three simultaneously:

  • Top-of-head half-up braid in the frame (Z had this)
  • Face nearly front-facing (W had this)
  • Intake at medium size or larger

Change the composition to from above, slightly turned to the side, almost front view, upper body, looking at viewer.
Add looking up to the negative to suppress the upward gaze, and three quarters view to suppress overrotation.

Condition AC image 1. Upper-front, nearly front-facing, braid + blue ribbon at the top, medium intake at temple, white blouse + gray vest Condition AC image 2. Upper-front, nearly front-facing, top-of-head braid present, white turtleneck Condition AC image 3. Upper-front, nearly front-facing, top-of-head braid present, white T-shirt Condition AC image 4. Upper-front, nearly front-facing, braid + blue ribbon at the top, white blouse + gray vest

4/4 hit all three simultaneously.
The top-of-head half-up braid weave and blue ribbon fit into the frame, the face is at a natural angle with no looking up, and the intake at the temples is confirmable at medium size.
Side effects are minimal too — the face-younger artifact from U is suppressed.
For “intake + composition + hairstyle detail” simultaneously in Anima, AC (upper-front + nearly front-facing + J recipe) is the current landing point.

The hero image of this post also lands on an AC-equivalent upper-front composition. The realistic landing spot for an intake-bearing practical character image in Anima naturally converged here.

The same character-tag-absorption pattern

This behavior is the inference-side mirror of a pattern I’d seen in character-LoRA training.

In the LoRA caption rewrite post for WAI-Anima character LoRAs, absorbing the hairstyle into the kanachan trigger made it impossible at inference to change the hairstyle — kanachan, twin tails kept getting pulled back to the original side ponytail.
The fix was to call out the hairstyle as an independent Danbooru tag (side ponytail) in the training data, and have the character tag absorb only the character core (face, hair color, eye color).
Independent tags can be swapped at inference; features burned into the character tag stay fixed alongside the character.

The intake case here is that same “character-tag absorption” happening at Anima’s base model level, observed from the inference side.
The minase nayuki character tag carries the intake shape along with the identity, while the standalone tag hair intakes or the natural-language intakes doesn’t activate the same way.

The split between tag-list activation paths and NL activation paths was visible in the 12,000-step LoRA training post too.
hair intakes here is a feature that sits on the boundary between firing and not firing depending on whether it’s in tag form or NL form.

References