GPT-4 API 接口调用及价格分析
GPT-4 API 接口调用及价格分析
15日凌晨,OpenAI发布了万众期待的GPT-4!新模型支持多模态,具备强大的识图能力,并且推理能力和回答准确性显著提高。在各种专业和学术基准测试上的表现都媲美甚至超过人类。难怪OpenAI CEO Sam Altman称GPT-4“是我们迄今为止功能最强大的模型!”
关于GPT-4的能力,我在发布当天就做了测试,具体结果请阅读《OpenAI 发布GPT-4——全网抢先体验》。
对开发者来说,GPT-4最激动人心的是API接口同步发布。目前需要申请才能访问。我第一时间加入了waitlist,今天获得了访问权限,本文将跟大家分享GPT-4 API接口的使用以及大家关心的价格分析。
文章目录
- GPT-4 API
- 限制
- 价格
- 价格分析
- token数评估
- 价格比较
- GPT-4是否值得?
GPT-4 API
GPT-4 API的接口和参数跟早前开放的GPT-3.5接口一致,模型名称为:
模型名称 | 描述 | 最大token数 | 训练数据 |
---|---|---|---|
gpt-4 | 比 GPT-3.5 模型更强大,能够执行更复杂的任务,并针对聊天场景进行了优化。 会不断迭代更新。 | 8,192 | 截至2021年6月 |
gpt-4-0314 | gpt-4 的2023年3月14日快照版本。此模型在接下来3个月内不会更新,有效期截止2023年6月14日。 | 8,192 | 截至2019年10月 |
gpt-4-32k | 与 gpt-4 功能相同,但上下文长度是gpt-4 的4 倍。会不断迭代更新。 | 32,768 | 截至2021年6月 |
gpt-4-32k-0314 | gpt-4-32k 的2023年3月14日快照版本。此模型在接下来3个月内不会更新,有效期截止2023年6月14日。 | 32,768 | 截至2019年10月 |
限制
由于还在beta阶段,GPT-4 API的调用有频次限制:
- 40k tokens / 分钟
- 200 请求 / 分钟
这个频次对功能测试和概念验证来说已经足够了。
如果使用ChatGPT Plus体验GPT-4,有4小时100条消息的限制。
价格
GPT-4 API的定价策略与之前模型不同。在GPT-4之前,接口定价按照token数统一收费,不区分是prompt的token还是生成响应的token。而GPT-4将prompt token和生成响应token分开计价,价格如下:
- $0.03美元 / 1K prompt token
- $0.06美元 / 1K 生成响应 token
这个价格相比 gpt-3.5-turbo
的 $0.002 / 1K tokens来说贵了至少15倍起。
由于GPT-4接口价格太贵,且prompt和生成响应分开收费,因此在大规模使用GPT-4 API之前,我们有必要对其价格进行细致的分析。
价格分析
token数评估
GPT+ 系列API最难评估的一点就是token数与单词(字数)的对应关系。因为我们能直观了解到的只有字数或单词数,而token数是tokenized后的标记数,我们无法直接准确的估计。好在接口会返回每次请求promot和生成响应的token数,我们可以通过统计手段大致获得一个token数和字数之间的对应关系。
我从短到长找了8篇文章输入GPT-4 API,为了结果稳定,模型我选择了稳定不更新的gpt-4–0314
,然后根据接口返回统计prompt token数,结果如下:
# | 字数 | token数 | 百分比 |
---|---|---|---|
1 | 1,600 | 2,133 | 75.01% |
2 | 2,000 | 2,667 | 74.99% |
3 | 47,094 | 62,792 | 75.00% |
4 | 90,000 | 120,000 | 75.00% |
5 | 445,134 | 593,512 | 75.00% |
6 | 783,134 | 1,044,183 | 75.00% |
7 | 884,421 | 1,179,228 | 75.00% |
8 | 1,084,170 | 1,445,560 | 75.00% |
通过上面的测试结果,我们可以得到一个重要结论:
大约每750字(单词)消耗1000 token
价格比较
我们首先横向比较一下几个模型的单价
$0.06 | $0.03 | $0.002 | $0.02 | $0.002 | $0.0005 | $0.0004 | |
---|---|---|---|---|---|---|---|
gpt-4(completion) | gpt-4(prompt) | gpt-3.5-turbo | davinci | curie | babbage | ada | |
gpt-4(completion) | 0 | 1 | 29 | 2 | 29 | 119 | 149 |
gpt-4(prompt) | -0.5 | 0 | 14 | 0.5 | 14 | 59 | 74 |
从上表可以看到,gpt-4 prompt 比 gpt-3.5-turbo贵了14倍,gpt-4 completion 比 gpt-3.5-turbo贵了29倍!假设prompt和completion的字数为1:4(实际中completion往往比prompt要长),那么gpt-4接口的综合成本是gpt-3.5-turbo的27倍!
下面的表格更加直观地给出了各模型处理相应字数所需的花费:
从上表可见,gpt-3.5-turbo
$20美元能处理750万字,而相同金额在gpt-4
中只能处理30万字左右。
那么问题来了,是否值得花20多倍的成本去使用gpt-4?换句话说,gpt-4
相对gpt-3.5-turbo
的能力提升有没有20倍的效用?
GPT-4是否值得?
这个问题的答案很大程度上依赖你的场景。如果是对正确性要求较高的场景(比如法律,教育等),那么GPT-4绝对是比GPT-3.5更好的选择。其他用例和场景我都建议进行深入测试,以确定增加的成本是否会带来比 ChatGPT API 对等的好处。
值得一提的是,gpt-4
模型的最大token数是gpt-3.5-turbo
的2倍,对于长文本生成的场景,如果gpt-3.5-turbo
最大4,096 token不够用,那么可以选择使用gpt-4
。同时GPT-4还提供了32K版本,支持32,768 token,不过价格也更贵。
- $0.06美元 / 1K prompt token
- $0.12美元 / 1K 生成响应 token
总之,ChatGPT API 和 GPT-4 API 之间的选择取决于项目的具体需求和约束。当你站在尖端技术的十字路口时,请认真考虑真正重要的因素:
- 预期的应用
- 期望的准确度
- 道德考量
- 财务影响
- 对未来发展的适应性
最终,你的决定将证明你的远见和拥抱人工智能变革带来的领先优势。
相关文章:

GPT-4 API 接口调用及价格分析
GPT-4 API 接口调用及价格分析 15日凌晨,OpenAI发布了万众期待的GPT-4!新模型支持多模态,具备强大的识图能力,并且推理能力和回答准确性显著提高。在各种专业和学术基准测试上的表现都媲美甚至超过人类。难怪OpenAI CEO Sam Altm…...
MySQL高级功能:存储过程、触发器、事务、备份和恢复
MySQL高级功能MySQL是一款广泛使用的关系型数据库管理系统,它不仅具有基本的数据库功能,还支持一些高级功能,如存储过程、触发器、事务、备份和恢复等。这些高级功能可以帮助开发人员更高效地管理和维护数据库,本文将介绍MySQL的高…...

SAP 发出商品业务配置
SAP发出商品业务配置,即: 出具销售发票时结转成本 一、业务背景: 发出商品业务简单的理解为跨月开票,即出库与开票不在同一个月份。 该业务在系统内的实现方式,为保证成本与收入的配比,在出库时不计算成…...

C++线程池理解
线程池基本信息 线程池是一种结合池化思想衍生出来的一种线程管理及使用的方案 其主要针对服务器端多线程场景下,服务器频繁接收请求,每个请求都分配一个单独的线程去处理。 使用线程的开销: 创建和销毁线程调度线程 线程池主要解决的核…...

2023年最新软著申请流程(一):软件著作权说明、国家版权官网的账号注册与实名认证
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/129230460 红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软…...

SuperMap iServer如何发布S3对象存储中的瓦片
作者:Carlo 前言: S3 对象存储服务是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。其海量、安全的特性,为存储海量瓦片提供可能。 SuperMap iServer 支持将存储在阿里云对象存储 (OSS)、华为…...
ElasticSearch-第四天
目录 ElasticSearch文档分值_score计算底层原理 relevance score算法 Term frequency Inverse document frequency Field-length norm 分析一个document上的_score是如何被计算出来的 分词器工作流程 切分词语 内置分词器的介绍 定制分词器 ik分词器详解 IK分词器自…...

基于鲸鱼算法的极限学习机(ELM)分类算法-附代码
基于鲸鱼算法的极限学习机(ELM)分类算法 文章目录基于鲸鱼算法的极限学习机(ELM)分类算法1.极限学习机原理概述2.ELM学习算法3.分类问题4.基于鲸鱼算法优化的ELM5.测试结果6.参考文献7.Matlab代码摘要:本文利用鲸鱼算法对极限学习机进行优化,并用于分类问…...
一文彻底读懂webpack常用配置
开发环境 const webpack require("webpack"); const path require(path) module.exports {// entry: {// a: ./src/0706/a.js,// c: ./src/0706/c.js,// },entry: "./src/0707/reactDemo.js",output: {filename: [name]_dist.js,path: path.resolve(__…...

大环境不好,找工作太难?三面阿里,幸好做足了准备,已拿offer
三面大概九十分钟,问的东西很全面,需要做充足准备,就是除了概念以外问的有点懵逼了(呜呜呜)。回来之后把这些题目做了一个分类并整理出答案(强迫症的我狂补知识)分为软件测试基础、Python自动化…...
C++ 手撸简易服务器(完善版本)
本文没有带反射部分内容,可以看我之前发的 Server.h #pragma once#include <string> #include <iostream> #include <thread> #include <unordered_map> using namespace std; #ifndef _SERVER_ #define _SERVER_#include <winsock.h&…...
【Python入门第三十四天】Python丨文件处理
文件处理是任何 Web 应用程序的重要组成部分。 Python 有几个用于创建、读取、更新和删除文件的函数。 文件处理 在 Python 中使用文件的关键函数是 open() 函数。 open() 函数有两个参数:文件名和模式。 对于刚学Python的小伙伴,我给大家准备了2023…...

【Linux】写一个基础的bash
头文件#include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<sys/wait.h> #include<sys/stat.h> #include<string.h> #include<pwd.h> #include<dirent.h>分割输入的命令串字符串或参数内容为空则退出strtok( ,…...

图解如何一步步连接远程服务器——基于VScode
基于VScode连接远程服务器 安装Remote-SSH等插件 想要在vscode上连接远程服务器需要下载Remote-SSH系列插件: 直接在插件中搜索remote,即可找到,选择图片中的3个插件,点击install安装。 配置Remote-SSH 在这个步骤有多种操作…...
element - - - - - 你不知道的loading使用方式
求人不如求己 你不知道的loading使用方式1. 指令方式使用1.1 默认loading1.2 自定义loading1.3 整页加载2. 服务方式使用2.1 this.$loading的使用2.2 Loading.service的使用关于页面交互,最害怕的就是接口等待时间太长,用户体验不好。 而如何提高用户体…...
C++程序调用IsBadReadPtr或IsBadWritePtr引发内存访问违例问题的排查
目录 1、问题描述 2、VS中看不到有效的信息,尝试使用Windbg去分析 3、使用Windbg分析 4、最后...
IntelliJIDEA 常用快捷键
IntelliJIDEA 常用快捷键 Alt Enter 导入包,自动修正,自动创建变量名。 Ctrl Alt O 优化导入的类和包 Ctrl / 单行注释 (//) Ctrl Shift / 多行注释 (/* … */) 方法或类说明注释(文档注释) 在一个方法或类的开头…...
Python自动化抖音自动刷视频
环境准备 Python3.5以上Appium Server服务器Android SDK,需要用到adb服务需要依赖Appium-Python-Client组件库真机或者模拟器,推荐模拟器(真机一般安卓8版本以上了,appium对安卓8以上版本元素获取的兼容性不太好)JDK8环境 实现 确保adb服务…...

使用vite创建vue3工程
定义 什么是vite?-----新一代前端构建工具 优势 开发环境中,无需打包操作,可快速的冷启动---最牛的地方轻量快速的热重载(HMR)---一修改代码就局部刷新,webpack也具备,但vite更快真正的按需编…...

嵌入式学习笔记——STM32的时钟树
时钟树前言时钟树时钟分类时钟树框图LSI与LSEHSI、HSE与PLL系统时钟的产生举例AHB、APBx的时钟配置时钟树相关寄存器介绍1.时钟控制寄存器(RCC_CR)2.RCC PLL 配置寄存器 (RCC_PLLCFGR)3.RCC 时钟配置寄存器 (RCC_CFGR)4.RCC 时钟中断寄存器 (RCC_CIR)修改…...

Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...
服务器--宝塔命令
一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...