当前位置: 首页 > news >正文

【笔记】Facefusion3.3.2 之 NSFW 检测屏蔽测试

记录于2025年08月21日

声明:

仅用于记录测试之用。

以下从修改意图具体实现两方面,记录我们对 FaceFusion 中 NSFW 检测功能的定制化改动,清晰梳理代码调整逻辑:

一、核心目标

通过修改代码,保留模型下载流程(仍会获取 NSFW 检测模型文件,因为没有改动模型触发下载及模型下载后的哈希hash校验部分,只做最少改动),但强制关闭实际检测逻辑,让 NSFW 检测功能失效,视频 / 图像处理时不再执行内容安全校验。

二、关键文件与修改点

1. content_analyser.py(NSFW 检测核心模块)

  • pre_check 函数
    原逻辑:检查模型依赖、触发下载 / 加载。
    修改后:直接 return False,跳过模型加载校验流程(但不影响模型下载,仅阻止运行时加载)。

    def pre_check() -> bool:  return False  # 强制返回 False,阻止模型加载  
    
  • detect_nsfw 函数
    原逻辑:调用 nsfw_1/nsfw_2/nsfw_3 模型,综合判断内容是否违规。
    修改后:直接 return False,无论输入如何,都判定为 “内容安全”,完全禁用检测逻辑。

    def detect_nsfw(vision_frame: VisionFrame) -> bool:  return False  # 强制返回 False,禁用 NSFW 检测  
    

2. core.py(模块初始化与预检查)
  • common_pre_check 函数
    原逻辑:遍历 content_analyser 等模块,执行 pre_check 校验,确保功能可用。
    修改后:直接 return True,跳过所有模块的预检查流程(包括 content_analyser 的校验),让程序绕过 NSFW 模块的合法性验证。

    def common_pre_check() -> bool:  return True  # 强制返回 True,跳过模块预检查  
    

三、修改后效果总结

  1. 模型下载
    代码中未完全阻断模型下载触发逻辑(如 collect_model_downloads 仍可能被调用),因此 NSFW 模型仍会被下载,但下载后不会实际加载、使用。

  2. 检测功能
    detect_nsfw 直接返回 False,且原检测逻辑被注释,NSFW 检测完全失效,任何内容都会被判定为 “安全”。

  3. 模块校验
    common_pre_check 跳过校验并返回 True程序不会因 NSFW 模块 “未正确加载” 报错,流程可正常执行(即使检测功能关闭)。

四、潜在影响与补充建议

  • 潜在问题

    • 若后续代码依赖 “NSFW 检测结果”(如内容过滤、安全提示),可能因始终返回 False 出现逻辑异常;
    • 模型下载会占用网络、存储资源,若需彻底禁用下载,需额外修改 collect_model_downloads 等触发下载的代码。
  • 补充建议
    若想彻底阻止模型下载,可进一步注释 / 删除 collect_model_downloads 中触发下载的逻辑(如 create_static_model_setconditional_download_hashes 等调用);
    若需 “保留检测能力但调整阈值”,可恢复原检测逻辑,修改返回条件(如调整 rate > 10.0 的判断)。

简言之,我们的修改通过 “注释关键逻辑 + 强制返回固定值”,实现了 “保留模型下载、完全关闭 NSFW 检测、绕过模块校验” 的效果,让 NSFW 功能在流程中 “仅保留资源下载,实际检测被剥离” 。

若后续有版本更新,原作者团队可能继续升级 NSFW 检测功能及在流程中改变检测逻辑,从而导致这种方式屏蔽失效,请知悉!

怎么使用嵌套虚拟环境实现项目部署之virtualenv嵌套conda绕开安装环境检测实现.venv部署facefusion_python虚拟环境嵌套-CSDN博客

http://www.dtcms.com/a/343457.html

相关文章:

  • 代码随想录算法训练营27天 | ​​56. 合并区间、738.单调递增的数字、968.监控二叉树(提高)
  • 机器学习6
  • 机器学习-聚类算法
  • 告别研发乱局,决胜项目先机——全星APQP系统,为汽车部件制造商量身打造的数字化研发管理引擎
  • GPT5 / 深度研究功能 无法触发
  • 4.Shell脚本修炼手册---变量进阶知识
  • 加速你的故障排查:使用 Elasticsearch 构建家电手册的 RAG 应用
  • 如何实现文档处理全流程自动化?
  • 如何在日常开发中高效使用 Copilot
  • 无人机高科技,翱翔未来新天地
  • 对比学习与先验知识引导的特征提取网络在胶质瘤高风险复发区域预测中的应用|文献速递-深度学习人工智能医疗图像
  • GS-IR:3D 高斯喷溅用于逆向渲染
  • 2025年08月21日Github流行趋势
  • AI动画剧本、脚本、分镜头生成提示词
  • 【Flutter】Container设置对齐方式会填满父组件剩余空间
  • 【机器学习 / 深度学习】基础教程
  • PyTorch数据处理工具箱(可视化工具)
  • 嵌入式学习---(网络编程)
  • burpsuite2022.11激活步骤【超详细】
  • [系统架构设计师]通信系统架构设计理论与实践(十七)
  • anaconda+python+pycharm+mysql
  • 项目1总结其三(图片上传功能)
  • 站长导航网站,网址导航网站大全,网址导航网站合集,网址导航网址目录,网址导航网站推荐,欢迎提交收录
  • ICMP 协议分析
  • 从零开发Java坦克大战Ⅱ (下)-- 从单机到联机(完整架构功能实现)
  • PostgreSQL15——管理表空间
  • 基于Matlab的饮料满瓶检测图像处理
  • 宝塔面板深度解析:从快速部署到高效运维的全流程指南
  • 联想电脑使用U盘装机时,开机按F12时无法显示USB设备启动方式
  • 【python】python测试用例模板