首页 > 其他分享 >SynthID Text 现已发布|在 AI 生成文本中应用不可见水印的新技术

SynthID Text 现已发布|在 AI 生成文本中应用不可见水印的新技术

时间:2024-11-07 12:57:16浏览次数:1  
标签:AI Text 水印 生成 文本 SynthID

你是否难以分辨一段文本是由人类撰写的,还是 AI 生成的?识别 AI 生成内容对于提升信息可信度、解决归因错误以及抑制错误信息至关重要。

今天,Google DeepMind 和 Hugging Face 很共同宣布,在 Transformers v4.46.0 版本中,我们正式推出了 SynthID Text 技术。这项技术能够通过使用 logits 处理器 为生成任务添加水印,并利用 分类器 检测这些水印。

详细的技术实现请参考发表在《自然》 (Nature) 上的 SynthID Text 论文,以及 Google 的 负责任生成式 AI 工具包,了解如何将 SynthID Text 应用到你的产品中。

工作原理

SynthID Text 的核心目标是为 AI 生成的文本嵌入水印,从而让你能判断文本是否由你的大语言模型 (LLM) 生成,同时不影响模型的功能或生成质量。Google DeepMind 开发了一种水印技术,使用一个伪随机函数 (g 函数) 增强任何 LLM 的生成过程。这个水印对人类来说不可见,但能被训练好的模型检测。这项功能被实现为一个 生成工具,可使用 model.generate() API 与任何 LLM 兼容,无需对模型做修改,并提供一个完整的 端到端示例,展示如何训练检测器来识别水印文本。具体细节可参考 研究论文

配置水印

水印通过一个 数据类 进行配置,这个类参数化 g 函数,并定义它在抽样过程中的应用方式。每个模型都应有其专属的水印配置,并且必须安全私密地存储,否则他人可能会复制你的水印。

在水印配置中,必须定义两个关键参数:

  • keys 参数:这是一个整数列表,用于计算 g 函数在模型词汇表上的分数。建议使用 20 到 30 个唯一的随机数,以在可检测性和生成质量之间取得平衡。
  • ngram_len 参数:用于平衡稳健性和可检测性。值越大,水印越易被检测,但也更易受到干扰影响。推荐值为 5,最小值应为 2。

你还可以根据实际性能需求调整配置。更多信息可查阅 SynthIDTextWatermarkingConfig 类。研究论文还分析了不同配置值如何影响水印性能的具体影响。

应用水印

将水印应用到文本生成中非常简单。你只需定义配置,并将 SynthIDTextWatermarkingConfig 对象作为 watermarking_config= 参数传递给 model.generate(),生成的文本就会自动携带水印。你可以在 SynthID Text Space 中体验交互式示例,看看你是否能察觉到水印的存在。

from transformers import (
    AutoModelForCausalLM,
    AutoTokenizer,
    SynthIDTextWatermarkingConfig,
)

# 初始化模型和分词器
tokenizer = AutoTokenizer.from_pretrained('repo/id')
model = AutoModelForCausalLM.from_pretrained('repo/id')

# 配置 SynthID Text
watermarking_config = SynthIDTextWatermarkingConfig(
    keys=[654, 400, 836, 123, 340, 443, 597, 160, 57, ...],
    ngram_len=5,
)

# 使用水印生成文本
tokenized_prompts = tokenizer(["your prompts here"])
output_sequences = model.generate(
    **tokenized_prompts,
    watermarking_config=watermarking_config,
    do_sample=True,
)
watermarked_text = tokenizer.batch_decode(output_sequences)

检测水印

水印设计为对人类几乎不可察觉,但能被训练好的分类器检测。每个水印配置都需要一个对应的检测器。

训练检测器的基本步骤如下:

  1. 确定一个水印配置。
  2. 收集一个包含带水印和未带水印文本的训练集,分为训练集和测试集,推荐至少 10,000 个示例。
  3. 使用模型生成不带水印的文本。
  4. 使用模型生成带水印的文本。
  5. 训练水印检测分类器。
  6. 将水印配置及相应检测器投入生产环境。

Transformers 提供了一个 贝叶斯检测器类,并附带一个 端到端示例,展示如何使用特定水印配置训练检测器。如果多个模型使用相同的分词器,可以共享水印配置和检测器,前提是训练集中包含所有相关模型的样本。这个训练好的检测器可以上传到私有的 Hugging Face Hub,使其在组织内部可用。Google 的 负责任生成式 AI 工具包 提供了更多关于将 SynthID Text 投入生产的指南。

限制

SynthID Text 的水印在某些文本变形下依然有效,如截断、少量词汇修改或轻微的改写,但也有其局限性:

  • 在事实性回复中,水印应用效果较弱,因为增强生成的空间有限,否则可能降低准确性。
  • 如果 AI 生成的文本被彻底改写或翻译为其他语言,检测器的置信度可能显著降低。

虽然 SynthID Text 不能直接阻止有目的的攻击者,但它可以增加滥用 AI 生成内容的难度,并与其他方法结合,覆盖更多内容类型和平台。


英文原文: https://hf.co/blog/zh/synthid-text

作者: Sumedh Ghaisas (guest), Sumanth Dathathri (guest), Ryan Mullins (guest), Joao Gante, Marc Sun, Raushan Turganbay

译者: Luke, Hugging Face Fellow

标签:AI,Text,水印,生成,文本,SynthID
From: https://www.cnblogs.com/huggingface/p/18531922

相关文章

  • 王慧文回归带队美团探索 AI 应用;对话音频开源模型 Hertz-dev:120 毫秒超低延迟丨 RTE
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • Jetbrains全家桶激活方法
    亲测有效,此处以phpstrom为例,按理其他产品也可以用相同的方式激活。原理是我们通过代码搜索其他授权服务器进行永久激活。方式一  通过censyshttps://search.censys.io/用到的代码:services.http.response.headers.location:account.jetbrains.com/fls-auth我们将上面这......
  • java后端工程师转行AI大模型岗,工作、自我提升两不误!
    随着技术的不断进步,人工智能(AI)已经成为当今科技领域最热门的话题之一。许多开发者开始考虑从传统的软件开发领域,如Java,转向人工智能领域,今天小编和大家一起来探讨Java开发者是否可以转型到人工智能,转型的优势,薪资对比,以及转型所需的知识和学习路线等。01Java开发者能否转......
  • AI 搜索来势汹汹,互联网将被颠覆还是进化?
    最近,美国新闻集团起诉了知名AI搜索引擎PerplexityAI。也许你会想,这不就是又一起“AI惹官司”吗?其实,这次情况不太一样,甚至可能会改变我们未来上网的方式!争议的焦点是什么?是未来的AI搜索——即那些能从全网总结信息的“AI答题王”。这些AI不只是简单的聊天机器人,而是能......
  • 驭码上新,AI Code Review、基于代码库的知识问答,让研发起飞
    极狐GitLabAI产品驭码CodeRider发布最新版本,带来了多项AI赋能软件研发的重大功能。重磅发布基于代码库的知识问答:智能解答项目代码相关问题,提升协作效率;让新员工快速了解、上手项目,缩短培养周期。AICodeReview:已配置项目可在用户提交MR时自动触发代码审核,支持一键接......
  • “2024年:普通人如何通过AI工具实现盈利?“
    前言:随着AI技术的飞速发展,人工智能已成为创造财富的新引擎。本文将带你探索如何利用AI技术,在现代社会中开辟新的盈利渠道。从个人创业到企业转型,我们将一览AI带来的赚钱机遇,为你在智能时代的财富增长提供思路和策略。1、信息差模式现在市场上AI应用工具很多,不是所有人都......
  • AI绘画本地版ComfyUI终于来了!(一键整合包,免安装更方便)附各种工作流及模型文件1000张工
    前言:comfyUI自从面世以来,就以一种潜力股的姿态快速流行了起来,越来越多的小伙伴开始使用comfyUI。也许你一开始会被comfyUI密密麻麻的“线路”吓到,但其实comfyUI也没那么复杂,并且好处多多。今天给大家分享一下AI绘画进阶工具ComfyUI,作为StableDiffusionWebUI的进阶版工......
  • 微信后团队分享:微信后台基于Ray的分布式AI计算技术实践
    本文由微信后台Astra项目团队分享,原题“Ray在微信AI计算中的大规模实践”,下文进行了排版和内容优化。1、引言微信存在大量AI计算的应用场景,主要分为三种:流量分发、产品运营和内容创作。流量分发场景中的AI计算主要用于搜索、广告、推荐场景的核心特征生产,产品运营相关的AI......
  • 21天全面掌握:小白如何高效学习AI绘画SD和MJ,StableDiffusion零基础入门到精通教程!快速
    今天给大家分享一些我长期以来总结的AI绘画教程和各种AI绘画工具、模型插件,还包含有视频教程AI工具,免费送......
  • Unity 编iOS版本报错: CocoPods Installation failure
    Unity项目,不带任何SDK导出项目是没有问题的,一旦加入Admob,facebook之后,就会出现:CocoPodsInstallationfailure升级MACOS系统,升级SDK版本,升级Unity版本时,该问题是经常发生!发生该问题表示项目中用pod管理的sdk未下载下来配置好!查看项目目录,可以看到一个名为Podfile的文件,其......