aloth/RogueGPT

GitHub: aloth/RogueGPT

RogueGPT 是一个面向虚假信息研究的多模型可控 AI 新闻刺激生成框架,支持多语言内容生成、完整来源追踪和基于智能体的模拟种子播种。

Stars: 7 | Forks: 2

# RogueGPT:面向新闻真实性研究的受控刺激生成框架 [![arXiv](https://img.shields.io/badge/arXiv-2601.21963-B31B1B.svg)](https://arxiv.org/abs/2601.21963) [![arXiv](https://img.shields.io/badge/arXiv-2601.22871-B31B1B.svg)](https://arxiv.org/abs/2601.22871) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.18703138.svg)](https://doi.org/10.5281/zenodo.18703138) [![Status](https://img.shields.io/badge/status-active%20%26%20evolving-orange.svg)](https://github.com/aloth/RogueGPT) [![License](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![GitHub Stars](https://img.shields.io/github/stars/aloth/RogueGPT?style=social)](https://github.com/aloth/RogueGPT/stargazers) [![Mastodon](https://img.shields.io/badge/Mastodon-@xlth-6364FF?logo=mastodon&logoColor=white)](https://mastodon.social/@xlth)

RogueGPT — Controlled AI stimulus generation pipeline for fake news research

## 研究动机 针对 AI 生成新闻的实证研究越来越需要多样化、可复现且在受控实验条件下生成的刺激(stimuli)——这不仅是为了人类感知研究,也是为了适应从静态假新闻生成向**智能体虚假信息活动(agentic disinformation campaigns)**的广泛转变。RogueGPT 提供了一个系统化、多模型的框架,能够在多个 LLM 家族、语言、新闻风格和内容格式中生成此类刺激,并具备完整的来源追踪。 与单模型的前代系统(例如 GROVER)不同,RogueGPT 采用了一种可扩展的、与模型无关的架构,将静态文本生成与动态的**基于智能体的模拟(ABS)**结合起来以模拟虚假信息的传播。通过标准化虚假信息模拟的“种子(seeding)”阶段,它支持针对多样化、参数丰富的内容对检测系统进行红队测试(red-teaming)。 **目标用户。** 该基础设施面向四个交叉的群体: 需要与感知数据相关联的受控刺激的**虚假信息研究人员**; 生成对抗性内容变体以对检测器进行压力测试的**红队测试人员**; 需要为传播模型提供可复现种子内容的**基于智能体的模拟研究人员**; 研究感知的**人因(human-factors)研究人员**。 RogueGPT 是 [JudgeGPT](https://github.com/aloth/JudgeGPT) 研究流程中的刺激生成组件。两者结合,能够实现从受控内容生成到定量人类感知测量的端到端实验。该方法论在我们的基础综述《Blessing or Curse? A Survey on the Impact of Generative AI on Fake News》([arXiv:2404.03021]( 映射到基于智能体的模拟需求(RogueGPT 功能如何映射到近期的 ABS 与检测文献) | 模拟需求 | 启用功能 | 参考文献 | |:---|:---|:---| | 基于 Persona 的传播 | Persona 配置模块 | Maurya (2025) | | 观点动态 | 确认偏误建模 | Chuang (2024) | | 用户参与度预测 | 传播产物控制(推文/评论) | Liu (2025) | | 语义传播 | 风格参数化(语调/情感) | Zhang (2025) | | 多步骤智能体危害 | 自动化攻击工作流 | Andriushchenko (2024) | | 自动化越狱(Jailbreaking) | 动态红队生成 | Pavlova (2024) | | 组合攻击 | 模块化模板架构 | Sun (2025) | | 证据感知检测 | 用于多 Persona 检测器的训练数据 | Bukke (2025) | | 多智能体辩论 | 高困惑度测试内容 | Lakara (2025) | | 多语言验证 | 跨语言生成 | Mandl (2024) | | 多模态测试 | 可扩展的 API(已规划) | Jaiswal (2025) | 完整参考文献请见随附论文。 ## 安装说明 ### 前置条件 - Python 3.10+ - MongoDB 实例(本地或 Atlas) ### 设置 ``` git clone https://github.com/aloth/RogueGPT.git cd RogueGPT python3 -m venv venv source venv/bin/activate pip install -r requirements.txt ``` ### 配置 将 MongoDB 连接字符串设置为环境变量: ``` export ROGUEGPT_MONGO_URI="mongodb+srv://user:pass@cluster.mongodb.net/?retryWrites=true&w=majority" ``` 或者,对于 Streamlit 界面,可以配置 `.streamlit/secrets.toml`: ``` [mongo] connection = "mongodb+srv://user:pass@cluster.mongodb.net/..." ``` ## 使用说明 ### Web 界面 ``` streamlit run app.py ``` 提供两种模式:**生成器**(跨参数组合的自动化、模板驱动生成)和**手动数据录入**(用于人工获取的片段)。 ### 命令行界面 CLI 支持在没有浏览器的情况下执行脚本化数据集操作: ``` # Dataset 统计信息 python3 cli.py stats # 列出所有已配置的 model identifier python3 cli.py models # 检索随机片段 python3 cli.py retrieve --n 5 --origin Machine --model openai_gpt-4o_2024-08-06 # 摄取机器生成的片段 python3 cli.py ingest \ --origin Machine \ --model "openai_gpt-4.1" \ --lang en \ --is-fake \ --prompt "Write a short article about '''Topic''' in English in the style of CNN." \ --content "The generated text content..." # 摄取人工采集的片段 python3 cli.py ingest \ --origin Human \ --outlet "BBC" \ --url "https://www.bbc.com/news/example" \ --lang en \ --content "The original article text..." ``` **验证:** CLI 强制执行来自 `prompt_engine.json` 的 schema 约束。默认情况下,模型标识符会根据配置进行验证。使用 `--lenient` 可以允许未注册的模型,但会发出警告。 ### MCP 服务器(AI Agent 集成) RogueGPT 通过 [Model Context Protocol](https://modelcontextprotocol.io/) 暴露其数据层,以便与 AI agent 和 LLM 工具使用工作流进行集成: ``` python3 mcp_server.py ``` **工具:** | 工具 | 描述 | |:---|:---| | `ingest_fragment` | 验证并存储带有完整来源元数据的新片段。 | | `retrieve_fragments` | 获取随机片段,支持可选的筛选条件(来源、模型、语言、真实性)。 | **资源:** | URI | 描述 | |:---|:---| `roguegpt://config/models` | 所有已识别模型标识符的列表。 | | `roguegpt://config/languages` | 支持的 ISO 语言代码。 | | `roguegpt://stats` | 当前按来源和模型统计的数据集信息。 | MCP 接口支持自动化的语料库扩充:AI agent 可以使用任何 LLM 生成内容,然后连同完整的元数据将其摄取入库,以供后续的人类评估。 ## 片段 Schema 数据库中的每个片段都符合以下 schema: | 字段 | 类型 | 必填 | 描述 | |:---|:---|:---|:---| | `FragmentID` | 字符串 | 自动 | 唯一标识符(UUID hex)。 | | `Content` | 字符串 | 是 | 新闻文本。 | | `Origin` | 字符串 | 是 | `"Human"` 或 `"Machine"`。 | | `IsFake` | 布尔值 | 是 | 内容是否为捏造。 | | `ISOLanguage` | 字符串 | 是 | ISO 639-1 语言代码。 | | `MachineModel` | 字符串 | 若为 Machine | 模型标识符(必须与 `prompt_engine.json` 匹配)。 | | `MachinePrompt` | 字符串 | 推荐 | 生成时使用的 prompt。 | | `HumanOutlet` | 字符串 | 若为 Human | 发布媒体名称。 | | `HumanURL` | 字符串 | 推荐 | 用于来源追踪的 URL。 | | `CreationDate` | 日期时间 | 自动 | 摄取记录的时间戳。 | | `IngestedVia` | 字符串 | 自动 | 摄取渠道:`"ui"`、`"cli"` 或 `"mcp"`。 | ## 扩展模型配置 要添加新模型,请将其标识符附加到 `prompt_engine.json` 中的 `GeneratorModel` 数组中: ``` "GeneratorModel": [ "openai_gpt-4.1", "anthropic_claude-opus-4-6", "your-provider_model-name", ... ] ``` 命名约定遵循 `provider_model-variant` 格式(例如:`openai_gpt-4o_2024-08-06`、`meta_llama-3.3-70b`、`anthropic_claude-sonnet-4-5`)。所有摄取接口都会根据此列表进行验证。 ## 路线图 - **多模态刺激:** 将生成范围扩展到图像和多媒体,以用于 deepfake 感知研究。 - **自动化语料库扩充:** 使用 MCP 服务器的 agent 驱动生成流水线,以系统地覆盖新发布的模型。 - **来源整合:** 为缓解实验添加内容真实性元数据(C2PA)注释。 - **跨数据集链接:** 与 [JudgeGPT](https://github.com/aloth/JudgeGPT) 感知数据直接集成,以进行统一分析。 ## 局限性 RogueGPT 描述的是已实现的功能,而非已完成的实证评估;因此存在以下几项局限性: - **依赖商业 API:** 专有模型(例如 GPT-4)会产生成本,且将可复现性与第三方端点绑定;本地模型(LLaMA、Mistral、DeepSeek)可以缓解但无法消除这一问题。 - **不断演进的模型的可复现性:** 提供商会更新或弃用版本,因此相同的 prompt 可能会随时间发生漂移;来源元数据记录了所使用的准确模型/配置,但不保证能逐位精确重生成。 - **多语言限制:** 跨语言的质量取决于底层模型,并且在资源较少的语言中会出现质量下降。 - **人类数据收集:** JudgeGPT 需要招募参与者并获得伦理/IRB 批准;调查设计需要经过验证以确保数据质量。 - **滥用可能性:** 生成组件可能会产生类似虚假信息的内容;请参阅[免责声明](#disclaimer)以及仅用于研究的预期用途。 ## 致研究人员 | 目标 | 操作 | |:---|:---| | 了解方法论 | [阅读论文](https://arxiv.org/abs/2404.03021) | | 使用数据集 | [在 Zenodo 上申请访问权限](https://doi.org/10.5281/zenodo.18703138) | | 扩充语料库 | Fork 仓库、添加模型并提交 PR | | 参与研究 | [JudgeGPT 调查问卷](https://judgegpt.streamlit.app/) | | 联系作者 | [alexander.loth@stud.fra-uas.de](mailto:alexander.loth@stud.fra-uas.de) | ### 专家调查 我们正在开展一项后续研究,以收集专家关于 AI 驱动的虚假信息风险及其缓解策略的观点。如果您在 AI、政策或新闻领域拥有专业知识,我们诚挚邀请您参与: **[专家调查问卷(15 分钟)](https://forms.gle/EUdbkEtZpEuPbVVz5)** 所有回复都将被严格保密,并以匿名、汇总的形式进行报告。 ## 引用 如果您在工作中使用了 RogueGPT 或其数据集,请引用: ``` @inproceedings{loth2026collateraleffects, author = {Loth, Alexander and Kappes, Martin and Pahl, Marc-Oliver}, title = {Industrialized Deception: The Collateral Effects of LLM-Generated Misinformation on Digital Ecosystems}, booktitle = {Companion Proceedings of the ACM Web Conference 2026 (WWW '26 Companion)}, year = {2026}, month = may, publisher = {ACM}, address = {New York, NY, USA}, location = {Dubai, United Arab Emirates}, doi = {10.1145/3774905.3795471}, url = {https://arxiv.org/abs/2601.21963}, note = {To appear. Also available as arXiv:2601.21963} } @inproceedings{loth2026eroding, author = {Loth, Alexander and Kappes, Martin and Pahl, Marc-Oliver}, title = {Eroding the Truth-Default: A Causal Analysis of Human Susceptibility to Foundation Model Hallucinations and Disinformation in the Wild}, booktitle = {Companion Proceedings of the ACM Web Conference 2026 (WWW '26 Companion)}, year = {2026}, month = may, publisher = {ACM}, address = {New York, NY, USA}, location = {Dubai, United Arab Emirates}, doi = {10.1145/3774905.3795832}, url = {https://arxiv.org/abs/2601.22871}, note = {To appear. Also available as arXiv:2601.22871} } @article{loth2024blessing, author = {Loth, Alexander and Kappes, Martin and Pahl, Marc-Oliver}, title = {Blessing or Curse? A Survey on the Impact of Generative AI on Fake News}, journal = {arXiv preprint arXiv:2404.03021}, year = {2024}, url = {https://arxiv.org/abs/2404.03021} } ``` ### 相关出版物 RogueGPT 是关于 AI 生成新闻的生成与人类感知这一更广泛研究计划的一部分: - **Can Humans Tell? A Dual-Axis Study of Human Perception of LLM-Generated News** (WebSci Companion '26). 报告了由 RogueGPT 生成的刺激带来的人类感知发现。[doi:10.1145/3795513.3807431](https://doi.org/10.1145/3795513.3807431) - **The Indistinguishability Threshold: Measuring Cognitive Vulnerabilities to AI-Generated Disinformation** (WebSci Companion '26, PhD Symposium). [doi:10.1145/3795513.3807421](https://doi.org/10.1145/3795513.3807421) ## 相关项目 | 项目 | 描述 | |:---|:---| | [JudgeGPT](https://github.com/aloth/JudgeGPT) | 用于评估 AI 生成新闻真实性的实证平台 | | [CRED-1](https://github.com/aloth/cred-1) | 开放的多信号域名可信度数据集(2,673 个域名) | | [verification-crisis](https://github.com/aloth/verification-crisis) | 关于 GenAI 虚假信息威胁的专家调查(WWW 2026) | | [Origin Lens](https://github.com/aloth/origin-lens) | 用于 C2PA 内容凭证和 EXIF 验证的 iOS 应用 | ## 许可证 本项目采用 GNU General Public License v3.0 进行授权。详情请参阅 [LICENSE](LICENSE)。 ## 致谢 本研究得到了 Frankfurt University of Applied Sciences 和 IMT Atlantique 的支持。我们感谢 Streamlit、MongoDB 和 Model Context Protocol 背后的开源社区,是他们提供的基础设施使这项工作成为可能。 ## 免责声明 RogueGPT 是一个独立的研究项目。项目名称中使用“GPT”遵循 *pars pro toto*(以部分代整体)惯例,泛指更广泛的生成式预训练 Transformer 模型类别。本项目不隶属于 OpenAI,也未获得其认可。所有研究均遵循既定的 AI 安全研究伦理准则。
标签:DLL 劫持, IPv6支持, Kubernetes, Linux安全, LLM红队评估, 人工智能, 多智能体仿真, 大语言模型, 开源搜索引擎, 文本生成, 用户模式Hook绕过, 虚假信息研究, 逆向工具