PhySense: Principle-Based Physics Reasoning Benchmarking for Large Language Models

文章主要内容

本文聚焦于大型语言模型(LLMs)在物理问题中基于原理的推理能力,指出当前LLMs在解决物理问题时,常采用冗长、复杂的推理路径,难以像人类专家那样运用核心物理原理(如对称性、守恒定律、量纲分析等)进行简洁、高效且可解释的推理。为此,作者提出了PhySense——首个基于物理原理的推理基准,包含380个精心设计的物理问题,这些问题利用核心原理可轻松解决,但对未采用“原理优先”推理的LLMs颇具挑战性。

通过零样本、提示和无计算提示三种策略,对7个先进LLMs进行评估,发现:

  1. 推理准确性:即便在提示下,LLMs整体准确率仍较低,尤其在对称性等原理的应用上存在显著不足。
  2. 推理效率:LLMs消耗的token量远超人类专家(推理模型约为人类的100倍),凸显其在原理驱动的高效推理上的巨大差距。
  3. 提示效果:提示和无计算指令仅带来边际改进,表明LLMs需深度整合原理性推理。

创新点

  1. 首个基于原理的物理推理基准:PhySense专注于测试LLMs对核心物理原理的理解
### Chain-of-Thought Prompting Mechanism in Large Language Models In large language models, chain-of-thought prompting serves as a method to enhance reasoning capabilities by guiding the model through structured thought processes. This approach involves breaking down complex problems into simpler components and providing step-by-step guidance that mirrors human cognitive processing. The creation of these prompts typically includes selecting examples from training datasets where each example represents part of an overall problem-solving process[^2]. By decomposing tasks into multiple steps, this technique encourages deeper understanding and more accurate predictions compared to traditional methods. For instance, when faced with multi-hop question answering or logical deduction challenges, using such chains allows models not only to generate correct answers but also articulate intermediate thoughts leading up to those conclusions. Such transparency facilitates better interpretability while improving performance on various NLP benchmarks. ```python def create_chain_of_thought_prompt(task_description, examples): """ Creates a chain-of-thought prompt based on given task description and examples. Args: task_description (str): Description of the task at hand. examples (list): List containing tuples of input-output pairs used for demonstration purposes. Returns: str: Formatted string representing the final prompt including both instructions and sample cases. """ formatted_examples = "\n".join([f"Input: {ex[0]}, Output: {ex[1]}" for ex in examples]) return f""" Task: {task_description} Examples: {formatted_examples} Now try solving similar questions following above pattern. """ # Example usage examples = [ ("What color do you get mixing red and blue?", "Purple"), ("If it rains tomorrow, will we have our picnic?", "No") ] print(create_chain_of_thought_prompt("Solve logic puzzles", examples)) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UnknownBody

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值