LLM推理性能受输出格式影响,JSON最严重
输出格式不同,竟然还能影响大模型发挥?!
两种提示下让大语言模型(LLMs)解同一道数学题,问题如下:
思维链prompt:“按照以下格式提供输出,逐步推理:…回答:最终答案是…”。
格式限制prompt:“按照以下有效的JSON格式提供输出:…(具体JSON格式见图)“。
正确答案是460,可以看出,思维链(让模型一步步思考)奏效,格式限制(“以JSON格式输出”)却失败了!!
这是台湾大学和Appier AI Research新研究中的一幕,他们发现——
格式限制这玩意儿会降低LLMs的推理能力,且限制越严推理越差。(主打一个叛逆)
不过好消息是,能治。
他们发现,最佳解决方案是搞个“二次转换”(倒爷是吧),即LLMs首先用自然语言回答问题,然后再将答案转换为目标格式。
在这个过程中,他们对比了GPT-3.5 Turbo、Claude 3 Haiku、Gemini 1.5 Flash等不同模型在生成不同格式数据时的性能差异,结果又发现:
GPT喜欢YAML、Claude喜欢XML、Gemini/Gemma喜欢JSON。(主打各有所爱)
看完研究,有网友点出了它对平衡结构化生成和任务推理的意义:
格式限制会降低LLMs推理能力
上述研究已发表在arXiv上,论文主要揭示了,在格式限制下,LLMs的推理能力显著下降,尤其是在JSON模式下。
一直以来,将LLMs纳入工业应用程序的一个主要障碍是它们缺乏对标准化输出格式的遵守。
一种常见解决方法是结构化生成,即通过格式限制让LLMs以JSON或XML等标准化格式提供输出。
不过话说回来,虽然有多种方式可以实现这种限制,但后续影响却无人研究。(限制是否影响模型性能呢?)
说干就干,研究人员采用3种常见方法来评估不同格式限制对下游性能的影响:
对了,还要加上自然语言(NL),它是最不受限的格式,允许模型以自然语言自由地回答问题。
评估对象是GSM8K(包含自然语言环境中的数学问题)和Last Letter Concatenation(最后一个字母连接任务)这两个需要精确匹配答案的数据集,以及Shuffled Objects(洗牌对象追踪任务)。
他们发现,在这些涉及推理的任务中,更宽松的提示通常会得到更好的结果。
同时,JSON模式在大多数情况下表现最差,其次是格式限制指令(FRI),然后是自然语言到格式(NL to Format)转换,以及自然语言(NL)提示。
研究还发现,不同的LLMs对不同的数据格式表现出不同的偏好。
例如,GPT更喜欢YAML格式,Claude更喜欢XML格式,而Gemini/Gemma则更倾向于JSON格式。
不过,在分类任务中,格式限制可能提高了准确性,因为它减少了可能的答案选择,从而降低了错误率。
他们进一步总结了格式限制会降低模型推理能力的原因,主要包括:
好消息:能治
针对这一问题,他们提出了几种应对之策:
首先,前面提到了JSON模式在大多数情况下表现最差,最后才是自然语言到格式(NL to Format)转换。
那么反过来说,解决格式限制的最佳方案就成了NL to Format,即LLMs首先用自然语言回答问题,然后再将答案转换为目标格式。这种方式允许推理与格式遵守分离,从而表现更佳。
此外,结构化输出中的键顺序对LLMs的回答方式有重要影响。
例如在使用GPT-3.5 Turbo时,100%的JSON-mode响应错误地将“answer” 键位于 “reasoning” 之前,这导致模型直接给出答案,而不是展示思考过程。
研究还表明,格式限制导致的解析错误不是性能差异的主要原因。
例如,在LLaMA 3 8B模型中,Last Letter任务的JSON格式解析错误率仅为0.15%,但与自然语言响应相比,性能差距达到了38.15%。
而且可以通过纠正提示来减轻这些错误,例如对于Claude-3-Haiku模型,在Last Letter任务中,通过纠正步骤,JSON和YAML格式的准确率分别提高了+2.8%和+44.8%。
以上也意味着,在应用LLMs时,需要在易于解析的格式和保留固有推理能力之间找到平衡点。
最后,研究人员在论文中提醒了: