竟然只需要一次Ctrl+V?这可能是深度学习领域为数不多的“免费午餐”。
70组基准测试,47次完胜,0次失败。这是Google Research在Gemini、GPT-4o和DeepSeek V3上测试Prompt Repetition(提示词重复) 策略后的成绩单。

仅仅是将提示词重复输入一次,Gemini 2.0 Flash-Lite在长文本检索任务上的准确率就从21.33%飙升至97.33%。更关键的是,这种提升不需要微调,不改变输出格式,甚至几乎不增加端到端延迟。恰好昨天收到一位读者朋友的私信,他也向我强烈推荐了这个“知乎热榜第一”的实用技巧:

为什么这种看似“简单粗暴”的操作如此有效?它又在何种边界下会失效?带着这些疑问,让我们深入Google Research这项反直觉研究的内核。
要理解为什么“重复”有效,您首先需要理解当前主流大语言模型(如GPT、Gemini、Llama等)的一个基础特性:因果注意力机制(Causal Attention)。
绝大多数LLM都是因果语言模型(Causal Language Models)。这意味着模型在处理文本时,是严格按照从左到右、从前到后的顺序进行的。
这种机制导致了一个实际问题:Token的顺序会极大地影响预测性能。
想象一下做英语阅读理解题。如果试卷的格式是“先列出一大段文章(Context),最后才给出问题(Question)”,这对于人来说可能不是问题,因为我们可以读完问题后再回头看文章。但对于因果模型来说,当它在“读”前面的文章时,它还完全不知道后面会问什么。因此,它在构建文章的内部表示时,可能无法有效地提取与未来问题相关的信息。

研究者在论文中指出,<CONTEXT> <QUESTION>(语境在前,问题在后)的查询形式,往往比 <QUESTION> <CONTEXT>(问题在前,语境在后)的表现要差。
为了解决上述问题,研究者提出了一种极其简单的策略:Prompt Repetition。

这一策略不需要修改模型架构,也不需要重新训练,仅需在输入层面进行转换:
简单来说,就是:Ctrl+A (全选) -> Ctrl+C (复制) -> Ctrl+V (粘贴到末尾)。把这一长串双倍的内容发送给模型即可。
<QUERY><QUERY><QUERY>为什么简单的重复能解决问题?
当输入变为 <QUERY><QUERY> 时,模型在处理第二遍提示词时,能够利用注意力机制“回头看”到第一遍提示词中的所有内容。
这意味着,当模型在第二遍读取“语境”部分时,它已经通过第一遍的结尾看到了“问题”。这实际上模拟了人类“带着问题去阅读”的认知过程。这种机制让模型中的每一个Token都有机会关注到提示词中的任何其他Token,从而克服了因果注意力的局限性。
为了验证这一假设,研究者在当前最主流的7个大模型上进行了广泛测试。这些模型涵盖了不同的厂商和参数规模:
测试时间为2025年2月至3月,使用的均是官方API。
研究使用了7个基准测试集,涵盖了从常识推断到数学问题的多个领域:
实验数据表明,在非推理(Non-Reasoning)模式下,即不使用思维链(Chain of Thought)提示时,Prompt Repetition带来的提升是全面且显著的。

研究者特别测试了两种输入顺序:
结果显示,在 Options-first 的场景下,Prompt Repetition带来的提升最为巨大。 12这有力地支持了前面的理论:重复输入让模型在处理选项时已经“知晓”了问题,从而弥补了语境在前时的劣势。
为了展示该方法在长上下文检索中的威力,研究者设计了NameIndex任务。

这表明,对于需要精确定位和记忆输入细节的任务,重复输入能产生质的飞跃。
通常在计算机科学中,性能的提升往往伴随着成本的增加(如时间、算力)。将输入长度翻倍,直觉上似乎会使处理时间翻倍。但研究者的发现令人惊讶:对于用户感知到的延迟而言,Prompt Repetition几乎是零成本的。

第1列 (Accuracy): 再次确认准确率,绿/蓝最高,红色(填充)最差,说明必须重复内容才有效,光凑字数没用。
第2列 (Average Latency - 平均延迟):不同颜色的条几乎是一样长的,输入加倍并没有导致用户等待时间加倍。因为输入处理(Prefill)是并行的。
第3 & 4列 (Response Length - 回复长度),条的长度也是一样的,重复输入不会让模型变得啰嗦,它输出的答案长度和原来一样。
要理解这一点,您需要区分LLM推理的两个阶段:
简而言之,您得到更准确的答案,却不需要等待更久。
虽然Prompt Repetition效果显著,但它并不是万能的。研究者指出了它的适用边界。
当研究者启用模型的推理能力,即提示模型“一步步思考”(Think step by step)时,Prompt Repetition的效果变得中性甚至微弱正向。

这也反向证明了Prompt Repetition的本质:它是一种显式的、由用户端发起的“思维链”替代品,适用于那些不进行显式推理的场景。
为了科学地证明性能提升确实源于内容的重复,而不是仅仅因为输入变长了或者提示词结构的变化,研究者进行了严谨的消融实验(Ablation Studies)。

研究者对比了以下几种变体:
<QUERY><QUERY><QUERY><QUERY> Let me repeat that: <QUERY> (加入自然语言连接词)<QUERY><QUERY><QUERY><QUERY> ... (无关句点) ... (填充至与重复相同的长度)有时,解决最复杂问题的方案往往最朴素。Prompt Repetition 以一种近乎“反直觉”的简洁,打破了我们对复杂提示工程的迷信,证明了在非推理任务中,单纯的信息重申远比精心设计的思维链或填充策略更为有效。它巧妙地利用了并行计算掩盖了输入加倍的延迟成本,在不改变模型权重、不增加生成长度、不牺牲响应速度的“不可能三角”中找到了完美的平衡点。这一发现不仅为现有的 RAG 系统和长文本应用提供了立竿见影的优化手段,也为下一代模型设计留下了伏笔:既然“重复”如此有效,那么让模型在底层学会“自我回顾”而非依赖用户的显式输入,或许就是通向更强记忆力与精准度的下一块拼图。当模型记不住时,请记住:最高级的技巧,往往只需要再说一遍。
文章来自于“AI修猫Prompt”,作者 “AI修猫Prompt”。
【开源免费】graphrag是微软推出的RAG项目,与传统的通过 RAG 方法使用向量相似性作为搜索技术不同,GraphRAG是使用知识图谱在推理复杂信息时大幅提高问答性能。
项目地址:https://github.com/microsoft/graphrag
【开源免费】Dify是最早一批实现RAG,Agent,模型管理等一站式AI开发的工具平台,并且项目方一直持续维护。其中在任务编排方面相对领先对手,可以帮助研发实现像字节扣子那样的功能。
项目地址:https://github.com/langgenius/dify
【开源免费】RAGFlow是和Dify类似的开源项目,该项目在大文件解析方面做的更出色,拓展编排方面相对弱一些。
项目地址:https://github.com/infiniflow/ragflow/tree/main
【开源免费】phidata是一个可以实现将数据转化成向量存储,并通过AI实现RAG功能的项目
项目地址:https://github.com/phidatahq/phidata
【开源免费】TaskingAI 是一个提供RAG,Agent,大模型管理等AI项目开发的工具平台,比LangChain更强大的中间件AI平台工具。
项目地址:https://github.com/TaskingAI/TaskingAI
【免费】ffa.chat是一个完全免费的GPT-4o镜像站点,无需魔法付费,即可无限制使用GPT-4o等多个海外模型产品。
在线使用:https://ffa.chat/
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0