起底ChatGPTAPI计费逻辑,2步教你实时测算对话成本

但是问题来了,API服务里的这个“按量计费”的“量”应该怎么算?

也许你会说,那还不简单,直接看它回答了多少字数呗!这话只对了一半。因为ChatGPT不仅会讲中文,它还可以根据使用者所发送的语言,回答出英语、法语、西语等多国语言,相同意思下每个语言的长度都会不一样,所以它会将这些内容统一换算为另一个标准单位——Tokens,然后再进行计费。

ChatGPT不仅会统计自己输出了多少内容,还会记录用户输入了多少内容,毕竟它也需要先分析输入的文本才能输出有意义的回答,统一换算为Tokens值后汇总费用。以下是ChatGPTAPI的官方收费表,里面的4K、8K等数据代表单次问答中的最大上下文Tokens值。

如果你已经通过ChatGPTAPI成功地将AI能力嵌入至商业化产品中,比如说打造出了一个对客提供服务的智能客服,那么作为开发人员的你需要立刻、马上、清楚地知道每个客户的问答所产生的消耗额。因为公(Ling)司(Dao)需要知道最基础的成本才能制定出合理的运营策略。

总不能依靠实时监控OpenAI的账号后台来查看所消耗的成本吧?(更何况它还有五分钟的延迟)

那怎样才能在使用Apifox调用API的过程中就直接看到输入和输出的人民币成本呢?通过以下2步就能够清楚地看到人民币花费:

安装第三方库的运行环境。

npminstallopenai-gpt-token-counter参考以下示例代码,新建名为gpt-tokens-counter.js的Node.js脚本:

constopenaiTokenCounter=require('openai-gpt-token-counter');consttext=process.argv[2];//获取命令行参数中的测试内容constmodel="gpt-4";//替换为你想要使用的OpenAI模型consttokenCount=openaiTokenCounter.text(text,model);constcharacterCount=text.length;//计算字符数console.log(`${tokenCount}`);将该脚本文件放置于Apifox的外部程序目录下以供调用:

输入值就是在询问ChatGPT时所填写的问题。你可以在“聊天消息”API文档的前置操作中添加一个自定义脚本,使得Apifox能够调用上文中写好的Tokens换算脚本,提取位于请求参数Body中的content参数后换算为Tokens值。

填写以下示例代码:

try{varjsonData=JSON.parse(pm.request.body.raw);varcontent=jsonData.messages[0].content;//获取content中的信息varresult_input_tokens_js=pm.execute('./gpt-tokens/gpt-tokens-counter.js',[content])console.log(content);pm.environment.set("RESULT_INPUT_TOKENS",result_input_tokens_js);console.log("InputTokenscount:"+pm.environment.get("RESULT_INPUT_TOKENS"));}catch(e){console.log(e);}点击“运行”按钮后可以在控制台中看到已统计的输入值。

接下来需要计算ChatGPT输出了多少个Tokens。

因此我们需要先拼接所有的输出内容,然后再进行Tokens换算。

在后置操作中添加以下自定义脚本,拼接所有输出内容并换算Tokens:

//获取响应的文本内容consttext=pm.response.text()//将文本内容分割成行数varlines=text.split('\n');//创建一个空数组存储"content"参数varcontents=[];//遍历每一行for(vari=0;i

得到输入和输出所耗费的Tokens值后,因为ChatGPT采用美元计价,因此还需要调用实时汇率API后才能预估所消耗的人民币成本。

本文将调用CurrencylayerAPI获取实时汇率。

得到输入Tokens值后,还需请求实时汇率接口得到一个人民币换算乘数。在前置操作中新增以下脚本:

换算出输出所耗费的Tokens值后,与汇率相乘得到实际人民币成本。在后置操作中添加以下脚本:

最后还可以在后置操作中添加一个可以自动计算输入+输出总成本的步骤。

//输入输出成本加总constINPUTPrice=Number(pm.environment.get("INPUT_PRICE"));constOUTPUTPrice=Number(pm.environment.get("OUTPUT_PRICE"));console.log("总成本:"+(INPUTPrice+OUTPUTPrice)+"元");这样就能够在调试ChatGPTAPI的过程中预估出大致的输入输出总成本。

现在你不仅可以在Apifox中愉快地调用ChatGPTAPI,还能够清楚掌握你的调用成本,做到心中有数。

THE END
1.ChatGPT的工作原理解析chatgpt模型公式ChatGPT的核心是Transformer架构,它是一种专门设计用于处理序列数据的深度神经网络结构。与传统的循环神经网络(RNN)相比,Transformer具有以下优势: 并行计算能力强:Transformer可以并行处理输入序列中的所有元素,大大提高了训练速度。 长距离依赖建模能力强:Transformer通过自注意力机制可以捕捉输入序列中任意两个元素之间的关系https://blog.csdn.net/m0_62554628/article/details/142835504
2.最近爆红的ChatGPT到底是个什么玩意儿?这些基本概念你要知道序列应ChatGPT 可用于各种有趣和有创意的应用程序。以下是您可以使用 ChatGPT 执行的一些示例。 生成文本和响应 ChatGPT 最流行的用途之一是根据提示生成文本。通过提供提示,您可以要求 ChatGPT 生成文本作为响应。例如,您可以要求 ChatGPT 根据提示生成一个故事,或者您可以要求它完成一个句子或段落。 https://3g.163.com/dy/article/HT25VD1805561IOL.html
3.怎么让ChatGPT优化代码?Worktile社区怎么让ChatGPT优化代码 要让ChatGPT优化代码,可以尝试以下方法: 1. 代码优化技巧 首先,可以采用一些常见的代码优化技巧,例如使用合适的数据结构、减少循环次数、减少重复计算等等。这些技巧可以提高代码的执行效率,从而加快程序运行速度。 2. 算法优化 另外,也可以从算法的角度进行优化。尽量选择高效的算法,避免使用时间https://worktile.com/kb/ask/539173.html
4.OpenAI是如何胜过谷歌的?ChatGPT发展简史ChatGPT由GPT-3.5模型提供支持,GPT(Generative Pre-trained Transformer,生成式预训练变换器)是一种基于互联网可用数据训练的文本生成深度学习模型。名字中之所以有一个Transformer,是因为GPT就是OpenAI在谷歌的Transformer语言模型框架的基础上构建的。 该模型使用了"利用人类反馈强化学习(RLHF)"的训练方式,包括了:人类提https://aidc.shisu.edu.cn/7f/a0/c13626a163744/page.htm
5.ChatGPT使用量的计算ChatGPT聊天将消耗token(这里称之为积分),积分的计算比较复杂,发送的文本要计算积分,回来的文本也要计算积分。 如果是上下文聊天,每次发送文本都要包括之前的聊天记录,因此,积分消耗更多。 那么,具体一段文本怎么计算token数量呢?计算比较复杂,粗略来说,一个简单的英文单词就是一个token,复杂的英文单词可能是2~4个tohttps://www.douban.com/group/topic/288590324
6.ChatGPT模型大战:讯飞星火认知大模型百度文心一言能否击败GPT数值计算 推理解题 跨语言能力 文生图 总结 个人感受 一、你有使用过这种对话式AI吗?你对这类型AI有什么看法或感受? 二、对于“讯飞星火大模型将超越chatgpt?”这个命题你的态度是什么?简要说说原因 三、你认为这类型的人工智能对于现在的社会有哪些意义? https://blog.51cto.com/u_14943402/10335157
7.GPT图解大模型是怎样构建的■初代GPT:基于 Transformer 的单向预训练语言模型,采用生成式方法进行预训练。 ■ChatGPT:从GPT-3开始,通过任务设计和微调策略的优化,尤其是基于人类反馈的强化学习,实现强大的文本生成和对话能力。 ■GPT-4:仍基于Transformer架构,使用前所未有的大规模计算参数和数据进行训练,展现出比以前的AI模型更普遍的智能,不仅https://labs.epubit.com/bookDetails?id=UB836238e7a9d3d
8.云计算:ChatGPT的“中枢神经”开发侧,ChatGPT 生长在云上, 依赖于云计算服务,多年来OpenAI共收到了上百亿的投资,这些资金帮助 OpenAI 在平台上运行和训练其模型;产品侧,OpenAI 基于Cloud Native进行应用开发,基于云计算提供的便捷高性能计算运算模型和打磨算法,并对外销售产品和 API;而投资方基于 AI Native 来提升搜索、绘画等产品,未来会在Offhttps://m.thepaper.cn/newsDetail_forward_22342649
9.“整篇论文没有我自己写的东西”:论文是AI写的,算学术不端吗赵铭在ChatGPT的帮忙下完成了硕士毕业论文,他在国内一所985大学的理工科专业就读,毕业论文的内容是关于云计算。他总结了几种使用ChatGPT的方法,比如凑字数。 ChatGPT很适合“凑字数”,只要发出指令,一句观点便能扩充至几百字。但字数一多,它也会暴露出不足,很多受访者都反映它会重复说“车轱辘话”,“它废话是https://static.nfapp.southcn.com/content/202305/31/c7740338.html
10.解惑了——ChatGPT基于知识库提问token计算方法最近一直做知识库的训练,基于公司的场景一直做课程助手、课程推荐专家的训练。 慢慢了基于知识库回答的一些原理,也慢慢给自己解惑了。 首先,token的计算 众所周知,ChatGhttps://www.jianshu.com/p/519c4c606743
11.为何ChatGPT有时“一本正经地胡说八道”李祖超:对于ChatGPT是否能成为操作系统的新雏形这个问题,我的答案是积极的。操作系统的作用根据用户指令实现资源的分配以及计算的调度,那么ChatGPT发挥的作用是充当新的人机接口,更智能地实现用户指令的解译,减少用户的操作。从更长远来看,通过赋予ChatGPT管理系统资源如硬盘、CPU、外设等能力,将ChatGPT直接作为一种操作系https://m.gmw.cn/2023-02/23/content_1303292513.htm
12.ChatGPT标注指南来了!数据是关键ChatGPT 这个超大的模型可能暂时不需要,但我们在实际工作中很多模型(尤其是推荐)是小时或分钟级别更新的。对这种情况,应该在一开始设计的时候将这部分流程考虑进去。这部分更多是设计和工程问题,比如数据怎么更新,存储在哪里,如何获取,是否需要转换,是否需要定时清理,伸缩性,可用性等多个方面。http://www.360doc.com/content/23/0309/17/1071268750_1071268750.shtml
13.2023年爆火的软件“ChatGPT”到底是个什么呢?ChatGPT的详解以及2023年2月2日,微软官方公告表示,旗下所有产品将全线整合ChatGPT,除此前宣布的搜索引擎必应、Office外,微软还将在云计算平台Azure中整合ChatGPT,Azure的OpenAI服务将允许开发者访问AI模型。 2023年2月3日消息,IT 行业的领导者们担心,大名鼎鼎的人工智能聊天机器人 ChatGPT,已经被黑客们用于策划网络攻击时使用。 http://www.quwaifu.com/News/View/22739