Learn-Prompt-Hacking
最全面的 LLM 提示词攻防开源课程,从注入攻击到蓝队防御,覆盖 AI 安全全链路
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
最全面的 LLM 提示词攻防开源课程,从注入攻击到蓝队防御,覆盖 AI 安全全链路
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
2023年初,全球最大的人工智能红队竞赛 HackAPrompt 落下帷幕,数万名参赛者围绕大型语言模型(LLM)的安全边界展开了激烈角逐。竞赛结束后,许多参赛者和学习者发现了一个尴尬的现实:市面上的提示词工程教程,大多只教"怎么用好"AI,却没有人系统地教"AI是怎么被攻破的"。正是在这样的背景下,TrustAI 实验室推出了 Learn Prompt Hacking——一个从攻击视角切入、覆盖红蓝对抗全链路的开源课程体系。
这个项目的诞生,本质上是对 AI 安全领域知识碎片化的一次整合。提示词注入(Prompt Injection)、提示词泄露(Prompt Leakage)、Jailbreak 等攻击手法散落在论文、博客、GitHub 仓库的各个角落,缺乏一个结构化的学习路径。Learn Prompt Hacking 的出现填补了这个空白,其 GitHub 仓库迅速积累了 282 颗星、37 个 Fork,成为 AI 安全学习领域最受欢迎的课程之一。
Learn Prompt Hacking 的内容组织极为系统化,共分为七个章节,形成了一条从基础入门到高级对抗的完整学习路径。
第一章至第三章:基础与攻击
第一章"Basics"从 AI 基本概念讲起,涵盖提示词工程核心技巧(Few-Shot、Chain-of-Thought 等),确保零基础学习者也能顺利入门。第二章"Applications"展示如何将这些基础技巧应用于实际场景。第三章"Prompting Hacking"是课程的核心攻击部分,详细讲解了五类攻击手法:提示词注入(Prompt Injection)、防御绕过(Defensive Measures Bypass)、提示词泄露(Prompt Leakage)、越狱攻击(Jailbreak)以及提示词结构攻击。每一个攻击手法都配有可运行的 Jupyter Notebook 示例代码,学习者可以在 Google Colab 中直接运行,边学边练。
第四章至第五章:红蓝对抗
第四章"RedTeam LLM"深入大规模红队测试领域,涵盖使用 LLMs 对 LLMs 进行自动化红队评估,并提供了使用 DSPy 框架进行 LLM 评估的实战教程。第五章"BlueTeam Defense"则从防御视角出发,详细介绍了输入检测(关键词过滤、困惑度检测、红队模型分类器)和输出过滤两大防御体系,以及 Llama Guard、Prompt Guard 等主流安全工具的实际应用。
第六章至第七章:强化与评测
第六章"Inference Reinforcement"探讨推理阶段的安全强化,第七章"Evaluation and Benchmarks"则收录了当前主流的 LLM 安全评测框架,包括 Inspect(英国 AI 安全研究所出品)、garak(生成式 AI 红队工具包)、Mindgard、JailbreakEval、promptbench 等,并提供了对应的 Jupyter Notebook 使用教程。
整个课程以 Jupyter Notebook 为载体,每个章节目录下都配有独立的 .ipynb 文件,内含可执行的代码示例。代码依赖极为轻量:只需要一个 OpenAI API Key(用于调用 GPT 系列模型),配合 Python 环境即可运行所有示例。这种设计让课程具有极强的可操作性——学习者不需要搭建复杂的推理框架,直接在 Colab 云端环境中就能动手实验。
从代码结构来看,Notebook 中大量使用了 IPython.display.Markdown 来渲染格式化的输出,openai SDK 用于调用 GPT API,并结合了 langchain 等框架构建攻击链。每个攻击示例都包含完整的 prompt 模板,学习者只需修改少量参数即可迁移到自己的应用场景。
课程在 BlueTeam 章节中系统梳理了 LLM 防御的技术演进路径。最基础的防御是关键词过滤,但这种方法极易被同义词替换绕过。随后出现了基于困惑度(Perplexity)的检测方法——通过计算输入文本的困惑度判断是否为对抗性 prompt。更进阶的方案是引入"红队模型"作为分类器:用一个独立训练的模型来识别潜在的攻击性输入,比如 Meta 推出的 Llama Guard 和 Prompt Guard。
输出过滤与输入检测同样重要。防御体系通常在 LLM 生成响应后,通过额外的安全模型对输出内容进行二次检测,过滤潜在的敏感信息。这种"输入检测 + 输出过滤"的双层架构,已经成为商业化 AI 应用的标准安全配置。
随着 GPT-4、Claude、Gemini 等大模型在企业场景中大规模落地,AI 安全问题已经从学术研究演变为工程实践中的刚性需求。提示词注入攻击可以在用户输入中嵌入恶意指令,操控 AI 系统执行非预期操作;提示词泄露则可能让攻击者提取出系统的核心提示词资产,造成商业机密外泄。这些风险让企业不得不重新审视 AI 系统的安全设计。
然而,AI 安全领域的人才供给严重不足。传统的网络安全人才不懂 LLM,而 AI 研究者又缺乏安全背景。Learn Prompt Hacking 的价值在于,它用一套统一的语言(提示词工程)将两个领域连接起来,让具备基础 Python 能力的开发者也能快速上手 AI 安全攻防。
值得注意的是,Jailbreak、Prompt Injection 等技术本身具有双刃剑属性。课程在教学目的上明确标注了"学习防御"的初衷,但开源代码的广泛传播不可避免地降低了攻击门槛。这也是 AI 安全教育面临的核心伦理困境:公开的攻击手法会让防御者受益,但同时也会启发潜在的恶意攻击者。项目维护者在 README 中也坦言这一点,呼吁学习者将知识用于合规的安全测试和防御建设。
此外,由于课程主要依赖 OpenAI API 进行示例演示,GPT 模型版本迭代可能导致部分攻击手法的有效性发生变化,学习者需要持续关注最新的模型行为变化。
TrustAI-laboratory/Learn-Prompt-Hacking 是目前 GitHub 上最系统、最全面的 LLM 安全攻防课程。它以 Jupyter Notebook 为载体,从提示词工程基础出发,依次覆盖注入攻击、越狱、提示词泄露等核心攻击手法,以及输入检测、输出过滤、模型分类器等主流防御方案,最终延伸至大规模红队测试和安全评测框架。对于希望进入 AI 安全领域、或需要在项目中集成 LLM 安全防护的开发者而言,这是一个不可多得的起点项目。课程代码可直接在 Colab 中运行,零门槛上手,值得推荐。