前一阵子,deepseek每天都在服务器繁忙,但是老板又天天催:"必须给我接入deepseek,必须给我保证稳定!"
无奈之下,只好找出所有已经部署了DeepSeek V3
的厂商,逐一测试了一下。想尽办法满足老板需求...
我们先看结果,再看分析。
本次测试针对火山云、腾讯云、阿里云、百度云、deepseek、硅基流动,六家厂商,
为了全面评估各厂商的表现,我针对以下四个方面做了对比:
- 首包延迟:返回第一个tokens的时间
- 速度:tokens的输出速度
- 价格:输入价格和输出价格,按照每百万Tokens计算。
- 并发:目前业内主流对比的RPM(每分钟处理请求数)和TPM(每分钟处理tokens数)
我们的性能统计逻辑为,使用openai
框架流式传输。
首包延迟是记录第一个tokens的返回时间。
输出速度是记录输出的tokens数量以及token输出时长。tokens数量/时长,就可以粗略计算每秒输出速度。
并发的数据来自于官方提供,当然各位也可以自己多开脚本进行测试。
具体测试代码如下
主文件main.js
js
import OpenAI from 'openai';
import dotenv from "dotenv"
dotenv.config() // 加载环境变量
const model = 'deepseek-v3' // 根据不同的平台切换
const openai = new OpenAI();
async function main() {
let sTime = Date.now()
const res = await openai.chat.completions.create({
messages: [
{ role: 'user', content: '用一百字左右感慨中华的伟大' },
],
temperature: 1,
top_p: 1,
model: model,
stream: true,
});
let sTimeEnd = Date.now() - sTime
let eTime = Date.now()
let tokens = 0
for await (const part of res) {
process.stdout.write(part.choices[0]?.delta?.content || '');
tokens = part.usage.completion_tokens
}
let eTimeEnd = Date.now() - eTime
console.log('首包时间:' + sTimeEnd)
console.log('输出tokens:' + tokens)
console.log('输出速度:' + (tokens / (eTimeEnd / 1000)) + '/s')
}
main();
配置文件 .env
ini
# 按照这个配置 .env 文件
OPENAI_API_KEY="API KEY"
OPENAI_BASE_URL="基础URL"
上面的测试代码,因为各个厂商现在的变动还是挺大的,大家可以保留脚本每个月自己测一次,实时监控到最新的状态。
结果分析
我们从速度的角度来看,前三名:
- 火山云、腾讯云
- 百度云
- 硅基流动
火山云和腾讯云并列第一,他们在首包延迟和速度方面表现优异,均能达到800±200ms的延迟和约30tokens/s的处理速度。
第二名的百度在首包延迟上就略微有些慢了。不过200ms的差距,和价钱比起来,真的是完全可以忽略。
我们从价格的角度来看,前三名:
- 百度云
- 火山云
- 腾讯云
从价格角度来看,百度云的性价比最高,输入和输出成本分别为0.8元/M tokens和1.6元/M tokens,远低于其他厂商。这真的可以说是价格屠夫了,不知道百度是开了什么窍,去年价钱最贵的他,现在一刀砍到脚脖子了。
不过在真正的生产环境,并不是价钱决定一切的,尤其是TOC的场景,并发也是一个很高的要求。
我们从并发的角度来看,前三名:
- Deepseek
- 火山云
- 阿里云
- 硅基流动
火山是真的豪,30000RPM,其他厂商完全不敢跟牌。绝对的优势占据了第一。
Deepseek官方为什么是第0位呢? 因为他虽然看起来是不限制,但是5-6秒的长延迟,在业务上已经完全不能接受了,所以空有不限制的名号,却没有实际用处了...
如何选择
我们在自己的场景如何进行选择呢?
我们这里做一下拆解:
离线任务流任务
示例:我们要提前生产一批内容,例如我们企业的某些岗位需要处理某些数据、我们的agent中需要有大量的数据需要离线处理。
特点:这类任务对性能和并发要求都不高,但是价格越便宜我们越省钱。
推荐: 这种场景有限推荐百度。
在线实时长内容任务
示例:AI写作,报告分析。
特点 :这类任务主要是考虑输出速度,长内容输出任务下20tokens/s
和 30tokens/s
的差距还是挺大的。
推荐: 推荐选百度,这个场景下真不差那200ms了,
其次:可以选择火山云,特别是火山云现在有5折优惠。以后如果没有这个折扣之后,大家可以根据自家的QPS量来选择腾讯云或者火山云。
在线问答场景任务
示例:在线问答场景
特点:这类任务并发高,时效性要求强,对各项性能要求的很高。
推荐:如果并发的用户不多,那么可以优先选择百度,百度不够就上火山吧。
在线的AI助手任务
示例:例如B端的AI助手
特点:这类任务并发不高,但是要求尽可能快的响应。因为背后的工作流可能很复杂,200ms在多个任务的累计下也变成了秒级的等待。
推荐:依然是优先推荐火山云,享受折扣。后续看情况选择。
总结
当下虽然谈不上去年的百模大战,但是deepseek开源之后,各个厂商的价格战属实打的很激情。
但作为消费者,我们可以从中获得不少好处。
通过本次测试,希望大家能够根据不同的业务场景,选择最合适的厂商,确保服务的稳定性与性价比。建议定期测试,以便及时调整选择。
☺️你好,我是华洛,如果你对程序员转型AI产品负责人感兴趣,请给我点个赞。
已入驻公众号【华洛AI转型纪实】,欢迎大家围观,后续会分享大量最近三年来的经验和踩过的坑。