大模型运行成本对比:GPT-3.5/4 vs. 开源托管

在过去的几个月里,生成式人工智能领域出现了许多令人兴奋的新进展。 ChatGPT 于 2022 年底发布,席卷了人工智能世界。 作为回应,各行业开始研究大型语言模型以及如何将其纳入其业务中。 然而,在医疗保健、金融和法律行业等敏感应用中,ChatGPT 等公共 API 的隐私一直是一个问题。

然而,最近 Falcon 和 LLaMA 等开源模型的创新使得从开源模型中获得类似 ChatGPT 的质量成为可能。 这些模型的好处是,与 ChatGPT 或 GPT-4 不同,模型权重适用于大多数商业用例。 通过在定制云提供商或本地基础设施上部署这些模型,隐私问题得到缓解——这意味着大型行业现在可以开始认真考虑将生成式人工智能的奇迹融入到他们的产品中!

那么让我们深入了解各种大型语言模型 (LLM) 的经济学!

NSDT工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器 - REVIT导出3D模型插件 - 3D模型语义搜索引擎 - Three.js虚拟轴心开发包 

1、GPT-3.5/4 API 成本

ChatGPT API 按使用情况定价,1K 代币的费用为 0.002 美元。 每个令牌大约是一个单词的四分之三,单个请求中的令牌数量是提示 + 生成的输出令牌的总和。 假设您每天处理 1000 个小块文本,每个块都是一页文本,即 500 个单词或 667 个标记,并且输出的长度也是相同的长度(作为上限)。 这相当于每天 0.002 美元/1000x66721000= ~2.6 美元。 一点也不差!

但是,如果您每天处理一百万个此类文档,会发生什么情况? 那么每天就是 2,600 美元,或者每年大约 100 万美元! ChatGPT 从一个很酷的玩具变成了一项价值数百万美元的业务的一项主要开支(因此人们希望它是一项主要收入来源)!

OpenAI 还有其他更强大的模型,例如 ChatGPT 的 16K 上下文版本或更强大的 GPT-4 模型。 这里更大的上下文仅意味着您可以向法学硕士发送更多上下文,并要求其在较长的文档上完成诸如回答问题之类的任务。 以下是基于各种 OpenAI 模型的每天 1K 与 1M 请求的成本:

基于使用情况和 OpenAI 模型的年度成本 

如您所见,低使用率的年成本从 1000 美元到 50000 美元不等,具体取决于型号。 或者对于高使用率,每年 100 万美元至 5600 万美元! 对于较低的使用率——我们认为 OpenAI API 模型是有意义的,因为它们的质量和成本效益。

但是,如果您的使用量超过 100 万美元,则即使您确实有多余的钱作为额外的零钱,您也需要认真考虑经济可行性。 有意义的是,如果你手边有多余的零钱,并且看到了LLM在你所在行业的价值,那就是将这些钱花在让你的组织发展成为特定领域LLM的行业领导者上,而不是花钱 纯粹是为了沉没成本。 相反,您可以使用它来自定义现有的开源模型,根据行业特定的数据对其进行微调,从而使您更具竞争力。

处理针对极长或大量文档提出问题的另一种方法是使用检索增强生成 (RAG)(请参阅这篇 Medium 文章)——这基本上相当于将数据存储在矢量数据库中的小块中——并使用矢量相似性 用于检索更有可能包含与您的需求相关的信息的文档块的指标。

另一种可能性是将钱花在 OpenAI API 成本上,但在如何处理 RAG 以及文档与 LLM 之间的复杂接口方面使自己成为创新者,例如这篇文章。

2、开源模型托管成本

如果您决定托管大型语言模型 - 主要成本与托管这些资源密集型 LLM 和每小时成本相关。 根据经验,在 GPU 内存中存储推理所需的 1B 参数 — 32 位浮点精度时需要 4 GB,16 位精度时需要 2 GB。 默认情况下,模型权重以较高的 32 位精度存储,但也有一些技术可以以 16 位(甚至 8 位)精度存储权重,从而将响应质量的损失降至最低。

GPU RAM 成本

因此,对于像 Falcon-7B 或 LLaMA2–7B 这样 16 位精度的 70 亿参数模型,这意味着您需要 14GB 的 GPU RAM。 它们适用于具有 16GB GPU 内存的 NVIDIA T4 GPU。 您可以看到 AWS 等典型云服务提供商的定价如下 - g4 实例均具有单个 T4 GPU,而 12X Large 则具有 4 个 GPU。 基本上,如果您想部署 7B 参数模型,则成本约为 2–3 美元/小时。 正如本博客中提到的 - 存在与发出的请求数量相关的成本,但这些成本通常低于端点成本。 粗略地说,1000 个请求的成本为 0.01 美元,100 万个请求的成本为 10 美元。

Machine Learning Service – Amazon SageMaker Pricing – AWS

较大的开源模型(如 Vicuna-33B 或 LLaMA-2-70b)比较小的模型表现更好 - 因此您可能会考虑部署这些较大的模型。 然而,为了拥有所需的 100-200 GB GPU 内存,这些技术更加昂贵,需要多个 GPU,并且成本约为 20 美元/小时。

https://huggingface.co/spaces/lmsys/chatbot-arena-leaderboard

以下是更新后的成本,比较了开源模型和 OpenAI GPT 系列模型:

基于使用情况和 OpenAI/云托管模型的年度成本

值得注意的是,虽然上述成本用于内存和计算,但还需要考虑其他与云相关的基础设施的维护,以满足每秒/分钟的网络流量/请求。 其一,您可能需要多个带有负载均衡器的 GPU,以确保即使在大负载期间也能保持低延迟。 您可能需要根据您的使用案例考虑与可用性、减少停机时间、维护和监控相关的额外成本。

3、本地托管成本

本地托管是您希望完全隔离模型并在专用服务器上运行的地方。 为此,您需要购买 NVIDIA A10 或 A100 等高质量 GPU。 目前这些芯片短缺,A10(24GB GPU 内存)售价 3,000 美元,而 A100(40 GB 内存)售价 10-20,000 美元。

然而,有些公司提供像 Lambda Labs 这样的预构建产品,如下所示:

Lambda Labs NVIDIA GPU成本

与云托管模型中相同的延迟、可用性、维护和监控考虑因素也适用于本地托管。 但其中一个区别是,如果您希望在收到更多流量时开始扩展,那么使用云托管提供商意味着您可以虚拟地增加资源(当然要支付更多费用),但您无法在 - 场所,除非您实际购买更多基础设施,当然您现在负责正确设置一切以及维护。

4、结束语

我们已经介绍了 3 种不同的选项来提高部署 LLM 的难度:使用 ChatGPT 等封闭式 LLM API、在私有云实例上托管以及本地托管。 如果您很高兴尝试 LLM,但才刚刚开始探索,我们建议您首先尝试使用 ChatGPT/GPT-4。 一旦您确定LLM是您的出路,您就可以探索其他选择 - 如果您有隐私问题,或者希望在短时间内为数百万客户提供服务,这可能更有意义 - 对于 ChatGPT,尤其是 GPT- 4个都挺贵的。 或者您可能想要开发一个超专业的行业特定的LLM,托管是第一步,之后您需要根据自定义数据微调模型。

我们还没有讨论的最后一个选择是LLM服务提供商,他们可以帮助公司找出在云/本地堆栈上运行的模型。 例如,Snowflake 推出了使用自定义数据训练LLM的服务。 Databricks 提供了类似的解决方案。


原文链接:大模型经济学 - BimAnt

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/365886.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

nosql数据库期末考试知识点总结

目录 1、什么是nosql数据库,它包括哪些 文档数据库 建数据 哪一种是最简单的 2、什么是文档数据库 3、创建mongodb时默认会建造三个数据库,是哪三个 4、mongodb支持的数据类型有哪些 5、它的常规语句有哪些 6、副本集和分片集有什么作用 复制 …

FPGA高端图像处理开发板:鲲叔1号,寄托了未来的一块开发板

前言 在CSDN写博客传播FPGA开发经验已经一年多了,帮助了不少人,也得罪了不少人,有的人用我的代码赢得了某些比赛、得到了心仪的offer,也有的人天天骂我,anyway,哪怕只要还能帮助一个即将毕业的学生找到工作…

深入了解键盘:分类、工作原理与操作指南

键盘 键盘是计算机使用的主要输入设备之一,键盘主要由创建字母、数字和符号并执行附加功能的按钮组成,通常用于向计算机或其他数字设备输入文本、命令和各种控制信号。 键盘是计算机中最重要的字符输入设备,其基本组成元件是按键开关&#…

Python算法题集_矩阵置零

Python算法题集_矩阵置零 题73:矩阵置零1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【三层循环】2) 改进版一【纵横计数器】3) 改进版二【原地算法】 4. 最优算法 本文为Python算法题集之一的代码示例 题73:矩阵置零…

JAVAEE初阶 网络编程(十)

http协议 一.HTTP协议简介二. HTTP捕获工具的使用三. 请求和响应包含的部分四. 认识URL 一.HTTP协议简介 HTTP协议最主要的应用场景就是网站,在浏览器和服务器之间,传输数据, 所谓网页,就是用超文本标记语言HTML和CSS,…

废品上门回收小程序搭建全过程

随着人们对环境保护意识的不断增强,废品回收成为了一项重要的社会活动。为了方便废品回收的顾客和回收者之间的联系,废品上门回收小程序成为了一种流行的解决方案。然而,如何选择一款合适的废品上门回收小程序搭建平台呢?下面将为…

如何衡量代码的复杂度

圈复杂度概要 最近的培训中了解到了一个概念,叫做圈复杂度。 圈复杂度(Cyclomatic Complexity)是一种衡量程序复杂度的度量方法。它由美国计算机科学家 Thomas J. McCabe 在 1976 年提出。圈复杂度通过统计程序的控制流图中的决策结构&…

Centos Cron设置定时任务

这本是很简单的问题,但是我服务器重装系统两次,遇到的问题都不一样,所以记录一下 1.首先要确保服务器上有 cron 服务 sudo systemctl status crond2.设置时区 sudo timedatectl set-timezone Asia/Shanghai3.重启crond 服务使crond服务的时…

CentOS 8最小安装和网络配置

文章目录 简介下载地址VMware 17创建虚拟机最小化安装拥有的外部命令yum源有问题网络配置开启SSH Server服务关闭防火墙(目前这个地方还是有问题-加上端口依然不能访问)设置host配置JDK环境完整参考 简介 CentOS 8的IOS如果下载DVD版本至少有10G 这里我们直接选择最小安装&…

CSS常用属性

CSS常用属性 1. 像素的概念 概念:我们的电脑屏幕是,是由一个一个“小点”组成的,每个“小点”,就是一个像素(px)。规律:像素点越小,呈现的内容就越清晰、越细腻。 注意点&#xff…

YOLOv8-Segment C++

YOLOv8-Segment C https://github.com/triple-Mu/YOLOv8-TensorRT 这张图像是运行yolov8-seg程序得到的结果图,首先是检测到了person、bus及skateboard(这个是检测错误,将鞋及其影子检测成了滑板,偶尔存在错误也属正常),然后用方…

Vue 环境准备

1.安装vscode https://code.visualstudio.com/ 2.安装开发vue所需插件: Vetur —— 语法高亮、智能感知、Emmet等 包含格式化功能, AltShiftF (格式化全文),CtrlK CtrlF(格式化选中 代码,两…

分库分表原则

分库分表原则 单表数据到达千万级别或者20存储空间 优化已经解决不了问题一 IO瓶颈导致性能问题 拆分策略 垂直分库 以表为依据,根据业务将不同的表拆分到不同库中,有点像微服务 垂直分表 以字段为依据,根据字段属性将不同字段拆分到不同…

App ICP备案获取iOS和Android的公钥和证书指纹

依照《工业和信息化部关于开展移动互联网应用程序备案工作的通知》,向iOS和安卓平台提交App时需要先提交ICP备案信息。 iOS平台: 1、下载appuploader工具:Appuploader home -- A tool improve ios develop efficiency such as submit ipa to…

Tencent Tinker:移动应用热修复的未来之路

Tencent Tinker:移动应用热修复的未来之路 1 引言 移动应用热修复是一项在移动应用开发领域中日益重要的技术,它可以帮助应用程序开发者快速修复线上应用的bug、漏洞和功能问题,而无需重新发布整个应用。这种能力对于提高用户体验、降低用户…

Pymysql将爬取到的信息存储到数据库中

爬取平台为电影天堂 获取到的数据仅为测试学习而用 爬取内容为电影名和电影的下载地址 创建表时需要建立三个字段即可 import urllib.request import re import pymysqldef film_exists(film_name, film_link):"""判断插入的数据是否已经存在""&qu…

Flink 1.18.1 部署与配置[CentOS7]

静态IP设置 # 修改网卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33# 修改文件内容 TYPEEthernet PROXY_METHODnone BROWSER_ONLYno BOOTPROTOstatic IPADDR192.168.18.128 NETMASK255.255.255.0 GATEWAY192.168.18.2 DEFROUTEyes IPV4_FAILURE_FATALno IPV6INIT…

在openfeign客户端如何获取到服务端抛出的准确异常信息?? openfeign调用(请求/响应)的各个大致过程

在openfeign客户端如何获取到服务端抛出的准确异常信息?? 相关参考背景引入浏览器直接访问Spring的Restful接口(最普遍、简单的访问)示例结论 openfeign客户端调用的情况调用过程示例场景之一(其他场景可类比&#xff…

数据结构与算法面试系列-03

1. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 程序代码 package com.jingxuan.system;public class Sphere {public static void main(String[] args) {double s = 0;double t = 100;for (int i…

vue2 组件注册

简单分享怎么将组件注册为全局组件,主要分为三部分: 一、使用 Vue.install 方法将自义定的组件挂载到 Vue 实例上,如下: 二、注册为全局组件,如下: 三、页面使用,如下:
最新文章