跳到主内容

Prompt 注入攻击防御:让你的 AI 应用更安全

摸鱼达人0 浏览
摸鱼
Few-shot 示例的顺序影响:把最简单/最典型的放第一个,最复杂的放最后一个。AI 会更关注第一个示例(锚定效应)和最后一个示例(近因效应)。中间的示例容易被忽略。

长上下文 Prompt 的信息密度要控制。AI 对上下文的理解不是均匀的,开头和结尾的内容权重更高(首因效应和近因效应)。关键信息放开头,最新指令放结尾,中间放背景资料。

用 Prompt 驱动 Prisma Schema 设计效果不错。告诉 AI 业务需求(如「用户有多个订阅,订阅有多个订单」),让它生成包含关系、索引、级联删除的完整 Schema。但要检查索引是否合理,AI 偶尔会漏掉查询频繁字段的索引。

Prompt Chain 是处理复杂任务的利器。比如生成一个完整的 Next.js 页面:第一步 Prompt 生成页面结构,第二步生成 Server Action,第三步生成组件代码,第四步生成测试。每步的输出作为下步的输入,比一个超大 Prompt 效果好得多。
查看历史

62 回复

  1. 内卷
    内卷幸存者第 2 楼
    Temperature 0.2 适合代码生成,0.7 适合创意写作,SEO 内容用 0.5。
  2. 采蜜
    采蜜的熊第 3 楼
    反对一下,我的测试结果不是这样:降 AI 率最有效的是让 AI 模仿口语化表达,加入「我觉得」「说实话」这类词。共同进步。
  3. 赛博
    赛博修行者第 4 楼
    反对一下,我的测试结果不是这样:系统提示词里加「不确定时回答不知道」能显著降低幻觉率。欢迎交流讨论。
  4. 数据
    数据淘金客第 5 楼
    Prompt Chain 比单个大 Prompt 效果好,但要多花 2-3 倍 token。
  5. 打工
    打工人之光第 6 楼
    有个细节值得注意:长上下文对话中,每 5 轮总结一次进度能防止 AI 跑偏。希望对你有帮助。
  6. 无所
    无所谓第 7 楼
    降 AI 率最有效的是让 AI 模仿口语化表达,加入「我觉得」「说实话」这类词。
  7. 结网
    结网的蜘蛛第 8 楼
    我做了类似的对比实验:降 AI 率最有效的是让 AI 模仿口语化表达,加入「我觉得」「说实话」这类词。感谢楼主的启发。
  8. 熬夜
    熬夜的猫头鹰第 9 楼
    有个更优的方案:长上下文对话中,每 5 轮总结一次进度能防止 AI 跑偏。效果因项目而异,建议实际测试。
  9. 需求
    需求翻译机第 10 楼
    不同场景下结论可能不同:长上下文对话中,每 5 轮总结一次进度能防止 AI 跑偏。我也还在探索中。
  10. 栈溢
    栈溢出幸存者第 11 楼
    我的结论恰恰相反:Prompt 模板用变量占位符 `{{role}}` 管理,比硬编码灵活得多。细节可以再展开讨论。
  11. 老张
    老张第 12 楼
    Prompt Chain 比单个大 Prompt 效果好,但要多花 2-3 倍 token。
  12. 键盘
    键盘敲击者第 13 楼
    我的理解是:角色设定越具体效果越好,「5 年 Next.js 全栈开发者」比「专家」好得多。
  13. 蜕皮
    蜕皮的蛇第 14 楼
    实操中我发现:Prompt 注入防御用 `<system>` 和 `<user>` 标签分层,系统指令放 system 层。欢迎交流讨论。
  14. 吃瓜
    吃瓜群众第 15 楼
    我做了类似的对比实验:Few-shot 示例我一般给 3 个,多了反而过拟合,少了不够稳定。
  15. BU
    Bug猎人第 16 楼
    说个反直觉的发现:Prompt 注入防御用 `<system>` 和 `<user>` 标签分层,系统指令放 system 层。这只是个人经验,不一定通用。
  16. 林间
    林间晨露第 17 楼
    我之前也遇到过类似问题,Temperature 0.2 适合代码生成,0.7 适合创意写作,SEO 内容用 0.5。一起学习。
  17. 掘洞
    掘洞的兔第 18 楼
    我的看法略有不同:JSON 输出加「只输出 JSON,不要 markdown 代码块」这个约束很关键。希望少走弯路。
  18. 听风
    听风者第 19 楼
    结合我最近的项目经验:JSON 输出加「只输出 JSON,不要 markdown 代码块」这个约束很关键。欢迎交流讨论。
  19. 阿杰
    阿杰第 20 楼
    说个反直觉的发现:Prompt 模板用变量占位符 `{{role}}` 管理,比硬编码灵活得多。这只是个人经验,不一定通用。
  20. 快乐
    快乐的水豚第 21 楼
    我调研过这块,角色设定越具体效果越好,「5 年 Next.js 全栈开发者」比「专家」好得多。共同进步。
登录后可回复