OpenAI 终于打破沉默,发布了万众期待的 “o1-preview”。其中有很多内容值得解读。
作为一家以 LLM 为生的人工智能初创公司,我们想知道这个新模型的性能如何,以及它能如何帮助我们改进产品。
因此,我花了一整天的时间来实验这个模型,探索编码、推理、数学和创意写作。在本文中,我整理了我使用过的所有提示、它们的结果以及我对模型在每个任务上的能力的看法。
我将不涉及介绍和基准,你可能已经看过成千上万遍了。如果你感兴趣,请查看 OpenAI 的官方博文。
如果您有其他地方可以去,下面是我分别在推理、数学、编码和创意写作方面使用 o1-preview 模式的经验总结。
-
推理:OpenAI 在这一模型上一鸣惊人–这也是理所当然的。毕竟,这正是该模型的设计初衷。
-
数学:数学与推理相辅相成,因此该模型是目前数学和科学领域最好的模型,这一点也不足为奇。
-
编码:令我惊讶的是,与推理和数学能力相比,o1-preview 在编码方面的表现令人大跌眼镜。也许过度思考不利于编码。
-
创意写作:不如其他产品出色。该模型保留了令人生厌的 GPT 语句。也许文字拼写永远不会随着形状的旋转而旋转。
我用自己的一些提示和网上的一些提示进行了这些测试。所以,如果您还在这里,并希望了解更多细节,那就让我们一起来看看吧。
关于 o1-preview 的 native CoT 的几句话
在开始讨论之前。以下是我对 o1 原生思维链能力的看法。
-
推理能力显著提高。
-
有时,即使完成了思考过程,也无法输出答案。我不确定这是否与模型有关。
-
有几次,即使 CoT 跟踪结果有些不一致,它也能给出正确答案。同样,我不确定这是否是预料之中的事情,也无从得知原因。
-
CoT 上的强化学习是有效的,不会卡住或崩溃,这是一个显著的进步。
推理 Reasoning
逻辑推理是它比现有模型做得更好的地方,这要归功于原生思维链的思维过程。这是该模型的全部卖点,而且它完全没有让人失望。它完全颠覆了所有的模型。
让我们从一个基本的推理问题开始。
#1.计算答复中的字数
Prompt: How many words are there in your response to this prompt?
我曾用 GPT-4o 和 Sonnet 3.5 试过同样的提示,但都没有答对。不过,O1 型号第一次尝试就答对了。
让我们再给它一项任务。
Prompt: How many letters are there in your response to this prompt?
在没有任何工具的帮助下,它也能完美地完成任务。与早期型号不同的是,它不会把特殊字符和数字误认为字母。
让我们更进一步。
Prompt: What’s the fourth word in your response to this prompt?
o1-preview 模型第一次尝试就成功了,而 GPT-4o 和 Sonnet 即使使用工具也无法做到这一点。
#2. Counting the number of letters ‘r’ in ‘Strawberry’
这是一个令人兴奋的测试,因为除了 Sonnet 3.5 之外,其他早期机型都无法在第一次尝试时就正确完成测试,而这款机型之所以令人兴奋,很大程度上是因为它能够成功完成测试。
Prompt: How many letters ‘ r’ are in the word ‘strawberry’?
出乎我们意料的是,该模型第一次尝试就获得了电流。
你可以观察到模型为得出答案所经历的一连串思考。
这越来越令人兴奋了,让我们提高问题的难度。
#3.C 在房间里做什么?
这一次,我问了一个比较棘手的推理问题。
Prompt: Five people (A, B, C, D, and E) are in a room. A is watching TV with B, D is sleeping, B is eating chow min, and E is playing table tennis. Suddenly, a call comes on the telephone. B goes out of the room to pick up the call. What is C doing?
GPT-4o 彻底傻眼了。下面是它的回答。
现在,让我们看看 o1-preview 的反应。
这很好!模型能够抓住问题的细微差别,成功地回答了问题。
#4.谁死于车祸?
让我们再来看看另一项推理任务。
Prompt: A woman and her son are in a car accident. The woman is sadly killed. The boy is rushed to the hospital. When the doctor sees the boy, he says, “I can’t operate on this child; he is my son! How is this possible?
这是一个典型的推理问题。出乎意料的是,模型并不能正确地解决这个问题。
嗯,这个回答没有道理。要达到 AGI,我们还有很长的路要走。
#5.农民和羊的问题
这是一个简单的问题,却能轻易地让任何法律硕士瞠目结舌。让我们看看 o1-preview 的表现如何。
Prompt: A farmer stands with the sheep on one side of the river. A boat can carry only a single person and an animal. How can the farmer get himself and the sheep to the other side of the river with minimum trips?
嗯,我看到的第一个模型就是在没有人工辅助的情况下,以零拍的方式解决了这个问题。
推理摘要
毋庸置疑,O1 系列与之前的机型相比有了很大的改进。它在复杂推理方面表现出色,但仍有改进的余地。它不会思考,但能原生执行思维链,从而提高推理能力。
数学
考虑到它在推理方面的优势,我几乎相信它会在数学上大显身手,而它也没有让我失望。
让我们向它抛出一些数学问题。这些问题是其他机型无法正确回答的。
#1.找出平行四边形可能的第 4 个顶点
让我们从代数问题开始。
Prompt: If three corners of a parallelogram are (1,1), (4,2), and (1,3), what are all the possible fourth corners?
这是吉尔伯特-斯特朗的《线性代数》中的一道题。
该模型在第一次尝试时能找到两个可能的顶点。但是,在提示下,它正确地回答了所有三个可能的顶点。
#2.求整数之和
让我们再试一道数学题。这次是代数。
Prompt: The greatest common divisor of two positive integers less than 100 equals 3. Their least common multiple is twelve times one of the integers. What is the largest possible sum of the two integers?
这是一个数学数据集问题,其他模型通常无法正确解答。
然而,o1-preview 一次就得到了正确答案,用时 37 秒。它在这方面的能力令人惊叹。
#3.三角问题
再举一个例子,这次是三角函数问题。
Prompt: A car is being driven towards the base of a vertical tower in a straight line and at a uniform speed. The top of the tower is observed from the car, and in the process, the elevation angle changes from 45° to 60°. How long will this car take to reach the tower’s base?
所有之前的模型都需要帮助才能正确回答这个问题。但是,o1-preview 回答正确。
#4.黎曼假说 Riemann Hypothesis
在此之前,我并不知道黎曼假设是什么。很多人都要求模型解决这个直到现在仍未解决的假说。不出所料,模型并没有试图解决这个问题。
我们还远远没有到达那里,但我们终将到达那里。
数学概要
与所有法律硕士相比,这是一个重大进步。它能正确回答许多难题。不过,它有时需要人工帮助才能得到完整答案,这也是公平的。
编码
现在让我们来检验一下 o1-preview 的编码能力。
让我们以 "超级英雄 "问题–一个相对棘手的动态编程问题–来测试最近在编码竞赛中出现的模型。这个问题不太可能受到污染,也就是说模型不太可能在这个问题上接受过训练。
问题
You are given a 0-indexed integer array nums representing the strength of some heroes. The power of a group of heroes is defined as follows:
Let i0, i1, ... ,ik be the indices of the heroes in a group. Then, the power of this group is max(nums[i0], nums[i1], ... ,nums[ik])2 * min(nums[i0], nums[i1], ... ,nums[ik]).
Return the sum of the power of all non-empty groups of heroes possible. Since the sum could be very large, return it modulo 109 + 7.
Example 1:
Input: nums = [2,1,4]
Output: 141
Explanation:
1st group: [2] has power = 22 * 2 = 8.
2nd group: [1] has power = 12 * 1 = 1.
3rd group: [4] has power = 42 * 4 = 64.
4th group: [2,1] has power = 22 * 1 = 4.
5th group: [2,4] has power = 42 * 2 = 32.
6th group: [1,4] has power = 42 * 1 = 16.
7th group: [2,1,4] has power = 42 * 1 = 16.
The sum of powers of all groups is 8 + 1 + 64 + 4 + 32 + 16 + 16 = 141.
Example 2:
Input: nums = [1,1,1]
Output: 7
Explanation: A total of 7 groups are possible, and the power of each group will be 1. Therefore, the sum of the powers of all groups is 7.
Constraints:
1 <= nums.length <= 105
1 <= nums[i] <= 109
这是只有 Claude 3.5 Sonnet 才能解决的问题之一,o1-preview 模型花了 91 秒才得出一个无法通过第一个测试案例的解决方案。我试了两次都没有成功。
这是输出代码。
class Solution:
def sumOfPower(self, nums):
MOD = 10**9 + 7
nums.sort()
n = len(nums)
# Precompute powers of 2 modulo MOD
pow2 = [1] * n
for i in range(1, n):
pow2[i] = (pow2[i - 1] * 2) % MOD
total_sum = 0
prefix_sum = 0
for i in range(n):
# Contribution of nums[i] as both min and max
min_max_contrib = nums[i] * nums[i] % MOD
if i > 0:
# Update prefix sum
prefix_sum = (2 * prefix_sum + nums[i - 1]) % MOD
total_contrib = nums[i] * min_max_contrib * prefix_sum % MOD
total_sum = (total_sum + total_contrib) % MOD
else:
total_sum = (total_sum + min_max_contrib * nums[i]) % MOD
return total_sum % MOD
编码能力概要
在我的测试中,它的编码能力尚可,但不是最好的。它在许多主题上的编码能力还算不错,但在许多主题上也很吃力。考虑到质量和推理方面的权衡,Sonnet 3.5 可能仍然是更好的选择。不过,我认为 OG O1 模型在这方面会比预览模型好得多。
4.创意写作
这款机型的市场定位并不是作家。在创意写作方面,我使用 GPT-4o 的体验还不错,但让我们看看它的表现如何。
我使用了一个简单的提示。
Prompt: Write a story with a twist about a college guy’s routine life, which turned upside down when he encountered a mysterious woman.
虽然故事不错,但仍然保留了 GPT 的语言。读起来不像人话。
相比之下,我更喜欢 GPT-4o 的转折。
创意写作能力概述
在我有限的测试中,我不喜欢 o1-preview 对创意写作任务的反应。Sonnet 3.5 和 GPT-4o 比 o1-preview 好。
最终审查
这是我对 o1-preview 模式的感受总结。
-
推理:这是支持这一模型的最有力论据。它正确地回答了许多难题,这是以前其他模型无法做到的。
-
数学:数学方面也很出色。它能回答代数、三角学、数制等方面的许多问题。
-
编码:我不像 Sonnet-3.5 那样喜欢它,但它比 GPT-4o 好。我相信未来的版本会有所改进。
-
创意写作不是该模型的强项。要想取得更好的效果,您应该使用 GPT-4o 或 Sonnet 3.5。