admin管理员组

文章数量:1030655

大模型流式输出渲染导致的性能问题

在一年多以前,笔者也曾尝试过诸多网页端大模型,当时最印象深刻的,不是模型的能力有多强,而是在使用网页端时,我那台19年的老笔电,总是会不堪重负,风扇起飞,那噪声让人心烦意乱,不禁怀疑各大厂商是否在后台偷偷跑一些程序,因而索性自己手搓了个调用各家 API 的简易网站。近日,通过在 Edge one pages 部署 Deepseek R1 蒸馏版的机会,仔细看了看其中代码,这才解决困扰多日的疑惑。

Edge one pages

Edge one pages 和 cloudflare worker/page 类似,利用边缘计算来降低用户延迟,也使得开发者不用再操心服务器环境部署、安全防护等事项,专注于提供功能开发。官方提供了在 Edge

one pages 上部署 Deepseek R1 32b 蒸馏版的模板,可以免鉴权直接调用 Deepseek R1 32b(可惜的是其只提供 3 小时的动态域名,过期后需要重新生成,而绑定自定义域名的方式免不了繁琐的备案机制)

发现问题

在使用模板生成的网站中进行对话时,熟悉的风扇声又响起了……察觉到只有当流式生成 token 时,浏览器的 cpu 占用才会明显上升,也可以明显发现启用流式传输时,网络流量大大增加了,因此直接查看调用 API 以及负责渲染输出的模块。其具体代码平平无奇,看不出什么问题,但联想到流式传输时,有大量的 token 陆续到达,而代码里是收到一个 token 就直接进行渲染,这种简单的文字渲染并不会使用到 GPU,短时间多次渲染可能对于 cpu 来说也相当于较大的负载了,毕竟此时渲染大概率是没用上缓存的……

总结

未经优化直接在每次收到 token 后直接渲染,导致了 cpu 计算负担的增加,因而出现了一进行流式输出,笔者的老旧笔电直接风扇起飞的现象,实际上通过简单的处理,借鉴 HDD write cache 的思路,即可将渲染量降低数倍,从而解决此问题。由此不得不感慨,硬件技术与软件开发实际上有共通之处,他山之石可以功玉!

大模型流式输出渲染导致的性能问题

在一年多以前,笔者也曾尝试过诸多网页端大模型,当时最印象深刻的,不是模型的能力有多强,而是在使用网页端时,我那台19年的老笔电,总是会不堪重负,风扇起飞,那噪声让人心烦意乱,不禁怀疑各大厂商是否在后台偷偷跑一些程序,因而索性自己手搓了个调用各家 API 的简易网站。近日,通过在 Edge one pages 部署 Deepseek R1 蒸馏版的机会,仔细看了看其中代码,这才解决困扰多日的疑惑。

Edge one pages

Edge one pages 和 cloudflare worker/page 类似,利用边缘计算来降低用户延迟,也使得开发者不用再操心服务器环境部署、安全防护等事项,专注于提供功能开发。官方提供了在 Edge

one pages 上部署 Deepseek R1 32b 蒸馏版的模板,可以免鉴权直接调用 Deepseek R1 32b(可惜的是其只提供 3 小时的动态域名,过期后需要重新生成,而绑定自定义域名的方式免不了繁琐的备案机制)

发现问题

在使用模板生成的网站中进行对话时,熟悉的风扇声又响起了……察觉到只有当流式生成 token 时,浏览器的 cpu 占用才会明显上升,也可以明显发现启用流式传输时,网络流量大大增加了,因此直接查看调用 API 以及负责渲染输出的模块。其具体代码平平无奇,看不出什么问题,但联想到流式传输时,有大量的 token 陆续到达,而代码里是收到一个 token 就直接进行渲染,这种简单的文字渲染并不会使用到 GPU,短时间多次渲染可能对于 cpu 来说也相当于较大的负载了,毕竟此时渲染大概率是没用上缓存的……

总结

未经优化直接在每次收到 token 后直接渲染,导致了 cpu 计算负担的增加,因而出现了一进行流式输出,笔者的老旧笔电直接风扇起飞的现象,实际上通过简单的处理,借鉴 HDD write cache 的思路,即可将渲染量降低数倍,从而解决此问题。由此不得不感慨,硬件技术与软件开发实际上有共通之处,他山之石可以功玉!

本文标签: 大模型流式输出渲染导致的性能问题