刘芳池第一次了解品牌特卖是孩子刚出生时,在一个卖尿不湿的群里,后来怀着好奇的心理,她也注册成为了梦饷科技的一名店主。
神秘的“草莓计划”是什么?整理 | 李冬梅 褚杏娟
大家期待中的 OpenAI 与谷歌“大战”并未如约而至,双方都打出了“毫无杀伤力”的棉花拳。
以为能等到“草莓”,没想到来了个“羽衣甘蓝”
尽管全世界都在盯着“草莓计划”,但似乎叛逆的 OpenAI 总是不尽如人愿。你要“草莓”,他们偏偏给你个“羽衣甘蓝”。
北京时间 14 日凌晨 2 点,OpenAI 在其官网上发文称正在发布一个经过人工验证的 SWE-bench 子集,该子集可以更可靠地评估 AI 模型解决现实世界软件问题的能力。
SWE-bench Hugging Face 地址:
https://huggingface.co/datasets/princeton-nlp/SWE-bench_Verified
作为准备框架的一部分(准备框架是 OpenAI 设立的一套安全地开发和部署其前沿模型的方法),OpenAI 开发了一系列指标来跟踪、评估和预测模型的自主行动能力。
一直以来,自主完成软件工程任务的能力是前沿模型自主风险类别中中等风险水平的关键组成部分。由于软件工程任务的复杂性、准确评估生成的代码的难度以及模拟真实世界开发场景的挑战,评估这些能力具有挑战性。因此,OpenAI 的准备方法还必须仔细检查评估本身,尽量减少高估或低估风险系数的可能性。
而这一套方法中最流行的软件工程评估套件之一就是 SWE-bench。它能用于评估大型语言模型到底能不能解决来自 GitHub 上的实际软件问题,以及能把问题解决到什么程度。基准测试包括为代理提供代码存储库和问题描述,并要求它们生成解决该问题所述问题的补丁。
根据 SWE-bench 排行榜,截至 2024 年 8 月 5 日,编码代理在 SWE-bench 上取得了令人瞩目的进步,得分最高的代理在 SWE-bench 上的得分为 20%,在 SWE-bench Lite 上的得分为 43%。
经过测试发现,一些 SWE-bench 上的任务可能难以解决或无法解决,这导致 SWE-bench 系统性地低估了模型的自主软件工程能力。因此 OpenAI 与 SWE-bench 的作者合作,在新版本的基准测试中解决了这些问题,该版本应该可以提供更准确的评估。
那么,SWE-bench 的背景是怎样的?
SWE-bench 测试集中的每个示例都是根据 GitHub 上 12 个开源 Python 存储库之一中已解决的 GitHub 问题创建的。每个示例都有一个关联的拉取请求 (PR),其中包括解决方案代码和用于验证代码正确性的单元测试。这些单元测试在添加 PR 中的解决方案代码之前失败,但之后通过,因此称为 FAIL_TO_PASS 测试。每个示例还有关联的 PASS_TO_PASS 测试,这些测试在 PR 合并之前和之后都通过,用于检查代码库中现有的不相关功能是否未被 PR 破坏。
对于 SWE-bench 中的每个样本,代理都会获得来自 GitHub 问题的原始文本(称为问题陈述),并被授予访问代码库的权限。有了这些,代理必须编辑代码库中的文件来解决问题。测试不会向代理显示。
FAIL_TO_PASS 通过运行和测试来评估拟议的编辑 PASS_TO_PASS。如果测试通过,则意味着解决了问题。如果测试通过,则编辑没有无意中破坏代码库的不相关部分。编辑必须通过这两组测试才能完全解决原始 GitHub 问题。FAIL_TO_PASS PASS_TO_PASS
采用 SWE-bench 作为准备情况评估
鉴于 SWE-bench 与准备框架的潜在相关性,研究人员旨在找到提高基准稳健性和可靠性的方法。因此确定了三个主要改进领域:
用于评估解决方案正确性的单元测试通常过于具体,在某些情况下甚至与问题无关。这可能会导致正确的解决方案被拒绝。
许多示例的问题描述不明确,导致无法明确问题是什么以及如何解决。
有时很难为代理可靠地设置 SWE-bench 开发环境,无论采用哪种解决方案,都可能无意中导致单元测试失败。在这种情况下,完全有效的解决方案可能会被评为不正确。
下面是一个说明第一个问题的例子。
SWE-bench 示例 scikit-learn__scikit-learn-14520 任务是让代理解决 scikit-learn 存储库中的问题 此问题陈述报告函数的 copy 参数可以由用户指定,但被库忽略(该行为而是在函数内部硬编码):
Copy param ignored in TfidfVectorizer
I was playing with vectorizers and I found this:
https://github.com/scikit-learn/scikit-learn/blob/ae16319626e2ca6ca0e54d4a5b83f73f817232aa/sklearn/feature_extraction/text.py#L1669
However that parameter is not used later in the method.
Here `copy=False` is used:
https://github.com/scikit-learn/scikit-learn/blob/ae16319626e2ca6ca0e54d4a5b83f73f817232aa/sklearn/feature_extraction/text.py#L1692
Is there anything I am missing?
解决上述问题的代理首先必须处理函数行为是有意为之还是错误的问题,然后对代码库进行更改以解决问题。根据 SWE-bench 设置,代理提出的任何解决方案都需要通过以下测试,该测试摘自 最初解决问题的 PR:
def test_tfidf_vectorizer_deprecationwarning():
msg = ("'copy' param is unused and has been deprecated since "
"version 0.22. Backward compatibility for 'copy' will "
"be removed in 0.24.")
with pytest.warns(DeprecationWarning, match=msg):
tv = TfidfVectorizer()
train_data = JUNK_FOOD_DOCS
tv.fit(train_data)
tv.transform(train_data, copy=True)
此测试明确检查解决方案是否在 copy 使用该参数时必须引发 DeprecationWarning,尽管上述问题文本中的原始问题陈述并未传达此要求。此外,即使代理意识到应该引发 DeprecationWarning,测试也要求代理完全匹配弃用消息,这是在代理无法访问的 PR 中进行一些讨论后才得出的结论。
请注意,代理仅从主要问题文本中获得了问题描述,并且无法看到它需要通过的测试。在这种设置下,代理几乎不可能在 SWE-bench 中解决此示例。
已通过 SWE-bench 验证
为了解决这些问题,OpenAI 与专业软件开发人员一起发起了一项人工注释活动,以筛选 SWE-bench 测试集的每个样本,以获得适当范围的单元测试和明确指定的问题描述。
OpenAI 与 SWE-bench 的作者一起发布了 SWE-bench Verified:SWE-bench 原始测试集的一个子集,包含 500 个经人工注释员验证无问题的样本。此版本取代了原始 SWE-bench 和 SWE-bench Lite 测试集。此外,OpenAI 还发布了所有 SWE-bench 测试样本的人工注释。
同时,OpenAI 还与 SWE-bench 作者合作,为 SWE-bench 开发了新的评估工具。它使用容器化的 Docker 环境使得在 SWE-bench 上进行评估更容易、更可靠。
在 SWE-bench Verified 上,GPT-4o 解析了 33.2% 的样本,其中表现最好的开源支架 Agentless 在 SWE-bench 上的得分是之前 16% 的两倍。
没有等来“草莓计划”官宣,这款测试集最多只能算得上一道餐前小吃。那么,这样一款测试集也值得 OpenAI 为此造势吗?
一周前,OpenAI 首席执行官 Sam Altman 发布了一个带有草莓图片的推文,并配文“我喜欢花园里的夏天”。图片中的四颗草莓,或许暗示了 GPT-4 的新版本可能专为推理而打造,可与专为创造和互动而打造的 GPT-4o 一起运行。这引发了大家对 OpenAI 发布新模型 Strawberry 的各种猜想。
近两天,X 上的爆料人 @iruletheworldmo 频繁发布 Strawberry 发布相关的消息,并表示 OpenAI 将在太平洋时间 8 月 13 日上午 10 点发布其新模型——一个以推理为重点的人工智能“草莓计划”(Strawberry)。整个社区全都是各种期待。
神秘的“草莓计划”是什么?
OpenAI 的新“草莓计划”可以让 ChatGPT 更自由地搜索网络并解决复杂问题。
“草莓计划”最早是在 7 月 12 日被外媒曝出。据知情人士和路透社审查的内部文件称,ChatGPT 制造商 OpenAI 正在一个代号为“Strawberry”的项目中研究其人工智能模型的新方法。
但该项目的细节此前未曾报道过,而微软支持的初创公司正在竞相证明其提供的模型类型能够提供高级推理能力。
根据路透社 5 月份看到的一份 OpenAI 内部文件副本,OpenAI 内部团队正在开发 Strawberry。路透社无法确定该文件的具体发布日期,该文件详细说明了 OpenAI 打算如何使用 Strawberry 进行研究的计划。消息人士向路透社描述了该计划,称其为一项正在进行的工作。该通讯社无法确定 Strawberry 距离公开发布还有多久。
这位知情人士表示,即使在 OpenAI 内部,Strawberry 的工作原理也是一个严格保密的秘密。
该文件描述了一个使用 Strawberry 模型的项目,目的是使公司的人工智能不仅能够生成查询的答案,而且能够提前规划,自主可靠地浏览互联网,从而执行 OpenAI 所称的“深度研究”,消息人士称。
根据外媒对十多位人工智能研究人员的采访,这是迄今为止人工智能模型尚未解决的问题。
当时,被问及 Strawberry 以及本文报道的细节时,OpenAI 公司发言人在一份声明中表示:“我们希望我们的人工智能模型能够像我们一样看待和理解世界。持续研究新的人工智能能力是业内的常见做法,大家共同相信这些系统的推理能力会随着时间的推移而提高。”
该发言人没有直接回答有关草莓的问题。
谷歌打擂台
Strawberry 一直以来“犹抱琵琶半遮面”,这次 OpenAI 再突然宣造势宣传,很难说不是为了追击谷歌几乎同时进行的“Made by Google 2024”硬件活动。
此次活动上,谷歌自己最新的硬件产品,包括期待已久的下一代 Pixel 手机:Pixel 9、Pixel 9 Pro 和新款 Pixel 9 Fold,此外还有新款 Pixel Watch 和 Pixel Buds 等硬件产品。虽然是硬件发布,但 AI 主题依然充满了整场发布。其中,谷歌的 AI 聊天机器人 Gemini 是 Pixel 9 手机的默认助手。
Pixel 9 系列将有三款传统机型,Pixel 9 ProFold 将采用重新设计的摄像头模块和 TensorG4 芯片组,Pixel Watch 3 将有两种尺寸可供选择,而 Pixel BudsPro 2 将有芦荟色和粉红色版本。
这几款机型均搭载谷歌自家的 Tensor G4 芯片,电池续航时间长达 24 小时以上,支持紧急 SOS 和危机警报,并可获得七年的软件和安全更新。所有这些型号的预售于 8 月 13 日开始。
谷歌已经围绕 Gemini 对其助手进行了改进。谷歌硬件主管 Rick Osterloh 表示:“这是我们推出谷歌助手以来最大的一次飞跃。”谷歌承诺,该助手不仅适用于高端旗舰设备,还适用于现有设备——不仅谷歌手机可以使用该工具,所有 Android 手机都可以使用。为了保护个人信息隐私,涉及最敏感信息的请求将由手机上的 AI 模型 Gemini Nano 处理。
在三星和摩托罗拉设备上的 Gemini 现场演示中,出现了一些小问题,但很快更正了。“但这并不奇怪,因为我们之前在 Assistant 和其他所有 AI 上都见过这种情况。不过,当它正常工作时,Gemini 特别酷!”有网友评价道。
另外,新款 Pixel 手机将搭载 Android 14,而非 Android 15。不过,谷歌宣布了 Android 15 中的全新 Gemini 功能,包括备受期待的 Gemini Live 的推出。Gemini 之外的 AI 功能也遍布 Android 15 的各个角落,升级了照片编辑、电话通话等。根据介绍,Android 15 将围绕让 “Gemini 掌控一切并让谷歌的人工智能为用户服务”展开。
Gemini Live 允许用户与 AI 进行对话,对人类语音作出更真实的反应,理想情况下的响应会更像人类。AI 专家 Kyle Wiggers 强调,Gemini 可能具有优势:“Live 所依赖的生成式 AI 模型 Gemini 1.5 Pro 的架构拥有比平均水平更长的‘上下文窗口’,这意味着它可以在作出回应之前吸收和推理大量数据。”
另外,谷歌还发布了一些其他 AI 应用。Pixel Weather 是一款为 Pixel 9 系列重新设计的天气应用,带有方便的 AI 摘要,并且完全可自定义。Call Notes 可以挂断电话后为用户提供 AI 支持的通话摘要,甚至可以查看通话的完整记录。为了保护隐私,通话和摘要可以选择在设备上处理,而不必发送到云端。
结束语
至此,OpenAI 耗完了部分网友的耐心。“Strawberry 的所有炒作都结束了,正如预期的那样,OpenAI 又发布了一篇博客文章。对于那些一直在等待的人,我理解你们的感受,但你们对 OpenAI 的期望非常不切实际。”
但是谷歌的表现也没有特别亮眼。“谷歌的企业营销无法与网上的‘匿名草莓宗教’竞争”知名爆料人 @Jimmy Apples 说道。
可以预见大家都在用什么配资平台,两者的 AI 战争还将继续。