既然不想买高价显卡,我就在代码里优化每一个 Token。这话听起来挺悲壮的,但这就是 2020 年底的现实。团队账上有点流水,但都卡在项目交付里,我自己的钱都垫进去发工资了,哪还有闲钱去追那疯涨的 3080。看着群里那些晒跑分图的,心里不是滋味,但转念一想,妈的,老子当年用赛扬 300A 超频玩《三角洲部队》的时候,你们还在玩泥巴呢。硬件不够,代码来凑,这是刻在骨子里的本能。
书房现在像个分裂的战场。左边屏幕上是 Python 脚本在吭哧吭哧地爬竞品的数据,BeautifulSoup 解析 DOM 树慢得像蜗牛,我正试着用 lxml 重构,就为了省下那几毫秒的 CPU 时间,好让我的老 GTX 1060 能多跑一会儿数据分析的模型。右边地板上铺着新到的瑜伽垫,哑铃和弹力绳散在旁边。这不是什么生活情调,这是刚需。上个月体检,脂肪肝轻度,颈椎反弓,医生一句话把我打醒了:你再这么每天坐 16 个小时,赚的钱不够以后看病的。团队那摊子事,管人管得我心律不齐,晚上失眠靠褪黑素都没用。我意识到,管理上的熵增我暂时无力回天,但身体这个系统的崩溃,我必须亲手拦截。
脚本跑起来了,日志一行行刷,估计要十几分钟。我站起身,踩上瑜伽垫。没有音乐,只有机箱风扇的嗡嗡声和键盘偶尔的咔嗒声(脚本报错了)。我开始做最基础的臀桥和鸟狗式,这是健身教练朋友给的“办公室自救套餐”里的动作。核心肌群根本找不到发力感,腰部代偿得厉害,做几个就酸。这感觉太熟悉了,就像我刚开始学多线程爬虫,老是搞出死锁,系统资源被无效占用,整体效率反而下降。身体和代码,底层逻辑居然是相通的:错误的发力模式(糟糕的并发设计)会导致核心不稳(系统崩溃)和额外损耗(资源占用)。
我一边喘着气保持平板支撑,一边盯着屏幕上的日志。突然想到刚才那个 API 请求循环,是不是可以加个指数退避的重试机制,而不是傻等固定秒数?这样遇到频率限制时,总体等待时间会不会更优?Token 要省,时间也要省。汗水滴到垫子上,脑子却因为这种身体极限下的思考异常清晰。那种因为团队管理、客户催逼、现金流紧绷带来的弥漫性焦虑,暂时被一种更具体的、可解决的问题取代了:是臀大肌没收紧,还是腹横肌没激活?是 requests 的 session 没复用,还是 json 解析可以改用 ujson?
三组间歇完成,脚本也刚好跑完一轮。查了下结果,因为优化了请求头和用了更高效的解析器,这轮采集的数据量比昨天多了 15%,耗时还少了点。虽然比起人家 3090 的暴力算力微不足道,但这是我亲手抠出来的效率。同样,一组深蹲做完,大腿的灼烧感是真实的,但心跳有力,脑子清醒了不少。我坐回椅子,不再觉得是陷在泥潭里,而是像一个在有限资源下调试复杂系统的工程师。资源包括:老显卡的算力,我每天被各种破事撕扯的注意力,以及这台开始报警的三十五岁身体。
优化每一个 Token,意味着接受资源的硬约束,然后在这种约束下找到最优解。管理团队,我可能失败了,陷入了人力的无底洞。但对付代码和对付自己的身体,规则是清晰的,反馈是即时的。这里没有情绪化的合伙人,没有画大饼的客户,只有 if-else,只有力线是否对准,只有心率是否保持在燃脂区间。这种掌控感,哪怕微小,是 2020 年冬天我唯一能抓到的救命稻草。我知道问题远未解决,但至少,我在两个战场上,都开始了最笨拙也最直接的修复。显卡买不起,就优化算法。健康快崩了,就从下一个动作,下一次呼吸开始。














