SuperAPI AI 工具集

prompt-repetition

智能体与模型

查看项目

更新于 10-16 04:26

技能介绍

用途

Prompt Repetition 是一种提示词工程技巧,用于提升大语言模型(LLM)的输出准确率。它针对因果语言模型(Causal Language Model)的固有局限:每个 token 只能关注其之前的 token,因此模型在处理上下文时无法参考后出现的问题,在查看选项时无法完整理解题干,在长列表中特定位置信息的注意力权重会衰减。通过将同一提示词重复多次,第二遍处理可以引用完整的第一遍内容,从而缓解上述问题。

主要能力

该技术通过重复提示词来强化模型对关键概念的注意力权重。据 Google Research 2025 研究结果,在 70 项基准测试中有 47 项(p < 0.1)取得显著提升,无性能下降案例,23 项为中性,提升率为 67%。最显著的提升为 Gemini 2.0 Flash-Lite 在 NameIndex 任务上从 21.33% 提升至 97.33%(+76 个百分点)。测试覆盖的模型包括 Gemini 2.0 Flash / Flash Lite、GPT-4o / GPT-4o-mini、Claude 3.7 Sonnet / Claude 3 Haiku、Deepseek V3;测试基准包括 ARC、OpenBookQA、GSM8K、MMLU-Pro、MATH、NameIndex / MiddleMatch 等。

使用方式

该技能提供自动应用机制,针对特定轻量级模型自动生效。自动应用的目标模型包括:Claude 的 haiku 系列(排除 opus、sonnet),Gemini 的 flash、flash-lite(排除 pro、ultra),OpenAI 的 gpt-4o-mini、gpt-low(排除 gpt-4o、gpt-4)。

重复次数按任务类型确定:选项优先的多选题(A. B. C. D. 选项在前)使用 2 次重复,预期提升 15-40 个百分点;索引/位置任务(含 slot、position、index、N-th 等关键词)使用 3 次重复,预期提升 50-76 个百分点;一般上下文加问题使用 2 次重复,预期提升 5-15 个百分点;已使用思维链(step by step、think through 等)的任务不应用(0 次),效果约为 0%。

应用前需检查 token 限制,建议保留 80% 上下文窗口作为安全余量。若重复后超出限制则减少重复次数。提示词转换通过将原提示词以双换行符连接重复指定次数实现。

该技能提供生产级实现,包括 PromptRepetitionTransformer 类,支持 should_apply 判断、determine_repetitions 次数确定、estimate_tokens 估算、transform 转换以及 wrap_llm_call 包装 LLM 调用。同时提供 A/B 测试方法用于验证效果,关键指标包括准确率、一致性、token 成本和延迟。

在多智能体集成中,可通过标记(<!-- prompt-repetition-applied -->)或元数据(x-prompt-repetition-applied: true 头)防止重复应用。典型应用模式为:Claude Sonnet 规划(无需重复)→ Gemini Flash 分析(自动应用 2 次重复并添加标记)→ Claude Haiku 执行(检测到标记则跳过重复应用)。

适用场景

适用于使用轻量级模型(claude-haiku、gemini-flash、gpt-4o-mini 等)的场景;选项优先的多选题;在长上下文中搜索特定信息;库存或列表中的位置/索引查询;游戏 AI 角色的 NPC 对话一致性维护;不使用思维链的非推理任务。

限制

不适用于已使用思维链的任务(效果会抵消);不适用于推理模型(opus、sonnet 等已优化,效果极小);不适用于超长提示词(有超出上下文限制的风险);不可重复应用(无标记的连续应用会浪费 token)。研究指出,用填充字符增加长度没有效果,且不应与思维链结合使用。成本方面,输入 token 增加 100%,延迟增加约 2%(因预填充阶段在 GPU 上高度并行化),每个正确答案的成本增加约 5%。