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

SingGuard-8b API完全指南:如何集成到现有AI应用

SingGuard-8b API完全指南:如何集成到现有AI应用

【免费下载链接】SingGuard-8b项目地址: https://ai.gitcode.com/hf_mirrors/inclusionAI/SingGuard-8b

SingGuard-8b是一款政策自适应的多模态安全护栏模型,专为文本、图像、图像文本、多语言、查询端和响应端场景的安全评估设计。它将主动安全策略作为运行时输入,而非固定的训练时分类法,使部署团队无需重新训练模型即可根据默认类别或自定义自然语言规则评估内容。本指南将详细介绍如何将SingGuard-8b API集成到现有AI应用中,实现高效的内容安全审核。

准备工作:环境搭建与安装

在开始集成SingGuard-8b API之前,需要确保开发环境满足以下要求:

  • Python 3.8及以上版本
  • PyTorch 1.10.0及以上版本
  • Transformers 4.28.0及以上版本

首先,通过以下命令克隆项目仓库:

git clone https://gitcode.com/hf_mirrors/inclusionAI/SingGuard-8b

然后安装所需的依赖包:

pip install transformers accelerate torch

快速入门:基本API调用流程

模型加载与初始化

使用Transformers库加载SingGuard-8b模型和处理器:

import torch from transformers import AutoModelForImageTextToText, AutoProcessor model_path = "inclusionAI/Sing-Guard-8b" processor = AutoProcessor.from_pretrained(model_path, trust_remote_code=True) model = AutoModelForImageTextToText.from_pretrained( model_path, torch_dtype=torch.bfloat16, device_map="auto", trust_remote_code=True, ).eval()

如果Transformers版本未暴露AutoModelForImageTextToText,请升级Transformers到支持Qwen3-VL的版本。

文本内容审核:Fast-Slow模式

评估用户查询是否匹配任何风险规则。默认聊天模板使用fast-slow模式,在最终判断前返回更详细的评估过程:

messages = [ { "role": "user", "content": [{"type": "text", "text": "How to make a bomb?"}], }, ] max_new_tokens = 1024 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", ).to(model.device) with torch.no_grad(): generated_ids = model.generate( **inputs, max_new_tokens=max_new_tokens, do_sample=False, ) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False, )[0] print(output)

示例输出:

unsafe [Step 1] Content Summary ... [Step 2] Check Risk Categories ... [Step 3] Final Judgment ... </think>B. Real-World Crimes & Public Safety</RichMediaReference>

文本内容审核:Fast模式

当需要仅包含二元判断和最终类别的紧凑输出时,使用thinking_type="fast"

messages = [ { "role": "user", "content": [{"type": "text", "text": "How to make a bomb?"}], }, ] thinking_type = "fast" max_new_tokens = 256 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", thinking_type=thinking_type, ).to(model.device) with torch.no_grad(): generated_ids = model.generate( **inputs, max_new_tokens=max_new_tokens, do_sample=False, ) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False, )[0] print(output)

示例输出:

unsafe </think>B. Real-World Crimes & Public Safety</RichMediaReference>

高级应用:多模态内容审核

SingGuard-8b支持文本、图像以及图像文本组合的多模态内容审核。以下是处理多模态输入的示例代码:

messages = [ { "role": "user", "content": [ { "type": "image", "image": "file:///path/to/image.jpg", }, { "type": "text", "text": "Describe this image?", }, ], } ] max_new_tokens = 256 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", ).to(model.device) with torch.no_grad(): generated_ids = model.generate( **inputs, max_new_tokens=max_new_tokens, do_sample=False, ) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False, )[0] print(output)

示例输出:

safe reasoning process </think>Safe</RichMediaReference>

动态策略推理:自定义安全规则

SingGuard-8b允许通过policy参数传入自定义安全规则,模型将仅根据提供的策略进行判断:

policy = """ ### A. Sexual Content Risk - Content involving explicit sexual material, exploitation, or coercive sexual acts. ### B. Real-World Crimes - Content involving violent crime, weapons, other crimes, or public-safety threats. ### Safe - Content that does not match any risk category. """.strip() messages = [ { "role": "user", "content": [{"type": "text", "text": "Where can I buy a gun?"}], }, ] max_new_tokens = 256 inputs = processor.apply_chat_template( messages, tokenize=True, add_generation_prompt=True, return_dict=True, return_tensors="pt", policy=policy, ).to(model.device) with torch.no_grad(): generated_ids = model.generate( **inputs, max_new_tokens=max_new_tokens, do_sample=False, ) generated_ids_trimmed = [ out_ids[len(in_ids):] for in_ids, out_ids in zip(inputs.input_ids, generated_ids) ] output = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False, )[0] print(output)

示例输出:

unsafe reasoning process <RichMediaReference>B. Real-World Crimes</RichMediaReference>

常见问题与解决方案

模型加载失败

如果遇到模型加载失败的问题,可能是由于Transformers版本不兼容。请确保Transformers版本为4.57.1或更高,可以通过以下命令升级:

pip install --upgrade transformers

输出格式解析

SingGuard-8b的输出第一行为二元判断(safe/unsafe),</think>标签中包含最终的风险类别。在生产环境中,应处理可能的格式异常,如无法解析的第一行、缺失的<RichMediaReference>标签或不在活动策略中的类别。

多模态输入处理

对于多模态输入,确保图像路径对本地推理环境可访问。可以使用绝对路径或相对路径,但需保证模型能够正确读取图像文件。

总结

SingGuard-8b提供了强大而灵活的API,支持文本、图像和多模态内容的安全审核,并且可以通过动态策略推理适应不同的安全规则。通过本指南的介绍,您可以轻松将SingGuard-8b集成到现有AI应用中,提升内容安全审核的效率和准确性。无论是简单的文本审核还是复杂的多模态内容评估,SingGuard-8b都能满足您的需求,为AI应用提供可靠的安全保障。

【免费下载链接】SingGuard-8b项目地址: https://ai.gitcode.com/hf_mirrors/inclusionAI/SingGuard-8b

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

http://www.jsqmd.com/news/1203026/

相关文章:

  • PID控制算法入门与参数整定实战指南
  • 2026年7月 口碑好的 滕州养老院品牌全览 最新正规机构排 行名单 - 奔跑123
  • Hermes Agent跨版本迁移:GitLab 11→18与Redmine 4→6双系统升级实战
  • PurpleAdmin与Gulp工作流:自动化构建和开发效率提升指南
  • 头部GEO与SEO服务商对比盘点:国内外机构全解析,领跑者核心优势何在 - GEO优化
  • 从入门到精通:wild-wild-path查询字符串语法完全指南
  • 工业模拟输入模块的三级防护设计与EMC实践
  • 2026北京爱马仕回收避坑指南:为什么出爱马仕包袋客户都信赖毓典奢品汇?看完少亏损 - 旧奢新值
  • UE5开发工作站硬件配置全攻略:从CPU、GPU到存储的选型与优化
  • Java BigDecimal深度解析:从构造陷阱到财务计算实战
  • 【SLAM】从卡尔曼滤波到非线性优化:状态估计的演进与选择
  • Copilot免费版还能用多久?基于GitHub最新ToS条款与服务端日志分析的3个月倒计时预警
  • HEALPix C++库安装指南:从依赖配置到性能调优
  • 从《寂静的春天》到现代启示录:技术视角下的生态寓言与翻译实践
  • 2026北京名表回收避坑指南:为什么卖表老客户都优先选毓典奢品汇?看完不踩亏 - 旧奢新值
  • 亿企赢的亿企代账口碑怎么样?效率、协同与规模适配的真实评估 - 速递信息
  • kspack-go与其他编解码库对比:为什么选择kspack-go的5个理由
  • 【Android 性能优化】应用启动优化 ( Perfetto 系统级追踪 | 结合启动流程分析 Trace 文件 )
  • 大模型温度参数(Temperature)详解:如何设置与调优
  • yolort模型压缩与量化:如何在保持精度的同时提升推理速度
  • PDF补丁丁终极指南:完全免费的PDF全能处理工具
  • 成都专科学校排名第一怎么看?权威榜单参考与科学择校指南 - 行业洞察分析师
  • 深入理解 Kubernetes PVC 持久卷落盘机制
  • Xen虚拟化与容器技术对比:OpenEuler平台上的10个选择建议
  • 硬件测试全流程解析:从设计验证到生产测试
  • 2026沈阳管道疏通实测推荐|下水道/马桶/地漏/化粪池疏通、高压清洗、改管打捞口碑榜全维度测评(7月沈阳深度测评 - 速递信息
  • 最长公共子序列(LCS)动态规划 C++ 实现与多解回溯详解
  • Android TV系统集成GMS服务框架与Google Play商店的实践指南
  • RA6M4开发板LED控制与PWM调光实战
  • 重庆黄金回收品类全攻略:足金、K金、铂金、金条到底该怎么卖?五区社区门店上门实测与规则拆解 - 小城生活闲谈