人工智能学习

为什么 OpenAI 的 API 对于非英语语言来说更昂贵

本文主要是介绍为什么 OpenAI 的 API 对于非英语语言来说更昂贵,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

image-20230816173737263

短语“Hello world”怎么可能有两个英语令牌和 12 个印地语令牌?

在我最近发表了一篇关于如何估算OpenAI的API成本的文章后,我收到了一条有趣的评论,有人注意到OpenAI API在其他语言中比在英语中贵得多,例如使用中文,日语或韩语(CJK)字符的语言。

image-20230816173834885

一位读者对我最近关于如何使用库估算OpenAI的API成本的文章 的评论tiktoken

我没有意识到这个问题,但很快意识到这是一个活跃的研究领域:今年年初,Petrov等人[2]的一篇名为“语言模型标记器引入语言之间的不公平”的论文表明,“翻译成不同语言的相同文本可能具有截然不同的标记化长度,在某些情况下差异高达15倍。

作为复习,标记化是将文本拆分为标记列表的过程,标记列表是文本中的常见字符序列。

image-20230816173854289

标记化示例

令牌化长度的差异是一个问题,因为 OpenAI API 以 1,000 个令牌为单位计费。因此,如果您在可比较文本中拥有多达 15 倍的代币,这将导致 API 成本增加 15 倍。

实验:不同语言的令牌数量

让我们将短语“Hello world”翻译成日语(こんにちは世界)并将其转录为印地语(हैलोवर्ल्ड)。当我们使用 OpenAI 的 GPT 模型中使用的分词器标记新短语时,我们得到以下结果(您可以在本文末尾找到我用于这些实验的代码):cl100k_base

image-20230816173924515

英语、日语和印地语中短语“Hello world”的字母和标记 () 数cl100k_base

从上图中,我们可以做出两个有趣的观察:

  1. 字母数为…
这篇关于为什么 OpenAI 的 API 对于非英语语言来说更昂贵的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!