You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stable Diffusion插件ADetailer API图生图参数异常及编写规范咨询

ADetailer API图生图参数问题排查与正确写法

问题排查

你的代码存在两个核心问题导致ADetailer未生效:

  1. 去噪强度参数类型错误:denoising_strength是包含4个值的数组,但Stable Diffusion图生图接口和ADetailer的ad_denoising_strength都要求单个数值,数组会导致参数解析失败,直接跳过ADetailer执行。
  2. ADetailer参数结构不符合规范:ADetailer的args数组需要以布尔值(表示是否启用插件)开头,后续才是检测器配置对象的数组,你的写法缺少启用标识,且配置对象的层级错误。

修正后的参数代码

// 从数组中选取单个去噪强度值,可根据需求选择对应索引
const selectedDenoisingStrength = denoisingStrength[0];

const params = {
  ...sdParameters,
  init_images: [image.toString("base64")],
  denoising_strength: selectedDenoisingStrength, // 使用单个数值
  width: adjustWidth,
  height: adjustHeight,
  alwayson_scripts: {
    ADetailer: {
      args: [
        true, // 必须添加的启用标识
        [
          {
            ad_model: "face_yolov8n.pt",
            ad_mask_max_ratio: 0.03,
            ad_denoising_strength: selectedDenoisingStrength, // 同样使用单个数值
            // 可按需添加ad_prompt、ad_negative_prompt等精细化参数
          }
        ]
      ]
    }
  }
};

ADetailer参数正确编写指南

  • 基础结构要求:alwayson_scripts.ADetailer.args必须遵循[启用状态, 检测器配置数组]格式:
    • 第一个元素是布尔值true(启用)或false(禁用)
    • 第二个元素是数组,每个元素对应一个检测器的配置对象
  • 核心参数说明:
    • ad_model:指定使用的检测器模型,比如face_yolov8n.pt、hand_yolov8n.pt等,需与WebUI中ADetailer目录下的模型名完全一致
    • ad_denoising_strength:检测区域的去噪强度,取值0-1,建议与全局去噪强度保持一致或略低
    • ad_mask_max_ratio:最大蒙版比例,超过该比例的检测目标会被忽略,取值0-1
    • ad_prompt/ad_negative_prompt:针对检测区域的正负提示词,用于精细化修正目标细节
  • 注意事项:
    • 所有数值类型参数必须是单个数字,不能传入数组
    • 确保ADetailer插件已在Stable Diffusion WebUI中正确安装并启用

内容的提问来源于stack exchange,提问作者Daiki Masaoka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 02:27:51