用同一个 prompt 打了 8 个模型测了每个的 TTFB 和总响应时间。结论比你想象中差异更大——某些便宜小模型比旗舰快了 10 倍以上。做 AI 应用的时候选模型很少只看效果延迟同样关键。实时对话、IDE 代码补全、语音交互这些场景用户对响应速度极其敏感——首 token 超过 3 秒体验就会明显下降。这篇文章记录了我用 TheRouter API 对 8 个主流大模型做的延迟基准测试包括完整的测试代码和数据分析。测什么TTFB vs 总响应时间延迟测量有两个关键指标TTFBTime to First Byte从发出请求到收到第一个 token 的时间。决定用户感觉到响应的速度。Total Time完整响应输出完成的时间。决定整体吞吐效率。对于实时交互场景TTFB 比 Total Time 更重要。用户看到第一个字出来焦虑感就会大幅下降哪怕后续输出慢一些。测试环境请求来源阿里云华东 2上海节点API 入口api.therouter.aiTheRouter 统一网关Prompt固定文本约 50 tokensmax_tokens200控制输出长度一致测试轮次每个模型独立请求 5 次取中位数请求模式Streaming流式这样才能精确测 TTFB用 TheRouter 的好处是所有模型走同一个 API 入口排除了各家 API 文档不同、SDK 差异带来的测量误差。测试代码importtimeimportstatisticsimporthttpximportjson API_KEYyour-therouter-api-keyBASE_URLhttps://api.therouter.ai/v1PROMPT请用 100 字左右简单介绍一下快速排序算法的核心思路用中文回答。MODELS[anthropic/claude-sonnet-4,openai/gpt-4o,openai/gpt-4o-mini,google/gemini-2.5-pro,google/gemini-2.5-flash,deepseek/deepseek-v3,deepseek/deepseek-r1,qwen/qwen-max,]defmeasure_latency(model:str,runs:int5)-dict:测量模型 TTFB 和总响应时间返回中位数ttfb_list[]total_list[]for_inrange(runs):headers{Authorization:fBearer{API_KEY},Content-Type:application/json,}payload{model:model,messages:[{role:user,content:PROMPT}],max_tokens:200,stream:True,}starttime.perf_counter()first_token_timeNonewithhttpx.stream(POST,f{BASE_URL}/chat/completions,headersheaders,jsonpayload,timeout60.0,)asresponse:response.raise_for_status()forlineinresponse.iter_lines():ifline.startswith(data: )andline!data: [DONE]:try:datajson.loads(line[6:])deltadata[choices][0][delta].get(content,)ifdeltaandfirst_token_timeisNone:# 收到第一个有内容的 tokenfirst_token_timetime.perf_counter()-startexcept(json.JSONDecodeError,KeyError):passtotal_timetime.perf_counter()-startiffirst_token_time:ttfb_list.append(first_token_time*1000)# 转毫秒total_list.append(total_time*1000)return{model:model,ttfb_median_ms:round(statistics.median(ttfb_list),0),total_median_ms:round(statistics.median(total_list),0),}if__name____main__:print(f{模型:35}{TTFB (ms):10}{总时间 (ms):12})print(-*60)results[]formodelinMODELS:resultmeasure_latency(model)results.append(result)print(f{result[model]:35}{result[ttfb_median_ms]:10}{result[total_median_ms]:12})# 按 TTFB 排序results.sort(keylambdax:x[ttfb_median_ms])print(\n--- 按 TTFB 排序 ---)forrinresults:print(f{r[model]:35}TTFB:{r[ttfb_median_ms]}ms)代码使用httpx的流式 HTTP 客户端在真正收到第一个有内容的 delta chunk 时打点是目前最准确的 TTFB 测量方式。测试结果延迟数据表模型TTFB 中位数总响应时间定性评价google/gemini-2.5-flash380 ms2,850 ms极快openai/gpt-4o-mini510 ms3,100 ms极快deepseek/deepseek-v3620 ms3,600 ms快qwen/qwen-max780 ms4,200 ms快openai/gpt-4o1,050 ms5,800 ms中等anthropic/claude-sonnet-41,280 ms6,400 ms中等google/gemini-2.5-pro2,100 ms9,200 ms慢deepseek/deepseek-r13,400 ms18,500 ms很慢数据为阿里云上海节点测量不同网络环境会有差异。DeepSeek R1 的很慢主要因为它是推理模型响应前有较长思考过程。可视化ASCII 图TTFB 对比ms越短越好 gemini-2.5-flash ████ 380 gpt-4o-mini █████ 510 deepseek-v3 ██████ 620 qwen-max ████████ 780 gpt-4o ██████████ 1050 claude-sonnet-4 █████████████ 1280 gemini-2.5-pro ████████████████████ 2100 deepseek-r1 ████████████████████████████████ 3400结果分析1. Flash / Mini 系列就是为速度而生gemini-2.5-flash和gpt-4o-mini的 TTFB 都在 500ms 以内比旗舰模型快 2-3 倍。这类模型牺牲了部分推理深度换来了极低的响应延迟实时交互场景的首选。2. 推理模型R1延迟是另一个量级deepseek-r1的 TTFB 高达 3400ms总响应时间接近 20 秒。这不是网络问题——推理模型在生成可见内容之前会先完成内部 Chain-of-Thought 推理这个过程不输出 token导致 TTFB 极高。结论推理模型o1、R1 系列不适合实时交互适合离线批量任务。3. 国产模型延迟表现不错deepseek-v3和qwen-max的延迟都在合理范围内考虑到它们的价格明显低于 GPT-4o性价比突出。4. 影响延迟的关键因素因素影响程度说明模型规模高参数量越大首 token 生成越慢推理模式极高思维链推理在 TTFB 前有额外延迟节点距离中国内调用 OpenAI 比调用国内模型有约 200ms 额外延迟Prompt 长度低输入 token 影响不大输出 token 影响总时间并发负载中模型服务繁忙时 TTFB 会上升场景选型建议实时对话 / 聊天机器人优先选TTFB 800ms的模型# 实时对话推荐REALTIME_MODELS[google/gemini-2.5-flash,# 最快openai/gpt-4o-mini,# 快且效果好deepseek/deepseek-v3,# 国产快速价格低]IDE 代码补全要求极低延迟 500ms TTFB否则补全出来光标早跑了# IDE 补全场景IDE_MODELgoogle/gemini-2.5-flash# 380ms TTFB首选FALLBACKopenai/gpt-4o-mini# 备选文档生成 / 长内容输出延迟要求低重视输出质量和长度# 文档生成延迟不敏感DOC_MODELS[anthropic/claude-sonnet-4,# 长文档质量好openai/gpt-4o,# 均衡google/gemini-2.5-pro,# 上下文窗口极大]复杂推理 / 数学/代码调试接受高延迟换取更深推理# 深度推理接受等待REASONING_MODELdeepseek/deepseek-r1# 慢但推理深ALTERNATIVEgoogle/gemini-2.5-pro# 推理强延迟可接受用 TheRouter 做自适应路由实际项目中可以根据场景动态选择模型TheRouter 的好处是所有模型用同一套 API切换没有成本fromopenaiimportOpenAI clientOpenAI(base_urlhttps://api.therouter.ai/v1,api_keyyour-therouter-api-key,)defsmart_completion(prompt:str,mode:strbalanced)-str:根据场景自动选择模型model_map{realtime:google/gemini-2.5-flash,# 极速balanced:openai/gpt-4o-mini,# 均衡quality:anthropic/claude-sonnet-4,# 高质量reasoning:deepseek/deepseek-r1,# 深度推理}modelmodel_map.get(mode,openai/gpt-4o-mini)streamclient.chat.completions.create(modelmodel,messages[{role:user,content:prompt}],max_tokens512,streamTrue,)resultforchunkinstream:ifchunk.choices[0].delta.content:resultchunk.choices[0].delta.contentreturnresult# 实时对话场景replysmart_completion(你好今天天气怎么样,moderealtime)# 代码审查场景质量优先reviewsmart_completion(请审查这段代码...,modequality)总结场景推荐模型理由实时对话gemini-2.5-flashTTFB 最低380msIDE 补全gemini-2.5-flash/gpt-4o-mini低延迟够用日常开发gpt-4o-mini/deepseek-v3速度和质量均衡文档/长文claude-sonnet-4长上下文质量好深度推理deepseek-r1慢但推理能力最强一句话延迟敏感就选 flash/mini质量优先就选旗舰需要推理就接受等待。TheRouter 支持上述所有模型同一个 API Key一行代码切换。注册therouter.ai