GPT-4o vs. GPT-4 vs. Gemini 1.5 性能评测,谁更胜一筹!

2024-06-02 03:52

本文主要是介绍GPT-4o vs. GPT-4 vs. Gemini 1.5 性能评测,谁更胜一筹!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

OpenAI 最近推出了 GPT-4o,OpenAI有一次火爆了,其图像、音频、视频的处理能力非常强。

最令人印象深刻的是,它支持用户与 ChatGPT 实时互动,并且能够处理对话中断。

而且,OpenAI 免费开放了 GPT-4o API 的访问权限。

在本文中,我将分析比较 GPT-4o、GPT 4 和谷歌的 Gemini 和 Unicorn 模型在英文数据集上的分类能力。看看这些模型中哪个最强?

GPT-4o 的新特性是什么?

GPT-4o最大特性是能更好地无缝理解和处理文本、音频和视频。

OpenAI 的重点似乎转向了将 GPT-4 级别的智能开放给大众,使即使是免费用户也能访问 GPT-4 级别的AI大模型。

OpenAI 还宣布 GPT-4o 在超过 50 种语言上都提高了质量和速度,承诺提供更具包容性和全球可访问性的 AI 体验,而且价格更便宜。

他们还提到,付费用户将获得比非付费用户多五倍的容量。

此外,他们发布了 ChatGPT 的桌面版本,以便为用户提供跨音频、视觉和文本接口的实时推理。

如何使用 GPT-4o API?

新的 GPT-4o 模型遵循 OpenAI 现有的聊天完成 API,使其向后兼容且易于使用。

from openai import OpenAIOPENAI_API_KEY = "<your-api-key>"def openai_chat_resolve(response: dict, strip_tokens = None) -> str:if strip_tokens is None:strip_tokens = []if response and response.choices and len(response.choices) > 0:content = response.choices[0].message.content.strip()if content is not None or content != '':if strip_tokens:for token in strip_tokens:content = content.replace(token, '')return contentraise Exception(f'Cannot resolve response: {response}')def openai_chat_request(prompt: str, model_name: str, temperature=0.0):message = {'role': 'user', 'content': prompt}client = OpenAI(api_key=OPENAI_API_KEY)return client.chat.completions.create(model=model_name,messages=[message],temperature=temperature,)response = openai_chat_request(prompt="Hello!", model_name="gpt-4o-2024-05-13")
answer = openai_chat_resolve(response)
print(answer)

GPT-4o 也可以通过 ChatGPT 界面使用:

OpenAI官方评估

OpenAI 官网发布了各种主流大模型,针对已知数据集(如 MMLU 和 HumanEval)的评估分数。


从图表中可以看出,GPT-4o 的性能是这一领域的最先进水平 —— 考虑到这个新模型更便宜、更快,这看起来已经很牛了。

然而,在过去的一年里,我见过多个声称在已知数据集上具有最先进语言性能的模型。

实际上,其中一些模型部分训练(或过度拟合)在这些开放数据集上,导致在排行榜上的分数不切实际。

因此,使用不太知名的数据集独立分析这些模型的性能非常重要 —— 比如我创建的这个 😄

我的评估数据集

我新建了一个主题数据集,我们可以用它来衡量不同大型语言模型(LLMs)的分类性能。

数据集包含 200 个句子,分为 50 个主题,其中一些主题密切相关,旨在使分类任务更具挑战性。

我手动创建并标记了整个数据集的英文版本。

然后我使用 GPT4 (gpt-4–0613) 将数据集翻译成多种语言。

然而,在这次评估中,我们只会评估数据集的英文版本 —— 这意味着结果不应受到使用相同语言模型进行数据集创建和主题预测可能带来的偏见的影响。

测试性能结果

这次我评估了以下模型:

  • GPT-4o: gpt-4o-2024-05-13
  • GPT-4: gpt-4-0613
  • GPT-4-Turbo: gpt-4-turbo-2024-04-09
  • Gemini 1.5 Pro: gemini-1.5-pro-preview-0409
  • Gemini 1.0: gemini-1.0-pro-002
  • Palm 2 Unicorn: text-unicorn@001

给到语言模型的任务是将数据集中的每个句子与正确的主题匹配。

这使我们能够计算每种语言和每个模型的准确率以及错误率。

由于模型大多数情况下都能正确分类,我正在为每个模型绘制错误率。

记住,错误率越低表示模型性能越好。


从图表中我们可以得出,GPT-4o 在所有模型中错误率最低,只有 2 个错误。

我们还可以看到,Palm 2 Unicorn、GPT-4 和 Gemini 1.5 与 GPT-4o 非常接近 —— 展示了它们强大的性能。

有趣的是,GPT-4 Turbo 的性能与 GPT-4–0613 类似。

最后,Gemini 1.0 落后了,这是意料之中的。

多语言

比较 gpt4o 与其他大型语言模型(如 Claude Opus 和 Gemini 1.5)的多语言能力。


gpt-4o-2024-05-13在多语言的处理能力最强,gpt-4-0613垫底。

结论

通过使用独特制作的英文数据集进行的这项分析,揭示了这些先进语言模型的最先进能力。

GPT-4o,OpenAI 的最新产品,在测试模型中错误率最低,这证实了 OpenAI 关于其性能的声明。

AI 社区和用户都必须继续使用不同的数据集进行独立评估,因为这些有助于提供比单一标准化基准测试所建议的更清晰的模型实际效果。

请注意,数据集相当小,结果可能会根据数据集的不同而变化。

来自:medium Lars Wiik

这篇关于GPT-4o vs. GPT-4 vs. Gemini 1.5 性能评测,谁更胜一筹!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1022958

相关文章

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

Golang中拼接字符串的6种方式性能对比

《Golang中拼接字符串的6种方式性能对比》golang的string类型是不可修改的,对于拼接字符串来说,本质上还是创建一个新的对象将数据放进去,主要有6种拼接方式,下面小编就来为大家详细讲讲吧... 目录拼接方式介绍性能对比测试代码测试结果源码分析golang的string类型是不可修改的,对于拼接字

4G/5G全网通! FiberHome烽火5G CPE Air路由器拆机评测

《4G/5G全网通!FiberHome烽火5GCPEAir路由器拆机评测》烽火5GCPE已经使用一段时间了,很多朋友想要知道这款路由器怎么样?今天我们就来看看拆机测评... 我想大家都听说过、了解过5G。 5G是具有高速率、低时延和大连接特点的新一代宽带移动通信技术,5G通讯设施是实现人机物互联的网络基础设

mysql线上查询之前要性能调优的技巧及示例

《mysql线上查询之前要性能调优的技巧及示例》文章介绍了查询优化的几种方法,包括使用索引、避免不必要的列和行、有效的JOIN策略、子查询和派生表的优化、查询提示和优化器提示等,这些方法可以帮助提高数... 目录避免不必要的列和行使用有效的JOIN策略使用子查询和派生表时要小心使用查询提示和优化器提示其他常

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

Tomcat高效部署与性能优化方式

《Tomcat高效部署与性能优化方式》本文介绍了如何高效部署Tomcat并进行性能优化,以确保Web应用的稳定运行和高效响应,高效部署包括环境准备、安装Tomcat、配置Tomcat、部署应用和启动T... 目录Tomcat高效部署与性能优化一、引言二、Tomcat高效部署三、Tomcat性能优化总结Tom

C#使用yield关键字实现提升迭代性能与效率

《C#使用yield关键字实现提升迭代性能与效率》yield关键字在C#中简化了数据迭代的方式,实现了按需生成数据,自动维护迭代状态,本文主要来聊聊如何使用yield关键字实现提升迭代性能与效率,感兴... 目录前言传统迭代和yield迭代方式对比yield延迟加载按需获取数据yield break显式示迭

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

正则表达式高级应用与性能优化记录

《正则表达式高级应用与性能优化记录》本文介绍了正则表达式的高级应用和性能优化技巧,包括文本拆分、合并、XML/HTML解析、数据分析、以及性能优化方法,通过这些技巧,可以更高效地利用正则表达式进行复杂... 目录第6章:正则表达式的高级应用6.1 模式匹配与文本处理6.1.1 文本拆分6.1.2 文本合并6