Files
Claude 3adebb731f Rename FunPack to FunUI (5.0.3 Classy Chopper): /fun endpoint, wink logo, load-time migration of old names
Old project/workflow names and browser settings migrate on load; /funpack redirects to /fun.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016acRss69eH1235eRdFTZHY
2026-10-25 13:11:03 +00:00

30 lines
1.2 KiB
Python

"""Prompt markup -- (word:1.5), [phrase@2-4], [a|b]. A node-only module.
Two nodes, because the markup has to be split around the encoder: it must come
OUT before the encoder sees the text (Qwen reads "(word:1.5)" as punctuation in
your sentence), and it can only be applied AFTER, once there is a conditioning
to find the words in and a model to bias.
text -> Prompt Markup -> clean -> (any H3 encode node) -> positive
-> markup ---------------------> Apply Prompt Markup
(+ model, clip, latent)
Where the words sit, and how seconds map to rows, is the MODEL's business: model
modules announce `text_tokenizer`, `prompt_rows` and `video_time_rows`. With
none that recognise the encoder, the markup is stripped and said to be unused --
never silently ignored.
The weight is an attention BIAS, and SLA runs any biased call dense, so a run
with weights or timed phrases runs dense attention.
"""
from .nodes import FunUIApplyPromptMarkup, FunUIPromptMarkup
ID = "conditioning_prompt_markup"
TITLE = "Prompt markup"
STAGE = "conditioning"
CATEGORY = "conditioning"
STATUS = "proven"
NODES = [FunUIPromptMarkup, FunUIApplyPromptMarkup]