A day @AI Maker Summit

早上7点20,二娃在枕头边先醒了,睁着眼睛躺在床上玩,跟着我也醒了,看了一眼时间,准备起床。

洗漱完,跟娃儿老婆打声招呼,开上车出发,路上买了份肯德基早餐,一路往西,到西山朗丽兹花园酒店,停车签到入场,8点50。

上午唐朝C厅的三场专题演讲,第一场Nvidia的工程师马达介绍了他主导的一个主攻跨AI Agent的会话管理和检索的社区开源SDK Flame,其中不少思考和计划中的roadmap都跟我们实际应用过程中遇到的问题和想要寻找的解决方案之间有着不少的契合点(只是当前项目还是纯社区推进,目前看上去维护的人员和力度都有些欠缺)。

第二场字节的MineContext的年轻产品小伙子,从哲学角度出发剖析上下文工程的数据设计和系统架构,整场演讲思路清晰,结构优秀,Q&A环节更是手到拈来应对自如,Q&A结束后一大群参会人员更是围在小伙子身边热烈讨论,氛围真好。午饭时间,跟同行的伙伴还在聊这位年轻的讲师,一致认为现在的年轻人真优秀,简直就是Born to AI的典型。

第三场,主讲人是位后端程序员/架构师,主讲内容为他们自研的一款专为AI Agent记忆场景落地的AI Infra产品,整体的设计思路非常清晰,四层,自上而下检索,自下而上形成记忆,从我们程序员的视角来看,那就是优雅、简单、可靠,👍。刚好也切中了近期我们内部在讨论的关于AI Agent如何脱离类似于Coze、Dify等等工作流平台或者纯模型厂商提供的简易的基于会话片段的记忆能力,打造专属于也更适合于我们自己业务场景的记忆机制的诉求,有不少收获,后续有待验证。

午休时间,就在酒店一楼攸州小镇随便吃了点便饭,下午1点半接着听课。还是回到唐朝C厅,主讲人是峰瑞资本的陈石老师,从投资人的视角讲了讲他对AI创业的认真,核心提炼下来就是「有行业纵深的AI场景落地才有生存空间,结合中国开源大模型的生态优势,出海博出路,有着广阔的天地」。

然后切换到了唐朝A厅听了快手的一位工程师分析了快手内部孵化的一个AI Coding的平台,第一次听到L3级别的AI Coding Agent的概念,跟自动驾驶的L1~L5做了一个映射,不过这位老师讲课的风格属实有点无聊,过于程序员化了,不过还是能一瞥快手内部实际上在AI上面积累和应用的强大(一个看上去比较内部和边缘的的应用都这么不错),这位讲师其在AI Coding上展示出来的一些创新,在目前Cursor,Claude Code,Antigravity,Codex上都还没有见到。

接下来的蒋宏伟老师分享的自己做愈愈这个产品创业的心路历程,作为一个老创业人,看着别人从零到一走一遍创业路,还愿意在大会上把自己创业路上遇到的问题,自己对过往认知的否定拿出来剖析分享,而且这位蒋老师自己还是一位焦虑症患者(有躯体症状,需要服药控制)。这位讲师演讲全程能量满满,非常之棒,在Q&A环节竟然还遇到了同在做AI音乐疗愈的焦虑症病友创业同路人。

最后再次回到唐朝C厅,听了OpenAgents的一位工程师的分享,留下的印象不是特别多,但是提到了多Agent协同中可能存在的通信损耗和Agents之间如何构建相互信任度的问题,还蛮有意思的,颇有一些人类社会之间人与人之间互动的关系,AGI以后,Agent之间的自协同如果不以人类直接指令为指导,在理解了指令人的意图后,它们之间如何协同,互信,调度,将是一个蛮有意思的事情。

明天是老婆的生日,但是明天晚上公司有安排,怕晚上回家太晚。早上到了会场,便跟大娃商量是不是今天晚上给老婆过生日,大娃建议也是今天过,所以没有听完最后一场便赶着回家了。

回到家吃完晚饭,跟二娃在屋里练了一会儿琴,二娃想吃蛋糕了,便主动去冰箱里把他下午陪他妈妈一起去选的蛋糕拿了出来,准备给妈妈过生日了。二娃今天还主动给他妈妈送了一个无印良品的唇膏,我刚回到家便让我把他手表上的零花钱扣掉88块,说那是他今天给妈妈买礼物的钱(真不错)。

大娃因为昨天去公园玩雪伤着了脚,行动不便就没有出门选蛋糕,但是把自己纯手工编织的一个漂亮的手绳作为了生日礼物送给了他妈妈。

一家人给老婆唱了生日歌,老婆许了愿吹了蜡烛,开开心心地吃了蛋糕(除了奶奶不喜欢吃巧克力和酒渍樱桃,频频咋舌)。

老婆,生日快乐🎂,爱你❤️


原文链接: 微信公众号
原文发布于:2025年12月14日 22:25

感谢Codex又一次救我狗命

开篇声明:本篇不拉不踩任何AI工具和厂商,仅从我个人实际应用体验出发,而本人的实际应用多有局限,且场景偏颇,本文所有的观点都仅供参考,核心是作者本人想要留作记录,同时保持练习写字输出而已,大家读完笑一笑即可。

事情是这样的,Google Gemini 3 Pro模型发布后,业界各种评测文章热烈追捧之下,我也未能免俗,也主动尝试了一把,在试用Antigravity一周帮忙做了几个小的独立工程(改改官网静态页面,一句话做个小App)之后,觉得这货简直就是另一个AI菩萨(免费,可用,速度快,还有一个赛博菩萨是Cloudflare,此处不细说),但是在我想要尝试高密度使用的时候,时不时地就出现了刚提交提示词便返回错误的问题,实在太影响体验了,便当场升级为Gemini Pro用户了,升级完成后再次出现错误的概率就非常低了,最近大概一天能遇到3~5回(在我密集使用的情况下),所以花钱就是能变强😂。

在把此前主要编码的工作从Cursor切换到了Antigravity一周后,我先把我刚刚恢复订阅的Cursor再次取消了订阅,回过头去看了一眼Curosr的订阅记录,发现实际上我一直也没有停掉对Cursor的付费使用,中间短暂地离开后在其发布Curosr 2.0后又马上回去了(那段时间我应该是重度使用了Claude Code,还订阅了其Max套餐)。

图片

这次再次主动取消 Cursor Pro 的订阅原因有二:

一、Curosr莫名其妙地作了一次妖,主动检测我的IP(应该还蛮严格的)识别出来我是使用了代理,便限制我使用GPT和Claude系列的模型,只能选择Auto模式或者Composer 1模型,周末在家折腾业务的复杂数据分析时,正需要找GPT-5.1和Opus 4.5来帮我解决复杂问题的时候掉链子了,给我气坏了,只能将就着用Auto模式,磕磕绊绊地来回沟通讨论,也算是把活干了,但是真的给我恶心坏了,一会儿后面展开聊聊Cursor这样的厂商的核心竞争力(仅代表我个人的观点)。关于如何解决Cursor识别IP归属地区后限制部分高级模型的使用,后面我在X上看到有推友分享了一个方法,那就是进入Curosr Settings -> Network -> HTTP Compatibility Mode,把它从HTTP/2修改为HTTP/1.1,然后确保自己的代理出口IP是美国/日本/新加坡等不受OpenAI、Anthropic、Google等等这些AI厂商提供服务的地区限制的国家/地区的IP即可。

图片

二、使用Cursor这么久我一直都只是订阅了最基础的Pro一档的套餐,虽然也开启了On-Demand这个选项,实际上一直也没有真的产生消耗,这个选项的意思是,如果我这个月的用量已经超过了Cursor Pro的20美金的总用量,会开始从这个我设定的On-Demand的限制中开始计费,直到消耗完毕后Curosr会停止服务,举例说明:如果我在12月20日已经把Cursor Pro中自带的20美金的用量花没了(实际上还是很耐用的,反正我基本上没有遇到过花超的情况,Cursor还是蛮慷慨的),假设我给我自己的账号设置的每月的On-Demand金额为10美金,那么从12月21日往后的调用,计费就从这个On-Demand账户中的10美金来进行预扣,下个月账单中会体现出来这部分实际消耗的费用。叨叨叨说了这么多,实际上我从来没有在Cursor这儿感受到过限额或者费用高昂的问题,那么为啥退了呢?这是因为OpenAI发布GPT-5.2模型的当天,Cursor便上线了该模型的能力,向所有用户开放使用(我不确定是不是仅限Cursor Pro及以上用户),我自己图新鲜也尝试了一把,体验的结果是速度真慢(我平日的编码需求并没有那么复杂,对模型能力的需求可能并没有那么高),我有点不信邪以为是网络的额问题,连续试了四五次请求,都超级慢,最终我选择放弃指定GPT-5.2模型,切换回Auto模式了,继续执行了几次请求,依然速度慢到令人发指。当天我就把工作切换到了Antigravity上了,而Antigravity不负重望地出货很快,且当时我是免费在用,新发布的Gemini 3 Pro模型更是能力上升一个大台阶,比在Android Studio中调用那个Gemini Code Assistant只能访问Gemini 2.5 Pro模型更是不可同日而语。

就这么的,Cursor Pro从正室被降成了丫鬟,Antigravity刚进门就成正室了,这两周每天都在高密度地帮我输出Flutter代码和数据分析任务的计划和指令,确实值得20美金的这个价格,而且出活效率是真的高,比Claude Code Max、GLM Coding Pro、Cursor Pro出活都快,稳定性也很不错。从出活速度上唯一可以跟Antigravity对比的,可能只有JetBrains AI Pro了,但是JetBrains AI Pro的模型能力相对会有些限制(北欧公司一般都比较稳健,一点也不卷,模型和产品迭代速度都相对较慢,不过可靠是真可靠啊,基本上没有遇到过失败的问题。他们自己家的Junie这个Code Agent也在持续迭代更新中,有兴趣可以了解一下)。

时间来到了周五下午,原本计划当天要完成的礼物动画播放队列的功能应该在周五完成的,但是因为周五晚上团队有些其他安排,下班比往常早了不少,晚上聚完餐回到公司,继续折腾了半个小时,Antigravity一直在几个社区开源的礼物动画播放器与当前项目的版本兼容性上绕来绕去,每次调试编译都需要不少的时间,最终问题未能解决,便去地铁站等同一天下班很晚的老婆一起回了家。

到家后时间不算很晚,还是很不爽,本想着继续肝一肝,看看今天晚上能不能搞定这货,最终还是败下阵来,简直毫无进展,Antigravity一直在来回打转。无奈之下,趁着家里网络好,把那个复杂的数据分析任务,先让Antigravity启动了(公司网络有限速,对于需要下载外部资源的数据分析来说很不友好),洗洗便睡了。

周六一早起床,吃过早饭,继续肝,昨夜Antigravity守着数据分析的任务已经完成的大差不差了,先放着让它把剩下的不到20%的分析继续执行着,我们继续改Bug。谁知这货还是来回绕啊绕,想着每次它都自行分析后就开始干活这个套路过于浪费时间,我便把编译错误日志,先给了ChatGPT,未曾想ChatGPT一语中的,直接给出了当前项目中的问题,一句话就点破了问题所在,并且给出了一个在社区开源项目首页的README中就明确注明了的方案(一句未加粗的普通说明,但是很明确)。手动修改后,再次编译,问题得到解决。而此前Antigravity一直在试图把社区的开源项目clone到本地,然后自行分析并做出修改和调整来解决这个编译时版本不兼容的问题,而这个开源项目的链接地址它早都访问过很多遍了。看来社区中大家的一个普遍共识:GPT擅长复杂任务的分析、Claude擅长编码任务的执行(我想Gemini也差不多),属实不欺我也,GPT的脑子就是好使,Gemini的手是真快。

在ChatGPT通过对话框的方式帮我解决了编译问题后,我们就继续开始业务逻辑的推进了,在调试代码和测试功能的过程中,Antigravity又一次把我引入了死角,在礼物动画出队开始下载资源和播放的时候,会出现卡死整个Flutter主进程的问题,我尝试着读了一遍它写的代码,愣是没有找出来问题所在,一遍又一遍地跟它来回讨论和互动。期间二娃跟他妈妈要去上乒乓球课,原本我也一起陪同,还能跟老婆在乒乒球馆里一起打会儿球(老婆是个乒乓球迷),但是这个问题不解决实在心痒难耐,便拒绝了一同前往的邀请。折腾了一个整个上午,卡在了这个问题上,娃儿跟老婆回来吃午饭了,便跟着一起吃了午饭。

午饭后,继续磨啊磨,先是梳理了一下代码逻辑,整理了一下代码注释,再次重新出发,不过Antigravity还是没能很好的解决问题。这个时候我又一次想起了GPT 5.2,打开VS Code,唤起Codex,选择了一个GPT-5.1-Codex-Max模型,把我当前正在做的事情以及关联的几处代码跟它说明了一下,然后再把当下遇到的问题给它大概说了一下,让它帮我找一下问题可能在哪儿(请注意,我连日志都没有给它,因为不是错误日志,是主线程被Hang住了,没有什么特别有价值的日志,这是程序执行逻辑错误导致的)。

未曾想这个从未登堂入室的二房(Codex),花了不到1分钟就把问题分析清楚了,指出了可能导致问题的一处代码,并给出了修改意见,执行编码修改后,再次运行问题彻底得到解决。就这么滴,被Antigravity折磨了近3个小时的我,被Codex用了3分钟解救了。这个时候,老婆已经带着大娃和二娃去公园玩冰去了,还给我发来了公园里钓友们在冰面上钓得鲫鱼的照片。

图片

既然问题已经得到解决了,那就继续让Codex帮我整体Review一下当前的这个代码设计和实现,它很是中肯地对Antigravity的设计和实现提了4处要紧和6处不要紧的优化和修改建议,一一执行后,换上衣服出门跑步去了。进入12月份后,家中事情有些多,平日跑量骤减,得追追进度了。

跑步的路上,一直在想这个问题「AI大浪潮时代里,像Curosr、OpenRouter这样的完全依赖大模型产商的公司会有生存空间和未来吗?」

5年前的我,可能不会去想这个问题,10年前的我可能会直接回答「它们的生存空间会很小,逐渐在时代的浪潮中消失」,现在的我,在一路跑步的过程中,不断地在问这个问题,零零散散的,有了下面的一些思考,记录一下,也分享给大家:

先说结论,Curosr和OpenRouter这样的厂商会有很大的生存空间,未来可以很好,虽然不一定能像OpenAI这样的时代弄潮儿一般,但也肯定会是一个10亿~100亿美金体量的公司;

这两家公司的商业模型,有相似之处,也有不同之处,我们一一来展开。

先说Cursor,这是一个核心用户界面以基于VS Code(微软旗下的一款开源代码编辑器工具)的商业化高度集成AI Code Agent的IDE,收入来源于个人用户和企业用户的订阅费和模型用量调用费。

从产品交付上来拆解,Cursor提供两个集成的服务:集成了AI Code Agent的IDE和大模型调用能力,实际上我们也正是为这两个能力进行付费的,与此类似的产品有Claude Code,以及其他一众产品,我们在此不一一列举了。

这一类型的产品核心能力就两个,一是AI Code Agent产品的能力,例如:计划和任务的拆解、合理的工具调用推理、提供给用户的交互界面和易用性,Cursor作为AI代码工具的吃螃蟹者,一直都走在行业的前面,后面众多的跟随者无一不是采用了与其产品基本类似的方式提供产品服务,从用户界面和产品交互,成为了行业默认的标准,而这些看似只是一些工程化的工作,背后实际上有着大量的思考、论证、迭代、优化的工作,最终呈现给到用户们的是当下的产品形态,我们只需要在对话框中描述我们的具体需求,或者选中某一段代码发送给输入框,然后继续在输入框内输入指令或需求,又或者是在代码编写的过程中通过Tab键的自动补全提前帮用户把将要完成的代码一次性补全输出。

看似简单的三个核心功能,实则背后有着大量的工程优化,单纯从需求分析和工具自主选择上,我在使用Cursor做复杂数据分析的过程中基本上不需要自己来给出任何意见,它自己便能做成合理的推理并选择最终使用的工具或者实现方式来达成目的,而Antigravity便没有那么聪明,需要明确指明让其通过ipynb这样的方式来做数据分析,它才会这么干,否则它就会选择一次性的python脚本分析来完成,哪怕你在需求描述中都跟它说明了我们需要持续针对数据分析的结果一步步地深入做分析。此外,Cursor最新版本在Agent自主执行任务前,主动向用户提问,并且通过可视化的交互方式来与用户达成进一步需求确认的优化(用户可以通过勾选Cursor给出的选项,甚至可以在勾选选项后再次给出补充信息),然后再次确认后开始执行的优化,比市面上绝大部分纯文本或者列表式输出要点,让用户再次通过文本输入的方式来确认的交互方式就提效非常多,且可以持续多次迭代确认需求细节,无疑对于最终Agent执行的效果有着非常大的提升。

其次是其背后对接的大模型厂商的多样性,对于终端用户来说去对接那么多的大模型厂商,且不说模型厂商的接口是否会存在一定的差异(虽然OpenAI的先发优势,让全行业的厂商最终提供的API接口基本上都是OpenAI Compatibility的),就是光开通这些模型厂商的账号维护账单都是一个非常让人头疼的事儿,更不说厂商们发布产品的时间周期越来越短,模型的能力各种各样,用户们要如何及时地去对接调试和评估不同厂商不同模型的能力都是个非常需要投入时间和精力的工程(且不论是不是每个用户都有这个能力去做好这两件事儿)。

一个很小的例子,就是Antigravity一直不能很好地遵守全局GEMINI.md文件中的规范,例如我明确要求其在思考推理、与我沟通、制定计划和输出内容时限制必须使用中文简体,但是其总是会在各个环节出现忘了这茬儿,需要多次手动重复提醒,而Cursor在遵循一整个rules目录下不同的规则文件中声明的规则时依然可以长期保持一致性,而不出现错漏。乃至我在X上都看到不少跟我一样遇到类似问题的人在探索和分析如何让Antigravity一直输出中文的优化方案😂,这就是Cursor团队在背后做了大量工程化工作的结果,包括Antigravity直到现在也没个后台和好的入口可以查询你当前用量,而Cursor在账单和用量上已经做得非常到位,且都是实时更新。当然现在Antigravity这个慷慨的用量额度,大体上绝大部分人不需要去关注到这部分内容。

所以Cursor不论其在产品能力上的创新和先进性,其在工程和生产流程上做了众多的脏活和累活,最终把一个稳定可靠且创新的产品交付到了用户的手上,虽然其基座模型主要还是依赖OpenAI、Anthropic、Google这样的大厂,也有Composer 1这样的自研模型(不确定是否有依赖其他开源大模型),看上去核心大模型能力依托于其他基座厂商,但是用户其实想要的就是稳定可靠好用的产品,仅此而已,这个套用到任何行业任何产品,都是适用的。好比我们看中国的首富,总是卖水的公司的老板一般,中国人都会烧开水喝,可是农夫山泉愣是能创造这么大的商业价值(这还不是那些可能有泡沫的行业哦)。

再来聊聊OpenRouter,在国内有一家跟OpenRouter的商业模式非常接近的公司名字叫硅基流动(SiliconFlow),核心商业模式就是AI大模型厂商API Token的批发和零售商,他们从OpenAI、Anthropic、Google、阿里、月之暗面、MiniMax、智谱等等厂商那儿批量采购大量的API Token,然后再通过其平台进行转售,终端用户在调用其提供的不同厂商的模型时,只需要修改接口中传入的模型名(以其平台上模型名为准)即可实现一键切换各大厂商的模型调用,所有厂商之间接口的差异,都由他们居间搞定了(看上去跟Cursor一键切换不同的模型有着异曲同工之妙,当然他们之间是否有合作也未尝可知)。简单可靠,开箱即用,此为其一。

当然当OpenRouter和硅基流动等API Token分发商们足够成熟后,完全也可以自行部署和优化当下社区里的开源模型,DeepSeek、Qwen、Kimi、MiniMax都会是很好的可商业化部署的大模型,而对于终端用户来说,这也是一种非常灵活的能力,可以在众多开源和商业闭源模型中去遴选适合自己业务场景的模型能力,在能力和成本之间找到平衡,把自己的能力和精力更多的放在垂直领域下业务的打磨上,而不是耗费大量的时间和精力去做基座模型的技术对接和适配(边际成本太高,毫无规模效应)。生态丰富,丰俭由人,平台借由规模效应摊低用户接入的边际成本,此为其二。

前些日子看到媒体在报道各大厂商的模型Token的调用量时,赫然在列的一个第三方公开数据便是OpenRouter每日API的调用量,掌握这个数据,显然就掌握了子弹打向了何处(考虑到隐私问题,哪怕只是知道了Token费用流向了哪些厂商,对于商业社会中的很多决策都能造成影响,更不论接口调用的实际应用情况了,我们姑且认为他们都不会这么做,我也没有仔细研究过他们的隐私政策和用户协议)。厂商们甚至都会反过来找OpenRouter要数据反馈,毕竟他们每家只有自己家模型调用量的数据,对于其他家的不同模型的实际调用量和受欢迎程度也不了解不是,说得再阴谋论一些,哪天会不会刷OpenRouter的榜也不好说😂,这不就是大众点评的路数嘛。汇众家之所长,积累了大量的实际生产环境的调用数据,也许是一个潜在的数据金矿,此为其三。

最后,前一阵子收到一封OpenRouter发的邮件,内容大体是他们支持了用户调用流量的旁路流量的复制和重放,这对于复杂业务和工业级应用简直就是利器啊,在当下Agent和LLM提示词工程普遍还存在开盲盒的情况下,Agent和LLM工程过程的可观测性和结果的可评估性,显得尤为重要。这里我们甚至可以畅享未来他们会有更多工程上的创新,包括一些高度自定义的负载均衡器之类的能力的推出等等。

图片

以上是基于产品特性和行业生态,对于这两家公司的核心商业竞争力的一些浅薄的思考,其实除此之外,我还想单独针对一些抛开产品力之外的一些合规问题再展开一下。

先说可得性,Cursor和OpenRouter都解决了绝大部分中国大陆(以及其他服务区域受限的国家和地区)开发者和用户们会遇到的限制服务使用的问题。Cursor和OpenRouter只需要一张支持Visa或Mastercard结算的信用卡,便可开通服务直接使用。如果我们要用ChatGPT、Claude的客户端,或者直接调用OpenAI和Anthropic的API,付款的银行卡风控极度严格,中国大陆和中国香港发行的Visa和Mastercard信用卡都会被拒付,费老大劲折腾找了一张虚拟卡,也保不齐下个月就拒付了。更有甚者因为使用代理导致IP共享,刚刚开通Pro的账号,便触发了这些厂商内部的风控策略,账号都扬了(社交媒体上,每天都充斥着大量的这些讨论)。而使用这两家公司的产品,便完全不用太担心这个问题,首先他们不会扬你的账号(只要你不是很过分,而且因为本就是付费服务,咱也过分不到哪儿去,那几家大厂风控策略严格,是因为免费用量被黑灰产薅羊毛薅的他们必须对抗才有的策略),虽然Cursor最近升级后限制大陆地区用户使用特定模型的事情也有点那个味道了(可能是监管有压力,who knows),单但是整体上还是很容易解决的。

再说接入成本,对于任何一个渴望稳定和效率的企业或团队,哪怕是有同样需求的个人来说,使用Cursor和OpenRouter都是一个能极大降低接入成本和各种其他摩擦成本的优秀的选择。举个例子,公司要想评估各家不同模型厂商提供的模型能力,如果我们一家家地去谈合作,要一些测试Token,测试通过后再签合同,这一套下来,但凡经历过这些流程的人都知道,等流程走完,这个模型都已经进化一两个版本了。而且不同厂商的结算方式,账单日,合同签订等等都是一堆的跟实际产品力无关的具体需要做的合规动作,而选择直接使用Cursor和OpenRouter,我们便借助了这两家优秀的公司帮我们把大量的这些流程性的支出给摊薄了,而他们则可以在这个优化了全社会或者全行业链路和效率的环节上获得属于他们的收入和利润,这就是商业的本质,被别人需要,解决了商业世界中某个流通环节的成本或效率优化,那么你便可以获得该环节的价值溢出,继而取得收入和利润。如果杠杆足够大,那么利益也就被无限放大了,这就是农夫山泉看上去只是做了大自然的搬运工,但是却可以创造这么大商业价值的核心原因。

跑了近100分钟,下午3点触发,4点37回到家,跑了15.5公里,回到家的时候,娃儿们跟着老婆已经回来了,二娃一会儿还要去画画,我也准备洗完澡,一会儿再送他去上课了(这一天可算不闹心了,要是这问题没解决,我还得继续后面折腾😮‍💨)。

回到文章的标题,这次为啥又是Codex救我狗命呢?实际上我使用Codex来帮我写代码的时间很少,重度使用的排序应该是:Cursor (70%,最近换成了Antigravity),Claude Code(20%,最近停止订阅了,因为它的Pro用量低到无法干活,而Claude Skills完全可以用Antigravity依葫芦画瓢实现),JetBrains AI(10%,偶尔补充使用,年订阅费用不算高,老早就买了,不用白不用了),Codex(偶尔尝鲜,或者帮我临时解决某个问题)。Codex时不时地能帮我解决让我头疼的问题确实有点出人意料,但是它能一直作为一个备选项存在,实则主要原因是因为它是ChatGPT Plus用户的附赠权益,而作为头部AI厂商的OpenAI的拳头产品的ChatGPT一直都是一个很好的产品,我相信在未来的两年内,我应该都不会主动取消它的订阅,这样就让我总有机会用Codex来帮我解决一些其他AI Code Agent造成的或者未能解决的问题,而Claude就一直因为它的风控以及用量问题无法扶正导致很多时候也许它有能力,但是我用不上它,这样OpenAI的产品体系在我这人就形成了一个正反馈循环,而Anthropic的就相反了,如果不是他们家产品能力的创新足够打动我,我是很难想起来要用他们家的产品的。从这个角度来看,一个产品只要能持续留在用户的手机上或者保持在用户的订阅列表中,没有被用户从账单中清除掉,那就留有足够的机会,保持在场,就有机会持续进步。于OpenAI的Codex如此,于我们更是如此。但凡有机会,一定要保持在场,持续在场,那就持续有机会。

就写到这里吧,少年宫的走廊上暖气不足,伸在外面打字的双手已经拿不稳手机了,冻死我了🥲,喝点热茶先。

下周要准备写年度总结了,年末见,朋友们。今日冬至,不知各位是否有吃饺子或是汤圆。(今天何老师科普了一下,冬至时节,全国各地的时令吃食差异,北边吃饺子为主,华中和华中部分地区吃汤圆为主,云贵川地区喝羊肉汤,岭南三地吃鸡为😄)

图片


原文链接: 微信公众号
原文发布于:2025年12月21日 18:19

又是一年过去了

每年阳历新年,不能免俗地要往回看看,看看这一年都经历了些啥,要按牛的说法,这叫反刍。

既然是反刍,那就是刚吞下那会儿啊,还没仔细咂摸味儿,嚼得啊不够细致,这会儿再倒腾出来细品一下,咂摸咂摸味儿。

实际上这一年要说简单可也算是非常简单,基本上就是一周一周的复制粘贴,一天一天的拷贝重放。那还咂摸个啥劲呢?

谁让咱们是人呢?人活一天就得问自己「生存的意义是什么?」既然又安然度过了一年,那就也试着问问自己。

写字

写字是我一直愿意做的事情,虽然谈不上热爱,但这已是我活三十多年来,唯一一个未曾间断,且以不同种形式不断地在进行中的,唯一一个不是生活工作所需我去刻意和主动做的事情了。

2009年从学校毕业,第一次领到自己的工资后,在网上购买了第一个虚拟主机,申请了自己的域名,按着别人的教程把WordPress搭了起来,断断续续地写了不少跟自己编码相关的技术文章和一些纯属个人喜好的随想片段,还有一些工作和生活记录等等。

但是一直没能很好地保持一个持续输出的习惯,这十多年里头可能连月更的频率都没能保持。其中有工作和生活忙碌时间少的原因,更多是总觉得文章没有准备好,没有达到需要把它们写出来发出去的程度(实际上那个小站点没有任何流量),然后也就拖着拖着便忘了。

前几天在家里翻出来一本当年自己手写的笔记本,看着笔记本上写的内容,字都是我写的,但是本上写的内容我竟然没有任何印象,家里头这些笔记本想来也有不少,有些是当年读李笑来的书,一时兴起便学着记录每天自己都干了些啥,最终也还是没能持续下来。不过看着翻出来的陌生文字们,我更是觉得「写」这件事情要保持,也许这是对抗遗忘最好的方式了,别人看不看冇所谓啦,关键是自己需要保持记录。

大概是从今年5月开始,每周保持至少写一篇文章的节奏,截止目前今年应该也写了40来篇了(含5月份前不规律记录的一些),每周内容不一定,有的时候纯记录生活,有的时候蹭个AI或者实事的热点,都是自己的真实经历和感受,写完了就发到朋友圈分享一下自己的记录。

全年应该就两篇文章的阅读量过千了,其一是今年续订读库时候自己选择了最基础的款,想着明年要搬家,书太多总是麻烦多些,简单回顾了一下这些买书尤其是跟读库的一些私人的感受,未曾想被微信推荐出去了,在我加入的某个读库的共读群里,还有群友分享了我这篇文章。

其二是我分享自己使用OpenAI Codex帮我解决了一个Claude Skills的问题的文章,可能踩中了现在大家AI焦虑的点,系统也给了不少推荐,历史性的突破了8000的阅读量,此前最高阅读量的文章是分享我跟我家大娃就「学生家长举报蛋仔派对,希望官方下架该游戏」一事的讨论,当时应该也是被系统推荐出去了,当时的阅读量应该是有6000多。

写文字,主要是自己开心,写完了很畅快。倒也没有想过一定要什么阅读量,有人愿意看,那我肯定更愿意写,这是一定的。有人点赞,关注和评论,那就更开心了,此前的博客和现在的公众号,都是这般,基本上任何有意义的评论,我都会逐一回复,每次点赞和关注也都会手动感谢。有来有往的,蛮好。

这里有件小事儿跟大家分享一下,我们经常看到有些公众号作者发的文章就跟朋友圈一样,全是字,既不是传统的公众号推文(标题图+标题+文章内容)格式,也不是所谓的「小绿书」(多张轮播图+附文说明)的格式,而是纯文字大卡片的样式(推送的卡片就是加粗文本,点进去后全是文字),这个对于作者是有要求的。我在今年年中和11月的时候,应该是主动查询过两次(我也不知道为啥查了两次,可能第一次查完忘了),想要知道怎么才能写纯文字卡片的那种推文,最后发现必需有500个关注者才能开通那种偏随性分享文的发布形式的权限。这里先许个愿,继续保持输出,争取明年的这个时候,咱们也可以达到可以发这种小文字卡片的门槛😄

今年写字的内容基本上都发在了公众号上,自己的博客站点内容基本上没有主动去做同步和更新,从2026年开始,我想着以后也还是同步一下,因为今年我还真遇到了写了一篇文章发不出去的情况。也是为了给自己留个念想,起码那个博客站点是我的私产😎

2026年,52篇文章见😜

跑步

昨天下午,想着2025年就要过去了,年内还跟老婆开玩笑说,看看今年继续跑下去,啥时候咱们也报名个半马试试看,可是咱这个跑步一直都是停留在休闲跑的阶段。

索性今天就跑个20.25公里吧,跟2025道个别,等进了2026,咱再跑个20.26公里,咱整个彩头「跑过2025,跑进2026」。这不,老婆带着娃儿去公园砸冰去了,我就开始跑了起来。

图片

刚刚看了一眼佳明手表的记录,2025年累计跑了210次,跑了1048公里,还没有达到月均跑量100公里的目标。2026年,我们往上够一够,争取完成目标。

图片

2026年,1200公里见💪

口琴

我在农村长大,小时候能接触到的音乐不多,在离开镇上的初中之前,我能接受到的所有音乐基本上来源如下:电视剧主题曲(片头、片尾,这也是我们上小学时候每天下午上第一节课前预备铃响后,全班同学合唱的主要曲目来源。),镇上集市街上有人用音响播放的流行音乐,还有上了初中借着学英语的由头买了随身听后,用自己不多的零花钱在学校门口老师开的文具便利店中买的那些盗版流行歌曲磁带。更何谈乐器了,如果没有记错的话,小学期间屈指可数的几次音乐课,老师也不会教什么乐理知识,只是带着大家学了一些红色歌曲,以备教学检查时,在预备铃期间大家可以整齐地唱出来。

第一次见到正经的口琴,应该是来跟着爸爸学木匠的小表舅把他哥哥(我的另一位表舅,他那会儿在北京上大学)的口琴从家里带到了他学徒的我家中。那会儿表舅跟我们住在一个屋,表舅一张床,我跟弟弟一张床,小表舅没能去上大学,来跟着爸爸学木匠,但是他有写毛笔字(表舅他们家传,他爷爷应该毛笔书法功底很是不错)和吹口琴这两个爱好,实际上我已经忘了小表舅的口琴到底吹得怎么样了,但是在那个时候的我看来,能拥有一把口琴,那可太酷了,还能吹奏出来旋律的话,那就简直了。

去年还是更早的时候,我也曾跟娃儿们夸下海口,说我要真的学口琴了,但是一直没能正经学起来。今年夏天开始,正经学了起来,照着网上的视频,从单音开始,练了得有两个月,能把简单的单音吹出来了,然后一点点地练最简单的曲子,现在能比较熟练的吹出来的曲子有《玛丽有只小羊羔》《欢乐颂》《送别》,正在学的是大话西游的主题曲《一生所爱》,希望到春节时候,可以完整得学完这首曲子。

虽然现在能吹几首非常简单的曲子了,但是实际上我也不识谱,我家大娃就说「爸爸,你记的都是蓝调口琴谱的吹吸谱,不是简谱吧」,对的,他说的是对的,我只能凭着记忆吹出来,但是并不知道简谱是啥。

2026年,会吹的曲子要学会读和背简谱,再学一首流行歌曲和一首古典音乐的曲子。

AI

今年不得不说是AI又一次翻天覆地的进化的一年,是不是AI Agent元年不知道,起码今年AI行业的股票都上天了,我们也看到了寒武纪、摩尔线程这样的大A神话,DeepSeek更是在春节期间炸了美股的锅,为中国AI出海指明了道路——开源正面硬刚,成为众多想要布局AI的企业和组织的不二首选。

回归到我自己身上,从去年年初通过与ChatGPT不断对话来实现Telegram AI机器人的开发和部署,中间ChatGPT还帮我把我那年久失修的博客站点给升级保养了一下,到今年年初开始让Cursor帮忙直接写代码,到现在Claude Code、Cursor、Antigravity、OpenAI Codex齐上阵的情景,已是大不相同了。

在这些一众的AI Code Agent的助力下,静态官网站点,CI工具脚本已经完全不在话下了,去年为了写一个批量处理音乐专辑音频的脚本,还需要跟ChatGPT对话,调整需求并且自己调试功能,不断地把错误日志再给到它,现如今都是直接把需求写好,基本上一次性搞定,甚至都不需要二次确认和修改。

当我再次让Cursor帮我写Flutter业务代码的时候,我直接把飞书中的需求文档给它,它一把梭出来的设计和实现已经远比我这般平庸之辈写出来的胶水代码高级了不止一个段位。我曾在某个夜里,与组内同时分享了我的感受,「这货现在写的代码比我强太多了,设计模式用得比我强,比国荣哥哥都强,此前我一直认为国荣哥哥代码设计得好,现在有了AI,我觉得我也可以跟国荣哥哥一样了」(国荣哥哥,是我们组内曾经的一位前端伙伴,代码写得漂亮,设计模式应用得很好👍,如今他应该是在字节发光发热了)。

每个季度的数据复盘,还有接下来要做的年度复盘,大量的数据清洗和数据分析的工作,现在都可以给到这些Agent们来负责。我需要做的是,把数据说明整理好,准确表达自己的分析需求,然后不断地跟Agent输出的数据结果做一次次地互动讨论,最后逼近自己想要问出的问题的答案。在毫无分析思路和头绪的时候,甚至都可以直接先跟AI聊聊自己的业务场景,需要关注的数据板块,目前遇到了什么问题,想要找到什么突破点,然后它也会给出一些方向供我们参考。

拿到了一些数据和分析结果后,再利用NotebookLM或者Nano Banana这样的工具,直接生成PPT都是完全可行的,哪怕最终我们没有用AI生成的PPT,它能给我们提供的思路的拓展和样式的启发,已是千值万值了。

最后,说到这些AI工具的使用门槛和成本,我一直有一个观点,今天也再次记录和分享一下,「学会工具的使用,是我们之所以为人的根本。我们想要比别人干得更好,那么掌握先进生产力,是一种必要的学习和投入。」

掌握如何科学上网,雇佣几个每月20美金的助理,依托工具的杠杆放大我们自身的能量和产出,虽然不一定会马上让我们升职加薪,但是随着时间的推移,人与人之间手上功夫的差距,就慢慢地显现出来了。

顺义少年宫5楼北边的走廊暖气实在不足,坐在走廊上的长椅上,捧着手机敲字的双手已经冻得麻木了,我得暖暖手去了。

阳历年的年度回顾就到这里了,祝大家新年快乐,来年能更有收获。


原文链接: 微信公众号

要跟2025告别了

要跟2025告别了,这会儿的我,正坐在床上,抱着电脑,敲下这些文字。

昨天是我跟老婆结婚的12周年纪念日,12年前的昨天,我跟老婆在去往南昌办事的顺道在民政局把结婚证领了(那会儿老婆的户口还在南昌市人才中心,我的户口在杭州,需要选择俩人任一户口所在地的民政局办理结婚手续)。今天老婆下午临时买了去南昌的票,时隔12年,再次去南昌办事了。

下班后回到家,老妈和孩子们已经睡了,轻手轻脚洗漱完,回到自己屋里,轻声关上房门,坐上床抱着电脑,原本想着继续敲敲代码,临时起意,写点东西吧。

这两日,Manus被Meta以数十亿美金收购,智谱和MiniMax在港股陆续挂牌上市开启申购,中国AI行业看上去正有声有色地往前跑着。关于Manus被收购、智谱和MiniMax上市,离我都很遥远,Manus的产品我没有体验过,他们此前的Monica这款浏览器插件我简单试用过一段时间,谈不上多了解。智谱和MiniMax的服务也只是简单付费使用,谈不上多么了解,对于AI行业更是知之甚少,发表不了什么看法,只是真心的为这三家公司高兴,起码阶段性有了一个不错的结果,值得开心。

回归到AI这个话题上,今年我们看到很多关于AI导致大公司裁员和锁定HC的新闻,前有美国电商巨头亚马逊,后有美国零售大鳄塔吉特,纷纷在自己的裁员公告中声称其裁员是因为大量应用AI后,不再需要这么多的初级工作岗位了。此中真假不好说,反正现在借着AI说事儿的公司也不止这一家两家的。

今天是个跨年日,打开手机随手刷,各种跨年的直播和年终回顾总是脱不开AI,罗振宇在得到做的第11年跨年演讲,罗永浩昨天的科技春晚,各大自媒体账号的跨年直播和年终总结,无一例外,均跟AI有所勾连。AI真的好热闹,AI真的好繁荣。我也每天都在用它帮我写代码,做分析,查数据搞翻译,等等等等。

2024年的我,与AI工具初步相识,了解一二,浅尝辄止,知其强大,不知如何应用。

2025年的我,借助AI开始帮忙解决具体工作的问题,编码居多,分析和调研其次,解决复杂问题还尚待探索。

2026,希望真的能深入了解并持续探索AI的能力,对于上下文(Context)的工程化应用,应是这一年里要重点学习和实践的方向。仅仅停留在用用工具,看看新闻这个层面,恐怕还是只能隔靴搔痒,春江水温可能都不知了。

今天的朋友圈,年终总结和新年祝福次第展开,有积极运动健身的汇报,有走遍全球的游览足迹回放,更多的是对于新年美好的祝愿。此时坐在床上的我,听着楼下马路上偶尔经过的车辆的声音,想着这一年平平安安地过来了,真好。

祝愿大家新的一年里,继续平平安安。

认真做好一件小事,其实很难

上周跟两位前同事一起去吃了一顿好吃的川菜,这个川菜馆子藏在望京的一个民宅小区里,大概十张桌子的小门脸,生意蛮好,味道很好。这两位前同事跟我在公司共事时交集并不多,算是点头之交,偶有交集,但是我们是朋友圈的神交好友,因为我们有着太多共同热爱的歌手,逼哥,裤子,赵雷等等,平时的互动也主要是在各自分享的音乐和演出现场的po文下互相点赞和评论,鲜有私聊。

那天饭中,大家聊到了逼哥现在的一些近况,然后谈到了喜欢逼哥的哪一点,我只说了一点「我应该是08年在学校的时候开始了解到逼哥这个人的,当时从VeryCD上下载到了逼哥的一些音乐,然后慢慢的喜欢上了这种简单的音乐,越来越认可和喜欢他的原因是,他会在所有的现场提醒大家把垃圾带着,自己的演出团队会确保自己不给场地方留下任何垃圾,做事最怕认真,逼哥把认真二字做到了他认为的极致,就冲他这一点,我不止喜欢他的音乐,我还喜欢他的做人和做事的风格」。

那么认真做好一件事,很难吗?是的,很难,认真做好一件小事,也很难。

因为逼哥的音乐莫名其妙地遭到了国内各大音乐平台非常默契的不约而同的主动下架,最终导致了苹果的Apple Music大陆地区也是没有他的音乐的,为了能继续简单地听到逼哥的歌,我已经连续买了Spotify好些年的会员,虽然Spotify的版权也不完整,为了能更完整地听逼哥的歌我已经想过很多办法了,包括但不限于买了CD机和黑胶唱机,然后开始买逼哥的CD和黑胶唱片,但是财力有限,确实很难买齐,最近从一个线下的渠道买了一个U盘,上面有卖家搜集的逼哥的基本上全部的音频资源,整理得也还算清楚。

但是就是一位微信昵称叫「西班牙馅饼」的私下贩售逼哥周边的资深粉丝(请允许我浅薄地这么认为),在对于这些音乐文件的整理上,也仅仅是做到了尽可能的全和分门别类地放到了文件夹中,也就是每个专辑地歌曲放到了以专辑名称命名的文件目录下,这样是不是就够了呢?显然是不够的,不论是对于我们使用类似于Apple Music这样的客户端音乐播放器,还是直接插入U盘连接到车机的多媒体系统让自己的车载音响播放,那都是一场灾难,不要觉得我在危言耸听,对于真正有需求的人来说,这就是不折不扣的灾难。下面,我会一点点来展开说说这件小事,为什么会这么的让我在意,还要上纲上线。

第一点,我们看电脑或手机上的客户端音乐播放器对于这些音乐文件的识别结果便知道,能良好识别的歌曲大概占比70%,剩下30%是无法正确识别歌曲所属专辑以及歌曲在专辑中的音轨顺序的,还有很多就没有专辑封面的,这就跟我们现在日常在网易云音乐、QQ音乐等音乐流媒体平台听歌的体验差距非常大,为了能让Apple Music播放本地音频专辑时也能完美展示【歌名】-【专辑名】-【歌手名】-【封面图】这四个非常基础的要素,我们就需要通过搜索外部信息来找到每个专辑的封面图保存下来然后批量设置为专辑歌曲的封面图(这个很多人可能都不知道该怎么做,Apple Music可以比较方便的完成,也可以搜索mp3 id3 tag editor相关软件来完成相应的编辑操作),然后需要确保歌曲名称和歌曲在专辑中的序号,如果追求完美主义的话,那么专辑发布的年份、专辑的风格等等,还有一长串可以完善的资料呢。在我不懈的努力下(前前后后,花了三天时间,每天下班后,在公司人工搜索编辑补全,耗时起码8个小时以上),终于把所有专辑图补全了,所有歌曲的序号也修改好了,所有专辑的发行年份和风格也补全了。

第二点,Apple Music毕竟是一个设计良好且遵循很多通用规范的产品,并且就在自己日常使用的电脑上,有什么问题也很容易发现并且能及时快速调整,当我把在Apple Music中已经能够完美展示、组织和播放的歌曲文件拷贝回当时我买的那个U盘,拿回家插到车上的USB接口上,打开比亚迪的媒体播放器时,我瞬间就感觉天塌了。这货首先不支持按专辑分类展示和播放,所有歌曲是按照名字排序,可以想象5首不同版本的《这个世界会好吗》和4首不同版本的《天空之城》显示在这个列表中的时候,我都是整个人都是疯的。只能告诉自己,研究一下这个播放器的实现逻辑,回头按照它的逻辑,调整自己的音频文件的数据。就这么为了能适配这比亚迪车机上设计极简的外载音频播放器,我最终又把U盘内的所有音频文件的歌曲名称改成了专辑名称-歌曲专辑序号-歌曲名称,来实现最终的可以按照专辑和歌曲序号依次播放,但是就即便是这样,你猜怎么着,这么一来一首歌的文件名就变成了类似「在每一条伤心的应天大街上-01-你好明天.mp3」这样的歌名了,而我们这个比亚迪的播放器呢,连歌名超长后滚动播放歌名的优化都未实现,且它做了一个双列展示歌曲列表的设计,导致歌名能展示的字数就更少了,所以最终我现在打开这个U盘音乐播放的时候,通常看到的就是「在每一条伤心的…」和一连串的「在每一条伤心的…」,每张专辑都是如此,可是我又能怎么办呢?也许只能换台车了😂


这篇文章的标题是《认真做好一件小事,其实很难》,这篇文章最早写下开头部分的时候,是2024年12月底,最终文章一直搁置在公众号的草稿箱里没有发出去,直到今天把另一篇写了一半的文章删了后,看到这篇躺了近一年的文章,想着把后边的内容给续上。所以写一篇文章这件小事,也颇为不易,每周写一篇文章这件小事,也并不那么容易达成(不一定每周都有表达的欲望,不一定每周都有好的选题,这就是专业的人与业余的人之间巨大的鸿沟,专业的人保证出活不需要灵感,也不会因为没有灵感就不出活)。

一位靠着卖音频文件赚钱的人,最终交付的内容尚且只能做到一个60分上下,即便我耗时超过10个小时,来回折腾了差不多一个礼拜,目前在我车上插着的U盘播放的歌曲,也只能实现分专辑按需播放而已,完全无法准确和快速的查找和索引这些歌曲。就这么一件小事儿,想要做好,除了要有充分的背景知识和足够的耐心和时间精力的投入,还需要一些外部条件的支持(比如车机播放器的设计优良)。这个时候,我们能做的其实也就只剩下接受现状,保持平静了,毕竟它只是一件「小事儿」嘛。