Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

扒一扒 OpenAI 新出的 o1 大模型 (一):为什么这么强? #129

Open
cssmagic opened this issue Sep 14, 2024 · 0 comments
Open

Comments

@cssmagic
Copy link
Owner

最近,坊间关于 “OpenAI 不行了” 的论调甚嚣尘上,然而 OpenAI 不慌不忙丢出了一个大招——o1 大模型,瞬间又将 OpenAI 推上了潮流之巅。

o1 大模型就是山姆·奥特曼近期一直在造势的 “草莓” 大模型。据称,o1 着重发力于复杂的通用推理场景,在数学、编程、科学等领域远远超过了 GPT-4o 等上一代模型。

compare

在 Artificial Analysis 的多维度测评中,o1 系列模型也是轮番霸榜,轻松拉开了与老对手 Claude 3.5 Sonnet 的差距。这些数据和排名确实十分亮眼,但……它是怎么做到的?

除了 OpenAI 一以贯之的 “规模化定律” 以外,o1 的优异表现还归功于以下两方面的创新:一、模型层面的技术优化,二、产品层面的思路突破。这两者缺一不可。

模型层面

根据目前透露的信息,o1 通过强化学习提升了思维链的运用能力,从而可以在更复杂的场景下进行有效推理,解决更复杂的逻辑问题。实际效果确实立竿见影,上述各项基准测试的优异成绩就是例证。

这里有一个关键词是 “思维链”。思维链也就是 CoT(Chain of Thought),是一项重要的提示工程技巧,通过要求模型 “一步一步思考” 并辅以思维过程的少量示例,可以显著提升模型的推理效果。

由于 o1 模型在内部强化了思维链的能力,它与其他大模型不同的是,在正式输出回复之前,它会有一个 “内部的” 思考过程,如下图所示:

single-turn

这样做有什么好处呢?这就要从大模型的工作原理说起。大家应该听说过一个比喻,大模型的工作过程就像是一场 “文字接龙” 游戏——它根据输入的提示词来预测下一个 token,再根据已经预测的 token 来继续预测后续 token。

也就是说,大模型并没有像人类那样的思考过程,总是直接答题。如果抛给它一个复杂的问题,它给出的回复大概率是不靠谱的。

这种 “一锤子买卖” 显然没有发挥出大模型的全部潜力。因此,聪明的提示工程师们提出了 “思维链” 这个概念,希望通过引入思考过程,让大模型能够更好地理解问题并拆解问题,从而给出更准确、更合理的回答。

而 o1 模型把这个思路发挥到了极致——用户只管提问就好,不需要费心构建适合当前问题的思维链,而 o1 自己就在肚子里把这个过程默默完成了,留给用户的就是一段高质量的回答!

有了强大的模型,还需要有一个好的产品来呈现。ChatGPT 也在这方面下足了功夫。

产品层面

ChatGPT

ChatGPT 的 Plus 与 Team 付费会员现在就可以试用 o1 模型了。我们打开 ChatGPT 对话界面,在左上角的模型选择下拉框中可以看到新增的 “o1-preview” 和 “o1-mini”。通常选择前者就好。

chose-model

我们尝试一下前段时间难倒一众大模型的问题——“Strawberry” 这个单词有几个 “r”?

提交问题之后,o1 模型并没有急于输出结果,而是进入了一个思考过程(如下图所示)。

step-1

step-2

这个过程持续了数秒钟,然后给出了正确回答:

step-3

如果你好奇它到底思考了些什么,可以点击展开回答上方的思考过程:(我们可以看到,思考过程是全英文的)

step-4

由于这个案例本身不算复杂,所以图中的思考步骤稍显冗长。不过对于需要多步推理的问题来说,这里的思考步骤应该会更加精彩,甚至可能会有反思和修正。

引入思考过程后,用户的等待时间一定会变长。不过,这段长达数秒的思考过程并没有想象中那样乏味,因为界面一直在动态更新,用户可以清晰地感知当前的状态。这个过程堪称交互设计的典范。

API

o1 模型的 API 也已上线,但尝试过 API 之后,我们就会发现 ChatGPT 所用的 o1 模型是个 “特供版”——因为通过 API 调用 o1,既看不到思考过程,也没有流式输出。

API 的返回结果为什么要省略思考过程?这应该也是产品层面的决策:一方面,这个思考过程并不是给用户看的(而是模型为了给自己思考空间,自己写给自己看的);另一方面,开发者也可以更容易地实现多轮对话(思考过程不需要加入对话上下文)。

o1 模型的多轮对话实现方式如下图所示,我们可以看到思考过程(即图中的 Reasoning 环节)并不会加入到下一轮对话的输入:

multi-turn-convo

而至于 API 不能流式输出,应该只是暂时的限制(很可能 OpenAI 还没想好怎么扩展现有的 API 协议)。放心,未来一定会放开的

小结

今天先聊到这里,下期文章将继续探讨 o1 大模型在现阶段的局限,并分析它对开发者的影响。不要错过!各位新朋友请关注公众号,下次更新不迷路

weixin-qrcode


📣 AI 魔法群开放啦!

对 AI 感兴趣的同学不妨扫码加群,与数百名同好交流分享:

qun-qr


🔥 往期推荐

AI 应用开发指南:

ChatGPT 高级技巧:

AI 资讯与评述:


© Creative Commons BY-NC-ND 4.0   |   我要订阅   |   我要打赏

@cssmagic cssmagic changed the title 扒一扒 OpenAI 新出的 o1 大模型 (一):有哪些创新? 扒一扒 OpenAI 新出的 o1 大模型 (一):为什么这么强? Sep 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant