草莓团队创造了o1 - Building OpenAI o1 (Extended Cut) 观后笔记

美妙的事物往往需要世界去创造,商业希望大模型越来越快给出回答。或许花费几个月几年的时间持续思考,大模型能够解决更复杂的问题,而不只是回答42

刚发现凌晨OpenAI发布了一个22多分钟的采访,将构建出O1的整个团队拉到一个小屋子,讲述了关于新模型的故事。

1 O1 一个推理模型

它是一系列新模型的其中之一,和4O的体验会不一样

包含两个模型:o1-preview + o1 - mini,都是基于O1框架构建的

1.1 什么是推理

对于简单的问题,我们需要快速的得到答案:例如湖南省会城市等。简而言之就是一手的知识,可以直接得到答案的那些,或者说可以死记硬背的那些知识。

但是对于复杂的问题:解密、写商业计划或者小说等,回答之前稍微思考一下会更好。

总之,推理就是用 用时间换取更好的输出

1.2 研究多久了

其实是在Alpha Go启发了他们,尤其是深度强化学习的表现,想着如何将RL-强化学习和GPT两种范式结合起来。具体的开始时间点很难确定,因为前期做了不少探索和准备工作,项目的确定到研发花费了挺长的时间。

2 AHA!时刻

我记得在一本书里面看到过,就是一个惊叹、困惑或者觉悟的时刻,啊哈?

1. 第一次训练集成了COT的模型时

2. 让模型自身用强化学习生成思考步骤,比让人类写出思考过程再训练,表现更好

3. 看到o1解答数学题的过程中,发现了很多有趣的点子

        读它的思考过程就像一种灵性的体验

4. 因为设置了有限的思考时间和容量,快到这个节点时,它会想:嗷,时间快到了,我得先给出个答案了

5. 它的思考过程和“我"很相似

3 遇到的挑战

训练大模型本身就是很难得,会有上千个出错的点,实际上也会冒出上百个错误

让大模型按照某个达到目标得路径去思考,是很煎熬得事情(仅仅是使用4o,想让它按照指定格式输出,也得不断调整prompt适应不同的case)

就好像发射火箭登录月球,一旦角度错了,过程就很煎熬。因为COT专注的就是逻辑正确性,想要让它学会和掌握逻辑是有点难的,毕竟十分的抽象。(说的是掌握逻辑推理本身,而不是用逻辑推理分析问题)

它通常表现得很好,但遇到一些敏感问题时,还会有些不可靠,所以还需要评估更多的测试(后面会提到这个强化学习除了让它会推理,还希望能够强制遵守预定义原则)

对于一些有趣问题的回复

        当在twitter看到有人说gpt不能做啥,就把问题和答案复制过来去训练它。

        把答案hardcode在模型里面

4. O1 可以用来做什么

4.1 写代码

        关注于需求和问题的定义-关注于重点和高层的定义使用TDD方式开发,自己就主要编写测试代码,作为质量把关。我其实在思考有没有可能将高层的定义可视化,但是没时间去具体做,github仓库倒是开了,就是根据需求设计自动生成代码,而不是基于UI,UI在我看来只是一部分。

这里就有个点要注意哈!现在很多工具都支持单元测试,模型也有这个能力,但单元测试如果自己不仔细审核是会有问题的。生成的单元测试如果根据有问题的来,单元测试也是错的

4.2 Debug

        将错误信息丢给o1,它的思考过程会给出很多的有用的信息,应该是相对于4o更多的信息

4.3 头脑风暴和写文章

        因为会反复思考,所以过程中会不断保持风格等的一致性和关联性,内容中也会有相互引用等待,出现错误也能自动修正

        因为可以思考,所以对于头脑风暴这种,它会先自己筛选一遍,选出比较好的,而不是一股脑的输出了。

4.4 处理非结构化思考

        这些目前的4o等也差不多可以做到,但它能够进一步的分析。我在想,或许我需要开一篇文介绍下知识的层级,也就是直接获取的知识以及需要推理才能获得的基于上下文的知识。

4.5 目前不擅长的事情

        目前它的知识库并不多,尤其是世界的知识,毕竟专注点是逻辑推理。但在scaling的时候,会不断的增加这些内容的。

5 还没意识到的特别重要的事情

5.1 大模型的完备生态系统

        运行超大规模的模型、超大规模的数据集和大模型的训练.,当然目前是有相关的生态的,例如各种云计算厂商,尤其微软的azure是可以运行gpt4的,但是它们的表现,可能并没达到期待。而我们更不用说了,因为没有类似的模型,也就没有需求,虽然生物医疗方面的数据也很大,但可能到了那个位置才能看到问题。

5.2 跨项目的一致性模式

        这个可能是产品方面的,因为模型会不断的迭代,旧的模型会取代新的模型,但如果能够留下点东西肯定会更好吧。或许也是为了找到一种创新的模式

5.3 团队氛围

        互相陪着吃饭、闲逛、写代码、测试等等,有时候我也挺期待所谓的peercode的。

6. 草莓团队工作怎么样

       成员之间都比较近,可以及时的问问题、一起测试等。不要觉得问问题很蠢,立刻问就对了每个项目都会有很大收获,从Dota2Bot获得了工程化经验,从GPT4学到了需要不停的做研究,可能是最大的研究性团队了吧?我猜说的是紧密联系的那种,不像小组的模式。

        大家都有自己的热情和激情,知道什么时候该学习、什么时候该写代码、什么时候该熬夜了

       每个人都贡献了很多想法,都是不停的迭代成现在这样。当一个人,说相信这个点子不错,感兴趣的就会一起去尝试实现它,哪怕有些人自己定了不少deadline,也会尽量去尝试更多 

        大致是:从一个足够吸引人的起始点,大家努力做出个可用的版本,然后不断共享自己的想法来完善它,就像滚雪球一样,最后会发现这就是我们想做的。 这个和xspace当初定将汽车送上太空的目标差不多,工程师都是理想主义,如果定的目标是卖多少单,实现多少KPI肯定是很蒙的,不如一个看似荒唐或浪漫的同一目标。

7 为什么会有o1 mini

        o1 mini是为了更快的构建出一个o1实现的流水线,以较低的成本和较快的速度验证。

8 为什么要构建o1

        构建一个有能推理的模型很酷。

        美好事物出现需要时间,我们的大模型有着回答越来越快的趋势。目前只给了它几分钟的时间思考,未来可能让它能够花费数月数年的时间去思考,从而创造出更好的事物。

        世界需要个有用的东西,现实世界是需要逻辑推理遵守规则的。为了解锁一些以前模型未具备的能力。尤其是想要结果更可靠,自身的推理是不可或缺的,不然都没法发现错误或者更好的可能性

 9 模型的人格

        观察了模型的元数据,发现每次训练的模型,都会有自己的小癖好,有着不同的倾向、擅长和不擅长的,每个模型都像有人格一样

看这些东西,有时候感觉世界上有一些自身的碎片,我也在尝试用多个模型的组合,实现模拟思维,只是目前能够使用的模型表现欠佳,不得不吐槽下部分模型了,复杂点的prompt理解能力很差需要反复调反复调

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/146345.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

让Tkinter更美观:教你同步Tkinter窗口与弹窗图标(Tkinter同步主窗口与Messagebox的图标)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 步骤1:主窗口图标📝 步骤2:messagebox 图标📝 示例代码📝 实现原理与代码解释⚓️ 相关链接 ⚓️📖 介绍 📖 你有没有注意到,在开发软件图形界面时,会需要弹出一些提示框,而这些提示框的图标总…

695. 岛屿的最大面积

思路: 只有当前是陆地,才会构成岛屿 当前是陆地,进入回溯 往当前的上、下、左、右位置分别找陆地位置,为陆地 1>标记为2:代表已经遍历过的陆地 2>记录当前方向的陆地总数 以当前陆地组成的岛屿面积当前陆地面积向上的…

11----mtk芯片专用解锁工具 解除FRP 很小的工具 去除屏幕锁 免授权等等 工具预览与步骤解析

机型的FRP锁是谷歌账号锁。工具是mtk芯片使用 。可以去除当前机型的FRP和米账号重置。操作非常简单。但前提是联机驱动要装好。任何的工具联机驱动是关键。 工具功能选项 ★★★★★工具开发者说明功能与选项操作与资源下载 ★★★★★具体工具操作使用指南 工具联机界面与…

Type-C协议(CC检测原理)-CC1和CC2接电阻-数字和模拟耳机兼容

Type-C协议(CC检测原理)-CC1和CC2接电阻-数字和模拟耳机兼容 - Sean_hn - 博客园 (cnblogs.com)

4.变量与函数

作业系统链接 变量是Python中用于存储数据的命名标签,通过赋值,新值可以覆盖旧值,且数据类型不必相同。变量命名规则包括必须以字母或下划线开头,由字母、数字和下划线组成,大小写敏感,并避免使用保留字。函…

精选写作技巧!分享4款ai写毕业论文可以写出公式表格的软件

在撰写毕业论文时,AI写作工具可以极大地提高效率和质量。以下是四款值得推荐的AI软件,它们不仅能够帮助生成高质量的论文初稿,还能处理公式和表格等复杂内容。 传送门:https://www.aipaperpass.com?piclLGw 千笔-AIPassPaper是一…

Rx Strategist:智能体实现处方验证的方方面面,如适应症、剂量、药物相互作用

Rx Strategist:智能体实现处方验证的方方面面,如适应症、剂量、药物相互作用 秒懂大纲提出背景:拆解解法分析全流程分析创意 秒懂大纲 ├── 处方验证系统【主题】 │ ├── 背景和问题【问题描述】 │ │ ├── 现代药物复杂性对严…

2024年华为杯研究生数学建模竞赛研赛C题超详细解题思路+数据预处理代码分享

研赛题目由当年负责赛区【23年为东南大学,24年为山东大学】的相关老师每年独立命题,因此每年的题目在涉及的模型和知识点上都有很大差异。数模竞赛是百分比获奖,选择人数最多的也就意味着题目简单,会有很多新手、小白选择。我们只…

python有main函数吗

python和C/Java不一样,没有主函数一说,也就是说python语句执行不是从所谓的主函数main开始的。 当运行单个python文件时,如运行a.py,这个时候a的一个属性__name__是__main__。 当调用某个python文件时,如b.py调用a.p…

华为HarmonyOS地图服务 13 - 如何实现地图数据聚合效果?

场景介绍 本章节将向您介绍如何根据地图数据实现聚合效果。 您可以通过比例尺缩放自适应聚合效果,聚合图标可点击。聚合支持功能: 支持按距离聚合ClusterItem。支持绘制聚合Overlay的默认图标。支持绘制聚合Overlay的自定义图标。支持监听聚合Overlay的点击事件。支持添加单…

华为为什么要做三折叠屏手机?

前些天我做了一条视频,关于讲华W的新的三折叠屏手机。我说我有点失望,结果引起了华W的同事的一些关注。于是,华W几位高管都跑过来,跟我解释为什么会出现这样的一个状态。 我才知道,这款手机他们其实是亏着钱在卖的。因…

云盘视频保护神器,支持云盘视频加密与在线播放,配合alist使用,超完美!

平时我们保护视频,一般都是采用压缩工具,进行加密打包,然后在上传到网盘存储。这虽然能起到很好的保护,但是有很多问题?比如:无法直接在线播放,还得从网盘中下载后解压,才能进行观看…

【shell脚本1】Shell脚本学习--入门

目录 简介 Hello World 注释 打印输出 简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本。 Unix/Linux上常见的Shell脚本解释器有bash、sh、csh、ksh等,习惯上把它们称作一种Shell。我们常说有多少种Shell,其实说的…

ProtoBuf序列化框架介绍

文章目录 ProtoBuf介绍使用流程 QUICK START创建.proto文件注释语法编译部分代码展示使用接口运行结果 ProtoBuf介绍 ProtoBuf全称是Protocol Buffer,是一个数据结构的序列化和反序列化框架 他又很多好处,首先是他支持跨平台,支持Java、C、…

进程间通信的七种方法实战演示!值得收藏!

文章目录 前言一、管道(Pipes)管道示例代码:管道示例流程解读:管道示例运行效果: 二、消息队列(Message Queues)消息队列示例代码消息队列示例流程解读:消息队列示例执行效果 三、共…

分析redis实现分布式锁的思路

文章目录 1、基于redis实现分布式锁:利用key的唯一性1.1、独占排他1.2、死锁问题1.2.1、redis客户端程序获取了锁之后,服务器立马宕机,就会导致死锁。1.2.2、不可重入:可重入 1.3、原子性:加锁和过期之间:s…

【JavaEE】——线程的安全问题和解决方式

阿华代码,不是逆风,就是我疯,你们的点赞收藏是我前进最大的动力!!希望本文内容能够帮助到你! 目录 一:问题引入 二:问题深入 1:举例说明 2:图解双线程计算…

springboot数字化超市管理系统—计算机毕业设计源码34804

摘 要 在网络信息的时代,众多的软件被开发出来,给用户带来了很大的选择余地,而且人们越来越追求更个性的需求。在这种时代背景下,超市只能以用户为导向,按品种小批量组织生产,以产品的持续创新作为超市最重…

ONES 与华为云深度合作,共同打造企业智能研发管理平台

9月20日,在华为全联接大会(HUAWEI CONNECT 2024)上,深圳复临科技有限公司(以下简称“ONES”)与华为云计算技术有限公司(以下简称“华为云”)正式签署合作协议,双方将在企…

Python | Leetcode Python题解之第421题数组中两个数的最大异或值

题目: 题解: class Trie:def __init__(self):# 左子树指向表示 0 的子节点self.left None# 右子树指向表示 1 的子节点self.right Noneclass Solution:def findMaximumXOR(self, nums: List[int]) -> int:# 字典树的根节点root Trie()# 最高位的二…