Files
hair/docs/gpu-worker改动说明.md
T
2026-06-17 23:27:34 +08:00

3.0 KiB
Raw Blame History

GPU Worker 改动说明

测试页面已新增字段,worker 侧需对应接收并使用。

涉及接口

接口 路径 新增字段
接口 2C端生发) POST /api/v1/hair/grow prompt
接口 3B端生发) POST /api/v1/hair/grow-b prompt

1. 新增 prompt 参数

接口 2/api/v1/hair/grow

Handler 签名新增:

prompt: str = Form(default="补充遮罩区域的头发", description="ComfyUI 提示词,会替换工作流节点60的文本"),

透传链路:

handler → generate_grow_results(image, gender, use_mask, prompt)
        → comfyui.run(buf, prompt=prompt)

接口 3/api/v1/hair/grow-b

Handler 签名新增:

prompt: str = Form(default="补充遮罩区域的头发", description="ComfyUI 提示词,会替换工作流节点60的文本"),

透传链路:

handler → generate_grow_b(marked, use_mask, prompt)
        → comfyui.run(buf, prompt=prompt)

hairline/comfyui.py 改动

  1. 新增节点常量:
_PROMPT_NODE = "60"    # JjkText:提示词
  1. run() 函数签名改为:
def run(rgba_png_bytes: bytes, timeout: float = COMFY_TIMEOUT, prompt: str = None) -> bytes:
  1. run() 内部,注入图片和 seed 之后(约第81行后)加入:
if prompt is not None:
    wf[_PROMPT_NODE]["inputs"]["text"] = prompt

hairline/service.py 改动

两个服务函数各加一个 prompt 参数,透传给 comfyui.run()

  • generate_grow_results(image_bgr, gender, use_mask=True, prompt=None) — 两处 comfyui.run(buf.getvalue()) 都改为 comfyui.run(buf.getvalue(), prompt=prompt)
  • generate_grow_b(marked_bgr, use_mask=True, prompt=None)comfyui.run(buf.getvalue()) 改为 comfyui.run(buf.getvalue(), prompt=prompt)

2. 已有字段回顾

use_maskprompt 测试页面均已就绪,表单字段一览:

接口 字段 类型 默认值 说明
2 image_file file 用户照片(三选一)
2 image_url string 同上
2 image_base64 string 同上
2 gender string female male / female
2 use_mask bool true inpaint 遮罩开关
2 prompt string 补充遮罩区域的头发 ComfyUI 提示词
3 marked_image_file file 划线图(三选一)
3 marked_image_url string 同上
3 marked_image_base64 string 同上
3 use_mask bool true 画发际线开关
3 prompt string 补充遮罩区域的头发 ComfyUI 提示词

3. 当前工作流提示词节点

add_hair.json 中节点 60JjkText)为提示词节点,当前硬编码文本:

补充遮罩区补充遮罩区域内的头发,头发填满遮罩区域。发际线往下挡住额头

comfyui.run() 收到 prompt 参数后将替换此文本。