写点什么

万字全面评测(下篇):文心一言 vs ChatGPT

作者:doumoman
  • 2023-09-15
    上海
  • 本文字数:7299 字

    阅读完需:约 24 分钟

摘要:这是全面对标评测百度文心一言和 OpenAI 的 ChatGPT(包括 3.5 和 4)的下篇。豆茉君从 P.性能表现D.开发友好两大主题、11 个方面展开了评测。

前言

接着全面评测(上篇):文心一言 vs ChatGPT,下篇将对文心一言和 ChatGPT 的性能表现开发友好这两个主题进行对标评测。

先说结论,一图胜千言:


其中,对于如何有效地评测性能表现,豆茉君思索了很久。

首先,我想需要对人类智力活动和 AI 工具定位做一个设定。从人类个体角度出发,豆茉君认为,我们的智力活动有两个对象:一个是外在的世界,我们需要不断地增进对世界的了解;一个是内在的自我,我们需要不断地提高对自我的认知。

人类大脑智力活动的本质,是对数据、信息、知识和智慧进行处理、加工和产出的过程。而语言是人类思维的桥梁,是思考过程的载体,是智力产出的外化,对于人类智力的发展起到了至关重要的作用。

文心一言和 ChatGPT 作为大语言模型应用,它们在被训练的时候就被喂食了有关这个世界、有个人类本身的很大一部分的数据、信息、知识甚至智慧。所以,它们肚子里面的货比任何人类个体都多得多,但是它们还没有自我意识更没有主观能动,所以不会有目的地进行智力活动。(关于这部分内容,请移步豆茉君前面一篇文章:打工人要的安慰,GPT 给不了

如果说外化的文字,是给我们大脑外接了一台显示器,以达到反复加强从眼睛看到脑袋想再到眼睛看的这个循环过程,以达到刺激大脑思维产出的效果,即形成大脑和自我外化的一部分镜像快照形成沟通交流的回路。

那么大语言模型 AI 则更像是给大脑联通了一个外挂,它能让大脑快速触达人类巨量的智力成果,而不要求大脑预先进行学习、记忆,这极大的释放了人脑的学习压力(虽然人脑长期记忆容量是惊人的,但是学习效率太低),增加了人脑的工作容量(人脑的工作容量非常有限,一次激活加载的记忆区域不超过 7 个)。

与传统的搜索引擎不同,AI 能够跟大脑进行丝滑的对话沟通,会直接给出知识甚至智慧,而不要求大脑完成数据收集、信息组织再到提炼知识的工作步骤,让大脑能够更专注于最后一步即智慧的产出。

从这个角度理解,大语言模型 AI 是人类绝佳的智力活动副驾驶,这也是人们通常把它称之为 Copilot 、贾维斯的原因。

智力活动的 16 象限分解

为了确定性性能对标评测的测试内容,豆茉君结合上面前言的思考结果,把智力活动分成了 16 个象限。如图:

三个维度

16 象限的划分依靠三个维度:

1、DIKW 模型

DIKW 模型是一个用于描述数据、信息、知识和智慧之间关系的概念模型。这个模型通常以金字塔形式表示,从底层到顶层分别是:数据(Data)、信息(Information)、知识(Knowledge)和智慧(Wisdom)。每一层都是基于其下一层构建的。

数据(Data)

数据是未经处理的原始事实和统计数字。数据本身没有意义,需要进一步处理和分析。例如:温度读数、销售数字、人口统计数据。

信息(Information)

信息是经过组织、分类或解释的数据。信息提供了一种更高级别的组织和解释,通常用于描述某种情况或环境。 例如:天气预报、销售报告、人口普查结果。

知识(Knowledge)

知识是经过深入理解、分析和应用的信息。知识通常包括观点、技能、经验和教训,用于解决问题或进行决策。 例如:如何修复一个机器、如何进行有效的项目管理、医学或法律专业知识。

智慧(Wisdom)

智慧是一种更高级的认知形式,通常涉及到道德、伦理和长期目标的考虑。智慧不仅仅是知识的应用,还包括对何时、如何以及为什么应用这些知识的深入理解。 例如:如何公平地分配有限资源、如何做出道德和伦理上正确的决策、如何实现长期的可持续发展。

图中用同心圆表示,从外到内依次为数据、信息、知识和智慧。

2、已知和未知

图中的 X 轴,左边(已知)代表已经被确认或理解的内容,而右边(未知)代表尚未被发现或理解的内容。

3、世界与自我

图中的 Y 轴,上面(世界) 代表与外界、社会或环境有关的内容,而下面(自我) 代表与个人、内心或主观经验有关的内容。

象限清单

接下来的性能表现测试,将会用针对 16 个象限设计 16 个问题,然后分别发给文心一言、ChatGPT 3.5 和 GPT-4,看看它们的回答质量。需要注意的是:

1、进行零样本提示问答测试。

所谓零样本提示,就是直接一句话问出问题,而不采用优化设计后的复杂提示词。

2、不启用任何插件

3、测试语言:中文

4、对于有确切答案的,答对得 1 分,不全对得 0.5 分,全错得 0 分。

5、对于没有确切答案的,豆茉君自行打分,优、中、差三档得分 1、0.5 和 0 分。

P. 性能表现 Performance

P1 工作记忆

我们先来对比一下工作记忆容量。这个指标非常关键,直接决定了对话篇幅。这里不纳入评分考核。

所谓工作记忆,是指在一次对话中,AI 能记住并处理的最大篇幅。用于衡量最大篇幅的单位叫 token 数。token 是令牌的意思,每一个 token 相当于大语言模型中的一个单元对象。

对于 ChatGPT,OpenAI 提供了一个 token 数计算小工具(https://platform.openai.com/tokenizer),可用来自动计算自然语言句子的 token 数量:

例如,在上面所示的句子 “ChatGPT is an AI model.”中,有 8 个 token。实质上,tokens 是语言模型用于理解和生成文本的"构建块",它们构成了输入和输出数据的基础,tokens 的数量、种类和质量直接影响模型性能的有效性。

在自然语言处理(NLP)和语言模型的背景下,"token"代表模型设计用来处理的最基本数据单元。一个 token 可以是一个字符,也可以是一个单词,具体取决于语言和模型的设计。在类似于 GPT-4 这样的 AI 语言模型中,一个 token 通常对应一个单词,但它也可以表示单词的一部分、一个短语,甚至是标点符号或空白字符。

为什么会有这么个 token 最大数量限制呢?

这是由于多种因素,涉及效率、计算可行性以及模型性能等方面的考虑:

  • 计算效率:处理大量的 token 需要大量的计算资源,包括内存和处理能力。设置 token 的最大数限制有助于管理计算成本,确保语言模型在合理的时间范围内运行,以便提供及时的回复。

  • 模型性能:token 限制有助于维持输出的质量。由于模型架构限制,具有固定大小的注意力窗口,这决定了模型一次能够处理的 token 数量。

  • 资源分配:设置 token 的最大数限制有助于在多个同时使用模型的用户之间平衡资源的使用,确保多用户环境下对计算资源的公平访问。

那么,token 最大数量限制将如何影响用户的使用体验呢?

  • 首先是对话长度限制

token 数量的限制会影响模型能够处理的对话长度。输入和输出都计入 token 限制,因此在一个对话中,token 的数量可能会超过限制,导致需要削减或省略一些内容。这可能会使长对话无法在模型中完整地进行处理。

  • 多轮对话

对于涉及多次来回对话或多个参与者的对话,token 数量的限制可能会成为一个关键因素。对话需要适应模型的 token 限制,对于含有多个对话轮数的场景会产生较大影响。

  • 实时交互

在需要快速回复的实时应用中,处理大量 token 所需的时间可能会显著影响用户体验。如果模型处理大量 token 的速度较慢,可能会导致用户等待时间过长,从而降低实时交互的效果。

根据官方的资料,ChatGPT 3.5 的最大 token 数量限制是 16384 个,上下文大约能记住 12000 个单词:

而 GPT-4 的限制是 32768 个,上下文大约能记住 25000 个单词:

再来看看文心一言。从百度千帆大模型平台的一处文档可以看出,其估算 token 公式:

对于文心一言应用来说,对话的 token 限制是多少,豆茉君没有找到官方有准确的介绍。不过在使用的时候,发现网页对话框内最大输入的限制是 2000,单位应该是 token:

P2 语言理解

语言理解性能,主要是测试 AI 对于已知世界的数据、信息、知识和智慧的筛选和归纳能力。对应的象限是 1、5、9、13。

1 数据 + 已知 + 世界:中国 1990 年的 GDP 是多少?

标准答案:3609 亿美元。

文心一言:答不出来 0

GPT-3.5:大差不差 0.5

GPT-4:完全正确 1

5 信息 + 已知 + 世界:最近一次奥运会的金牌榜前 5 名的国家和奖牌数是?

标准答案:

文心一言:第五名错了,奖牌数有错误 0.5

GPT-3.5:金牌数前两名错了。0.5

GPT-4:俄罗斯的名称前面部分错了 0.5

9 知识 + 已知 + 世界:牛顿的三大定律是什么?

都对了。

文心一言:1

GPT-3.5:1

GPT-4:1

13 智慧 + 已知 + 世界:如何解决贫富不均的问题?

文心一言:0

GPT-3.5:0.5

GPT-4:1

P3 情感对话

情感对话性能,主要是测试 AI 对于已知自我的数据、信息、知识和智慧的咨询和推理能力。对应的象限是 3、7、11、15。

3 数据 + 已知 + 自我:作为输入

我叫小明,来自江苏,是一个在上海工作 3 年的男程序员,我平时负责编写一些数据分析代码,目的是对公司平台用户的交易行为进行分析。我毕业于国内的一所 211 大学,专业是计算机科学与技术。

7 信息 + 已知 + 自我:作为输入

我还没有女朋友,平时喜欢玩电脑游戏,捣鼓数码产品,还喜欢吃火锅。节假日的时候,喜欢约朋友打打篮球,然后骑骑我的山地自行车。

11 知识 + 已知 + 自我:如何提高我的沟通能力?

文心一言:跟 GPT 3.5 的答案好像,0.5

GPT-3.5:跟文心一言的答案好像,0.5

GPT-4:1

15 智慧 + 已知 + 自我:我该如何去找女朋友?

文心一言:0.5

GPT-3.5:1

GPT-4:1

P4 逻辑推理

逻辑推理性能,主要是测试 AI 对于未知世界和自我的数据、信息、知识和智慧的演绎和预测能力。对应的象限是 2、6、10、14、4、8、12、16。

2 数据 + 未知 + 世界:火星上有生命吗?

文心一言:0.5

GPT-3.5:0.5

GPT-4:1

6 信息 + 未知 + 世界:疫情以后的世界经济会好转吗?

文心一言:0.5

GPT-3.5:0.5

GPT-4:1

10 知识 + 未知 + 世界:鸡兔同笼问题

文心一言:0.5

GPT-3.5:1

GPT-4:1

14 智慧 + 未知 + 世界:未来人类应该如何处理人工智能的道德和伦理界限?

文心一言:0.5

GPT-3.5:0.5

GPT-4:1

4 数据 + 未知 + 自我:我有哪些未发掘的才能?

文心一言:0.5

GPT-3.5:0.5

GPT-4:1

8 信息 + 未知 + 自我:我在团队中应该擅长扮演什么角色?

文心一言:0.5

GPT-3.5:1

GPT-4:1

12 知识 + 未知 + 自我:我如何找到我的人生目标?

文心一言:0.5

GPT-3.5:1

GPT-4:1

16 智慧 + 未知 + 自我:我的人生是否有更高的使命或目标?

文心一言:0.5

GPT-3.5:1

GPT-4:1

P5 代码生成

豆茉君要求 AI:1、生成一段 Python 代码,用于计算斐波那契数列前 1000 项的和;2、你能够进一步改进这段代码吗?并说明是如何改进的,改进的效果是什么?

评价标准包括:1、是否能生成代码 2、是否能得到正确答案 3、计算耗时

文心一言:


def fibonacci_sum_improved_baidu(n):  # 创建一个数组来存储斐波那契数列  fib = [0] * (n + 1)  # 第一和第二项  fib[0] = 0 fib[1] = 1  # 通过动态规划计算斐波那契数列的前n项  for i in range(2, n + 1):  fib[i] = fib[i - 1] + fib[i - 2]  # 使用反向迭代计算和  sum = fib[n]  for i in range(n - 1, -1, -1):  sum += fib[i]  return sum 
复制代码

GPT-3.5:


def fibonacci_sum_GPT35(n):    fib_sequence = [0, 1]    for i in range(2, n):        next_fib = fib_sequence[i-1] + fib_sequence[i-2]        fib_sequence.append(next_fib)        return sum(fib_sequence)
复制代码

GPT-4:


def generate_fibonacci(n):    a, b = 0, 1    for _ in range(n):        yield a        a, b = b, a + b
def fibonacci_sum_GPT4(n, max_value=None):    total = 0    for val in generate_fibonacci(n):        if max_value is not None and val > max_value:            print(f"Reached max_value at {val}, stopping early.")            break        total += val    return total
复制代码

运行结果是:

结论是:

1、它们都生成了代码;2、运行以后,文心一言代码运行的答案居然是错的,GPT3.5 和 GPT-4 是对的;3、运行的都是优化后的代码,计算耗时文心一言最长,GPT-3.5 其次,GPT-4 最短。

P6 数据分析

通过对数据的清洗、整理和可视化,发现数据中的信息,从而解读出知识。

文心一言:

打开文心一言的官方插件:E 言易图。然后可以让它把对话中谈到的数据进行可视化。比如,豆茉君让文心一言查询了最新的人口数量前 20 名的国家,并让他作个图出来。可以看到,完成得不错。不过,文心一言暂时不支持上传本地的数据文件。

GPT-3.5

对于同样的要求,GPT-3.5 表示只能生成代码,不能直接给出可视化。

GPT-4:

同理,GPT-4 不开插件是实现不了的。

GPT-4 选择 Advanced Data Analysis ( ADA ) 模式:

我上传了一个几十户的用电功率,5 分钟颗粒度,整整一个月的数据。让它帮我进行可视化处理,完成得很好,完全理解我用自然语言简单给到它的想法。我还让它按照《经济学人》杂志美化了一下图表。这个 ADA 确实非常强大。

需要注意的是,在 ADA 模式下,有两套环境:一个是对话环境,一个是程序运行环境,两者是独立运行的,互不干扰。

P7 多模支持

所谓多模,意思就是可以文生图、图生文,其他模态还有声音、视频等。

文心一言:

目前,文心一言是可以实现文生图和图生文的。

我让文心一言画个小女孩等妈妈的图片。我也测试过改变图像尺寸和比例,暂时都不支持。从生成的图片看,基本满足我对小朋友的外貌描述。

但是跟 midjourney 或者 stable diffusion 比,暂时还是差很多。比如豆茉君画的这张人像(Stable Diffusion 1.5, majicMIX realistic 模型):

另外,我还上传了一张他信回国在机场出来被警察带走的照片。文心一言识别出了政府官员、警察、泰国这些信息。可能是通过我的图片名称来解析的,我的图片名称是“他信被捕.jpg”。

GPT-3.5 和 GPT-4 暂时都不支持多模态。

D. 开发友好 Development

一个公司再强大,也不可能独立做好一个行业,服务数以千万计的用户。开发者作为信息时代的创作者,是非常关键的存在。在开源社区和开发工具的发展下,当代的开发者一个人就能做一个很细分的产品,这早已不是什么难事。更何况,进入到 AI 时代,出现了一种用自然语言编程的开发者(提示词工程师)。照这个趋势发展下去,以后只要你会说话写字,用人类自然语言编程的时代很快就会到来。

所以,如何创立和维护一个富有活力、公开、公平、共同致富的开发者生态,对于 任何 AI 时代创新领导者公司来说,都是必须的。

D1 开放接口

API 是信息时代高速公路的闸道,它用来把各式各样的软件应用连接起来。有了公开的 API 文档,开发者们可以把各种东西集成起来,创造性地弄出很多产品服务细分到毛细的需求。

百度智能云千帆大模型平台上有丰富的内容,这里不展开了。

而 OpenAI 的 GPT 产品,除了依托微软 Azure 云提供各种 API 以外,官方也有 API 服务、定价和丰富的文档。这里也不展开了。

D2 插件生态

使用 ChatGPT,GPT-4 的官方插件市场和基于浏览器的插件(Chrome、油猴)能够极大的拓展产品功能,这种提升有的时候是飞跃式的。因此,插件至关重要。

可喜的是,百度文心一言已经开始了自己的插件市场和生态的搭建。只要填写一个材料,就可以申请参加插件开发。



D3 指令微调 Fine Tuning

所谓指令微调,就是训练属于特定行业、特定群体、特定目的小模型,任务以大语言模型为基底,配上自己训练的小模型,可以根据细分场景针对性地提高产出效果。

用过 Stable Diffusion 画图的人都知道 LoRA,即基于某一个大模型,然后使用这些微调的 LoRA 来实现高针对性的特定效果。指令微调跟 LoRA 就是一样的。

百度的

而 OpenAI 是在 2023 年 8 月 22 日 开放 GPT-3.5 指令微调的,也预告说今年秋天会开发 GPT-4 的指令微调:

价格如下,比通用 API 服务价格要贵不少:

D4 复杂提示词

大家可能都听说过,出现了一种新职业叫“提示词工程师”,这个职业就是专注于如何用自然语言写出复杂的提示词(相对于一句话的问题来说),从而挖掘出大语言模型的潜力,同时测试和保证模型输出的正确性和鲁棒性。

当然,提示词工程师也可以写代码,不过对于普通人来说,使用自然语言编写复杂的提示词更容易上手,也更容易使用,因为只要在对话框中进行开发、测试和运行就行了,不用碰半点代码。

因此,对自然语言编码的支持,是非常重要的,这对于用自然语言进行编程的用户来说是非常友好的。

所以,豆茉君增加了一个部分,即对标比较复杂提示词的运行结果。豆茉君选择的一段提示词,是上个月参加 FlowGPT 游戏提示词大赛作品的中文版。

大家可以直接到 FlowGPT 上访问并运行:https://flowgpt.com/p/ow9PInkg5M2Pkw1wkvzuA

豆茉君也把提示词分享出来,获取地址:https://www.doumoman.site/blog/prompt_gamemaster

这个提示词实现了文字版的角色扮演游戏,妙处在于每次的对话和用户的行为选择共同决定了下面剧情的走向,而这一切完全是随机而且有逻辑的,像是实时创作一部冒险小说。

由于篇幅太长,这里就不截图了,直接说结论:

文心一言:无法持续按照要求输出对话内容,到了一半就忘了提示词的要求,导致游戏无法继续;

GPT-3.5:可以进行游戏,但是不是每次都能完全理解所有的要素要求,比如经常忘记给可能的行动计算影响值;

GPT-4:可以正常游戏,非常好。

结语

好了,终于,豆茉君完成了这篇评测。至此,文心一言对比 ChatGPT 的全面评测就结束了。让我们总结一下结论:

结论 1:在 A.获取条件F.功能体验两个方面,都完胜 ChatGPT,让豆茉君看到了百度作为国内大厂,在应用侧产品功能研发的投入,文心一言有着成为国内 AI 超级应用的潜质。

结论 2:在 D.开发友好方面,百度也正在打造一个开放的开发者生态社区,这是一个非常好的开始。苹果时代的 app store 教育大家,谁建立了应用平台,谁就能制定游戏规则,让广大的开发者在平台共生共赢共同富裕。

结论 3:在 P.性能表现方面,必须看到目前的文心一言和 ChatGPT 3.5 还有这一段差距,更不要提 GPT-4 了。但是,在豆茉君看来,如果百度包括国内大厂,能够奋起直追,保持今天的干劲,一步步拉小差距也只是时间问题。

结论 4:在 D4.复杂提示词方面,豆茉君确实没有想到文心一言有着比较大的差距,用自然语言编程写提示词与大语言模型应用交互,这极大地降低了深度使用模型的难度,这应该也是直接影响到深度爱好者体验的关键点。

如果觉得这篇评测对你有用,请给豆茉君点赞、关注和转发。

-(全文完)-

发布于: 1 小时前阅读数: 10
用户头像

doumoman

关注

公众号「别学AI」 2023-09-04 加入

华科本硕,AI 俱乐部合伙人,GPT 达人

评论

发布
暂无评论
万字全面评测(下篇):文心一言 vs ChatGPT_ChatGPT_doumoman_InfoQ写作社区