🐟Unified Prompt Generator
Build a full character prompt from dropdowns
- final_prompt
If you've ever built a character prompt by hand - typing out hair color, skin tone, outfit, pose, lighting, camera angle, all comma-separated and hoping you didn't forget one - UnifiedPromptGenerator is that whole process turned into a node full of dropdowns. Pick from curated presets for every attribute, and it hands you back one finished prompt string, ready to plug into your text encoder. No more re-typing "masterpiece, best quality" for the hundredth time.
How it works
There's no cleverness under the hood - it's a big lookup table. Every field is an enum: you pick an option like wavy.beach: rose gold beach waves with dark roots, and the node substitutes in the English description behind it. Set enough fields, hit run, and it concatenates all your selections (skipping anything left on none) into a single final_prompt string. It covers a lot of ground: physical description (age/gender, ethnicity, hair, skin, eyes, lips, body type), outfit (top, bottom, shoes, hat, jewelry, glasses, handbag), and the photography side - pose, expression, scene, composition, camera view, angle, focus, style, and a trailing quality-tag boilerplate. That's 23 required fields in total, which sounds like a lot until you notice most of them already have sensible defaults, so you can leave half of them alone.
The inputs and outputs that matter
You won't touch all 23 fields every time. The ones worth dialing in:
age_gender,hair,body- set your character's identity. These default to a specific look rather than "none," so if you don't touch them you'll get the defaults every run.top/bottom/shoes/hat/jewelry/glasses/handbag- all default tonone, meaning outfit is left unspecified unless you pick something.pose,expression,scene_preset- these are where most of the creative variation lives;poseandscene_presetdefault tononetoo.quality- a toggle between nothing and a fixed "masterpiece, best quality, highly detailed..." boilerplate tag string appended at the end.
The single output, final_prompt (STRING), wires straight into a CLIP Text Encode node as your positive prompt.
How to install it
Search ComfyUI-QHNodes in ComfyUI Manager, or clone it by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/liuqianhonga/ComfyUI-QHNodes.git
Restart ComfyUI and the node shows up under the 🐟QHNodes category. No extra models or heavy dependencies - this is a pure string-assembly node, so there's nothing to download. Worth knowing going in: this is a small, personal-use pack (the author says as much in the README - built for their own workflows, shared in case it's useful to someone else) rather than a widely-adopted one, so don't expect a big community thread if you hit something odd. You're mostly on your own with the README and the node itself.
Common issues & troubleshooting
The prompt is way too long and half of it seems ignored. With every field filled in, final_prompt can run to several hundred words. If you're on an SD 1.5/SDXL-family checkpoint, the CLIP text encoder truncates at 77 tokens per chunk - anything past that point is silently dropped, so your carefully chosen shoes and jewelry might never reach the model. This node is a much better match for checkpoints with a full-sentence text encoder (Flux, and most 2026-era models), which actually read the whole thing as an instruction rather than a bag of tokens.
The quality boilerplate doesn't seem to do anything. That's expected on newer, LLM-encoded checkpoints - masterpiece, best quality, 8k uhd is vocabulary trained into SD 1.5/SDXL-style CLIP encoders, and it's essentially inert on models with a different text encoder. Turn it off (set quality to none) rather than assuming it's broken.
Output looks like a mash of two languages. Every dropdown label shows an English phrase followed by a Chinese translation in parentheses - that's just the picker UI. Only the English half before the parenthesis is meant to end up in the actual prompt; if you're seeing Chinese characters in your final image's prompt overlay, something upstream (a text-display node, a screenshot) is showing you the raw enum label rather than the resolved string.
Inputs (23)
| Name | Type | Default | Description |
|---|---|---|---|
| age_gender | COMBO | young adult female(年轻女性) | 12 options: none(无), female.young: young adult female in early twenties(女性.年轻:二十出头的年轻女性), female.teen: teenage girl with youthful features(女性.少女:青春活力的少女), female.mature: mature woman in early thirties(女性.成熟:三十出头的成熟女性), female.middle: middle-aged woman with elegant bearing(女性.中年:优雅气质的中年女性), male.young: young adult male in early twenties(男性.年轻:二十出头的年轻男性), +6 |
| race | COMBO | east asian(东亚人) | 13 options: none(无), asian.east: east asian(亚洲.东亚:东亚人), asian.southeast: southeast asian(亚洲.东南亚:东南亚人), asian.south: south asian(亚洲.南亚:南亚人), european.north: northern European(欧洲.北欧:北欧人), european.south: southern European(欧洲.南欧:南欧人), +7 |
| hair | COMBO | long straight black hair, middle-parted(黑色直长发,中分) | 31 options: none(无), straight.long: long straight black hair with middle part(直发.长发:黑色直长发,中分), straight.medium: shoulder-length straight brown hair with side part(直发.中长:棕色肩长直发,侧分), straight.bob: sleek black bob with straight bangs(直发.短发:黑色齐肩直发,齐刘海), straight.pixie: platinum blonde pixie cut with side-swept bangs(直发.精灵:铂金金色精灵短发,侧扫刘海), straight.layered: long layered dark hair with face-framing pieces(直发.层次:黑色长层次直发,脸部修饰层), +25 |
| skin | COMBO | fair skin with rosy undertones(白皙肤色带玫瑰底色) | 26 options: none(无), fair.rosy: fair skin with rosy undertones and natural flush(白皙.玫瑰:白皙肤色带玫瑰底色和自然红润), fair.porcelain: porcelain skin with subtle pink undertones(白皙.瓷白:瓷白肌肤带淡淡粉红底色), fair.ivory: ivory skin with warm golden undertones(白皙.象牙:象牙白肤色带温暖金调), fair.peach: light skin with peachy undertones(白皙.桃色:浅色肌肤带桃色底色), fair.cream: cream skin with natural luminosity(白皙.奶油:奶油色肌肤带自然光泽), +20 |
| eyes | COMBO | almond-shaped eyes(杏仁眼) | 13 options: none(无), shape.almond: classic almond-shaped eyes with gentle upward tilt(形状.杏仁:经典杏仁形状,温和上扬), shape.round: large round eyes with bright expression(形状.圆形:明亮有神的大圆眼), shape.narrow: elegant narrow eyes with subtle lift(形状.细长:优雅细长眼型,微微上扬), asian.monolid: East Asian monolid eyes with subtle crease(亚洲.单眼皮:东亚单眼皮,细微褶皱), asian.double: East Asian double-lid eyes with defined crease(亚洲.双眼皮:东亚双眼皮,清晰褶皱), +7 |
| lips | COMBO | light pink lips(浅粉色嘴唇) | 13 options: none(无), shape.full: full plump lips with defined cupid's bow(形状.丰满:丰满饱满,清晰丘比特之弓), shape.thin: elegant thin lips with subtle curves(形状.纤薄:优雅纤薄,微妙曲线), shape.heart: heart-shaped lips with pronounced peaks(形状.心形:心形唇峰,突出唇尖), color.pink: natural light pink lips with rosy tint(颜色.粉色:自然浅粉,玫瑰色调), color.red: rich red lips with glossy finish(颜色.红色:丰富红色,光泽质感), +7 |
| body | COMBO | perfect hourglass figure: slim waist with full D-cup bust and hips in ideal proportion(完美沙漏身材:纤细腰身配合D罩杯丰满上围和臀部的理想比例) | 31 options: none(无), hourglass.perfect: slim waist with full D-cup bust and hips in ideal proportion(沙漏.完美:纤细腰身配合D罩杯丰满上围和臀部的理想比例), hourglass.curvy: voluptuous figure with prominent E-cup bust, tiny waist and full hips(沙漏.丰满:E罩杯丰满上围,纤细腰身和丰满臀部), hourglass.athletic: toned figure with defined waist, athletic C-cup bust and sculpted hips(沙漏.运动:紧致身材,收腰,C罩杯运动感上围和雕塑感臀部), hourglass.slim: slender hourglass with B-cup bust, subtle curves and balanced proportions(沙漏.纤细:纤细沙漏体型,B罩杯上围,柔和曲线和平衡比例), hourglass.petite: delicate hourglass with A-cup bust, small frame and dainty features(沙漏.娇小:精致小巧沙漏体型,A罩杯上围,娇小特征), +25 |
| top | COMBO | none(无) | 66 options: none(无), yoga.sports_bra: form-fitting sports bra with moisture-wicking fabric(瑜伽.运动内衣:贴身运动内衣,吸汗面料), yoga.crop_top: cropped yoga top with racerback design(瑜伽.短款上衣:露脐瑜伽上衣,挖背设计), yoga.tank_top: fitted yoga tank with built-in support(瑜伽.背心:修身瑜伽背心,内置支撑), yoga.long_sleeve: seamless long sleeve yoga top with thumb holes(瑜伽.长袖:无缝瑜伽长袖,拇指孔设计), yoga.cover_up: loose-fit yoga cover up with draped design(瑜伽.罩衫:宽松瑜伽罩衫,垂坠设计), +60 |
| bottom | COMBO | none(无) | 55 options: none(无), yoga.leggings: high-waisted compression yoga leggings with four-way stretch(瑜伽.紧身裤:高腰压缩瑜伽裤,四向拉伸), yoga.capri: mid-calf length yoga pants with wide waistband(瑜伽.七分裤:中长瑜伽裤,宽腰带设计), yoga.shorts: high-rise yoga shorts with side pockets(瑜伽.短裤:高腰瑜伽短裤,侧边口袋), yoga.flare: bootcut yoga pants with tummy control(瑜伽.喇叭裤:微喇瑜伽裤,收腹设计), yoga.harem: loose-fit yoga harem pants with tapered ankles(瑜伽.哈伦裤:宽松瑜伽哈伦裤,收脚设计), +49 |
| shoes | COMBO | none(无) | 36 options: none(无), yoga.barefoot: barefoot for maximum ground connection(瑜伽.赤脚:赤脚以获得最佳地面接触), yoga.grip_socks: non-slip yoga socks with silicone grips(瑜伽.防滑袜:硅胶防滑瑜伽袜), yoga.minimal: minimalist yoga shoes with flexible sole(瑜伽.极简:柔软鞋底极简瑜伽鞋), yoga.slip_on: breathable slip-on yoga shoes with mesh upper(瑜伽.一脚蹬:透气网面一脚蹬瑜伽鞋), yoga.studio: lightweight studio wrap shoes for yoga practice(瑜伽.工作室:轻便包裹式瑜伽练习鞋), +30 |
| hat | COMBO | none(无) | 31 options: none(无), sports.nike: white Nike Heritage86 cap with small swoosh logo(运动.耐克:白色Heritage86棒球帽配小勾标), sports.adidas: black Adidas Trefoil classic baseball cap(运动.阿迪达斯:黑色三叶草经典棒球帽), sports.puma: Puma curved visor cap with cat logo(运动.彪马:曲线帽檐配猫标棒球帽), sports.under: Under Armour mesh-back training cap(运动.安德玛:网眼背部训练帽), sports.nb: New Balance performance running cap(运动.新百伦:专业跑步帽), +25 |
| jewelry | COMBO | none(无) | 31 options: none(无), necklace.cartier: delicate Cartier Love necklace in rose gold(项链.卡地亚:玫瑰金Love项链), necklace.tiffany: Tiffany & Co. diamond pendant on platinum chain(项链.蒂芙尼:铂金链条钻石吊坠), necklace.vca: Van Cleef & Arpels Vintage Alhambra mother-of-pearl necklace(项链.梵克雅宝:复古四叶草珍珠母贝项链), necklace.bvlgari: Bulgari Serpenti diamond-encrusted snake necklace(项链.宝格丽:Serpenti钻石蛇形项链), necklace.chopard: Chopard Happy Diamonds floating crystal necklace(项链.萧邦:Happy Diamonds浮动水晶项链), +25 |
| glasses | COMBO | none(无) | 21 options: none(无), optical.rayban: Ray-Ban round metal frame optical glasses in gold(光学镜.雷朋:金色圆形金属框光学眼镜), optical.oliver: Oliver Peoples O'Malley classic tortoise frame(光学镜.奥利弗:O'Malley经典玳瑁框), optical.tom: Tom Ford blue light blocking clear frame glasses(光学镜.汤姆福特:防蓝光透明框眼镜), optical.dior: Dior butterfly-frame optical glasses in rose gold(光学镜.迪奥:玫瑰金蝴蝶框光学眼镜), optical.cartier: Cartier rimless titanium frame with gold details(光学镜.卡地亚:金色细节钛金属无框眼镜), +15 |
| handbag | COMBO | none(无) | 26 options: none(无), classic.hermes: Hermès Birkin 25 in black Togo leather(经典.爱马仕:黑色Togo皮革25寸铂金包), classic.chanel: Chanel Classic Flap in quilted black caviar(经典.香奈儿:黑色鱼子酱皮绗缝经典翻盖包), classic.kelly: Hermès Kelly 28 in gold epsom leather(经典.凯莉:金色Epsom皮革28寸凯莉包), classic.lady: Christian Dior Lady Dior in blush pink lambskin(经典.迪奥:粉色羊皮Lady手提包), classic.boy: Chanel Boy Bag in dark blue calfskin(经典.Boy:深蓝色小牛皮Boy包), +20 |
| pose | COMBO | none(无) | 22 options: none(无), standing.contrapposto: standing with weight on one leg, hip slightly tilted, shoulders balanced, arms relaxed(站姿.对比姿势:重心在一条腿上,臀部微倾,肩膀平衡,手臂放松), standing.fashion: standing straight, one foot slightly forward, hand on hip, chin slightly down(站姿.时尚:笔直站立,一只脚略前,手放臀部,下巴略低), standing.s_curve: standing with curved body line, one hip out, shoulders back, head gracefully tilted(站姿.S曲线:站姿体现曲线,一侧臀部突出,肩膀后收,头部优雅倾斜), sitting.cross_legged: sitting relaxed on chair, legs elegantly crossed, hands naturally placed in lap(坐姿.翘腿:放松坐在椅子上,优雅交叉双腿,手自然放在大腿上), sitting.edge_perch: sitting on furniture edge, one leg crossed over knee, upper body turned slightly(坐姿.边缘:坐在家具边缘,一条腿搭在膝盖上,上身稍微转动), +16 |
| expression | COMBO | calm expression, looking directly at the camera(平静的表情,直视相机) | 21 options: none(无), neutral.calm: calm expression, looking directly at the camera(自然.平静:平静的表情,直视相机), neutral.serene: serene expression with slight smile(自然.安详:安详的表情,淡淡的微笑), neutral.focused: focused expression looking at something nearby(自然.专注:专注的表情,看着近处), neutral.thoughtful: thoughtful look with parted lips(自然.沉思:若有所思的表情,双唇微启), neutral.dreamy: dreamy expression looking into distance(自然.梦幻:梦幻的表情,望向远方), +15 |
| scene_preset | COMBO | none(无) | 23 options: none(无), commercial.mall: luxury brand flagship store facade with elegant window displays, mall atrium skylight casting soft diffused light from above on subject's face and outfit while illuminating store displays with bright even lighting, creating gentle shadows under cheekbones and subtle highlights on hair, environment filled with balanced ambient light that reveals architectural details(商业.商场:优雅橱窗陈列的旗舰店外立面,商场中庭天窗从上方投射柔和漫射光打在人物脸部和服装上,同时明亮均匀地照亮商店展示,在颧骨下方形成温和阴影,头发上产生细腻光泽,环境充满平衡的环境光展现建筑细节), commercial.cafe: cute themed cafe with pastel decor and neon signs, warm string lights creating a soft glow around subject's silhouette while casting gentle shadows across face, neon accents adding colorful highlights to hair and skin, ambient cafe lighting providing warm fill light that softens features and illuminates decor details(商业.咖啡:粉彩装饰与霓虹灯的主题咖啡店,温暖串灯在人物轮廓周围创造柔和光晕并在脸部投射温和阴影,霓虹灯为头发和肌肤添加彩色高光,咖啡店环境光提供温暖补光柔化特征并照亮装饰细节), natural.sunset: seaside boardwalk with palm trees and ocean view, golden hour sunlight casting long dramatic shadows while creating warm rim light around subject's silhouette, soft reflected light from ocean providing gentle fill light on face, environment bathed in rich amber tones with palm shadows creating dynamic patterns(自然.日落:棕榈树和海景木栈道,黄金时刻阳光投射戏剧性长阴影同时在人物轮廓周围创造温暖轮廓光,海面反射的柔光为脸部提供温和补光,环境沐浴在丰富的琥珀色调中,棕榈树影创造动态图案), indoor.studio: photo studio with white cyclorama background, main light sculpting facial features with soft shadows, fill light gently illuminating shadow areas, rim light defining body silhouette against background, reflectors providing subtle highlights in eyes and hair(室内.摄影棚:白色无限背景,主光塑造面部特征形成柔和阴影,补光温和照亮阴影区域,轮廓光勾勒人物身体轮廓,反光板在眼睛和头发上创造细腻高光), night.urban: bustling shopping district with fashion boutiques and neon signs, colorful neon lights casting vibrant highlights across face and outfit, street lamps providing warm top light, shop windows adding soft fill light from multiple angles, creating a dynamic interplay of colored shadows and highlights(夜景.商业区:时尚精品店和霓虹招牌的繁华商业区,彩色霓虹灯在脸部和服装上投射鲜艳高光,路灯提供温暖顶光,橱窗提供多角度柔和补光,营造色彩阴影和高光的动态交互), +17 |
| composition | COMBO | centered full-length figure composition with balanced negative space(居中全身人物构图,平衡留白) | 13 options: none(无), basic.centered: centered full-length figure composition with balanced negative space(基础.居中:居中全身人物构图,平衡留白), basic.thirds: rule of thirds composition with figure on right third(基础.三分:三分法构图,人物位于右三分线), basic.golden: golden ratio composition with figure at power point(基础.黄金:黄金分割构图,人物位于重要点), basic.symmetry: symmetrical composition with figure in center(基础.对称:对称构图,人物居中), dynamic.diagonal: diagonal composition with dynamic lines(动态.对角:对角线构图,动态线条), +7 |
| view | COMBO | full-body view from medium distance, figure at 70% frame height(中等距离全身视角,人物占画面70%高度) | 13 options: none(无), standard.full: full-body view from medium distance, figure at 70% frame height(标准.全身:中等距离全身视角,人物占画面70%高度), standard.wide: wide establishing view showing full environment(标准.广角:展示完整环境的广角视角), standard.balanced: medium-wide view balancing figure and environment(标准.平衡:平衡人物与环境的中广角视角), intimate.close: close full-body view with minimal environment(私密.近景:最少环境的近距离全身视角), intimate.personal: intimate full-body view from close distance(私密.个人:近距离私密全身视角), +7 |
| angle | COMBO | eye-level angle from a comfortable distance(舒适距离的平视角度) | 13 options: none(无), eye.standard: eye-level angle from a comfortable distance(平视.标准:舒适距离的平视角度), eye.dutch: eye-level dutch angle from medium distance(平视.倾斜:中等距离的倾斜平视角度), eye.natural: natural eye-level from slight distance(平视.自然:略远处的自然平视), high.slight: slightly elevated angle showing more environment(高角.略高:略微高角度以显示更多环境), high.overhead: high angle shot with environmental context(高角.俯视:带环境背景的高角度拍摄), +7 |
| focus | COMBO | deep focus with sharp details from foreground to background(前景到背景都清晰的深焦) | 10 options: none(无), deep.standard: deep focus with sharp details from foreground to background(深焦.标准:前景到背景都清晰的深焦), deep.ultra: ultra sharp focus throughout entire frame(深焦.超清:整个画面超清晰对焦), deep.cinematic: cinematic deep focus with crystal clear environment(深焦.电影:电影感深焦,环境清晰可见), technical.balanced: balanced focus with crisp details in all planes(技术.平衡:所有层面都清晰细节的平衡对焦), technical.maximum: maximum depth of field with sharp environmental details(技术.最大:最大景深,环境细节清晰), +4 |
| style | COMBO | epic cinematic style with dramatic lighting and rich colors(史诗电影风格,戏剧性光影和丰富色彩) | 16 options: none(无), cinematic.epic: epic cinematic style with dramatic lighting and rich colors(电影.史诗:史诗电影风格,戏剧性光影和丰富色彩), cinematic.fantasy: ethereal fantasy style with soft dreamy atmosphere(电影.奇幻:空灵奇幻风格,柔和梦幻氛围), cinematic.oriental: mystical oriental style with elegant aesthetic(电影.东方:东方玄幻风格,优雅美学风格), fashion.editorial: high fashion editorial style with polished aesthetic(时尚.大片:高级时尚大片风格,精致美学), fashion.luxury: luxury lifestyle with sophisticated mood(时尚.奢华:奢华生活方式,精致氛围), +10 |
| quality | COMBO | masterpiece, best quality, highly detailed, ultra-realistic, professional photography, 8k uhd(杰作,最佳质量,高度细节,超写实,专业摄影,8K超高清) | 2 options: none(无), masterpiece, best quality, highly detailed, ultra-realistic, professional photography, 8k uhd(杰作,最佳质量,高度细节,超写实,专业摄影,8K超高清) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| final_prompt | STRING | — |