Ajax Zhan's Blog

Welcome!This is Ajaxzhan.
坚信:品味优先于执行,价值驱动下创造、系统工程保安全
持续跟进AI前沿研究,持续思考技术、产品与思维。

解一个问题,然后在解这个问题的过程中学习和探索,不断获得环境反馈和奖励信号,然后调整自己的策略,更新自己的“激活知识”,整个过程是一个探险的过程。不管解不解得出来,整个过程都更新了“激活参数”,锻炼了肌肉,将主体往正向状态拉。

一种错误的思维方式是:想要一次性解决一个问题,想要直接追求结果奖励,企图通过现有的知识将整个问题给覆盖住。整个过程尽管会不断的试错,但都是无用功,只会不断的探索错误路径,单纯做 sampling 而不做learning,逐渐陷入死循环,感到绝望。

最近越来越发现心态的重要性。要把自己从第二种错误思维方式纠正过来。

Kimi K2.6使用下来太失望了,今天一直并行开发/修复三个小项目,没有一个能正常做好。

第一个是卡在Dockerfile不会修,重复迭代给反馈了4-5次都没解决,CodeX一下子就解决了。

第二个是让他写一个Obsidian同步插件,也是疯狂出问题,给截图给反馈就是修复不好,真的是把我蠢到了,估计还不如DeepSeek-V4,本来是看着他有多模态才买的套餐,失望了。

第三个让美化一下UI,跑了2个多小时,美化的点我基本看不出来。

总结:Kimi K2.6比较拉,远不如CodeX,但是Token卖的并不便宜。。。

Kimi Code不如CodeX好用,今晚一个Dockerfile的问题解决了好几轮都没好,一般来说CodeX这种问题交互个2-3轮就好了。可见Agent好不好用还有一个关键问题——能否分析日志后fix bug以及在多轮迭代中找出真正bug的能力,而不是仅仅是搭建一些前后端代码的事情。Kimi在这方面显然不如CodeX,出现问题的次数和频率比较高。

1、Context浪费与Harness的重要性:(1)OpenClaw带来的问题:Context管理一塌糊涂,Token浪费十分严重。Claude Code则通过大量的工程优化提升了Token利用率。(2)外部工具的可靠性决定Agent是否经常试错,决定了Context利用效率。

2、Agent互联网的特点:(1)工具调用是高频、短请求、高并发的特点。(2)Agent上网不一定有合适的“CDN”,导致资源的不可缓存与浪费(3)缺乏针对Agent的身份鉴权机制。相关创业思考:(1)时间窗口很短,估计5-10年成型。(2)市场规模很大,Agent带来的算力消耗是巨大的。

酒神时代诚不我欺,Claude code源码泄漏,今天一堆公众号在讨论和分析,算是今年的一个必学项目了,在我看来这比龙虾关键多了,现在还有多少人讨论龙虾?好可怕的迭代速度。

这是AI时代,也是一个酒神时代——新技术、新产品、新SOTA层出不穷,从传统大厂到创业公司到OPC到每个个体——每个人都在拼了命想赶上这波浪潮。

神奇的是,在感性和理性的拉扯中,我的理性在这一个月里面变得淡了许多,几乎没有占据过主导地位,感性倒是久不散去,给我带来了许多欢乐和痛苦。

只需要将VPN改成虚拟网卡模式,再打开Cursor的HTTP2.0模式就不会有模型被拦截的问题了,很神奇。解决了HTTP1.1网络环境太差的问题。

最近开始意识到一种很重要的能力——幽默,当然这种幽默不仅仅是对别人,更多是对自己的一种幽默。如果一个人都无法进行自嘲和对生活中的事情进行解构,那么这个人绝对会获得特别痛苦和憋屈,更不用说会产生什么有价值的思考了。所以保持一种对自己冷幽默的态度还是很重要。

兼具深度与启发性的分析,能有效帮助培养更敏锐的Research Taste:关于大海捞针是一个很好的评估长上下文的指标——https://www.zhihu.com/question/654570878/answer/1965228622118888157

分享:斯多葛哲学的控制三分法

面对保研内卷加剧的焦虑,作者从斯多葛主义中寻求安宁、自由与镇定的个人哲学。斯多葛主张:安宁即入世与独处时内心平静;自由是独立思考与无约束时的自主;镇定需大事从容、顺遂时自律。核心“控制三分法”强调:专注完全可控之事(如内在目标与行动过程,而非结果),放弃完全不可控之事(避免杞人忧天),区分部分可控之事(关注过程而非结果)。此非逃避,而是积极行动中保持内心安定,为内耗者提供在纷扰中锚定自我的路径。

动手学设计模式:七种OOP设计原则是哪些?

本文为《动手学设计模式》系列开篇,旨在系统梳理设计模式知识。设计模式是特定环境下解决重复问题的成功方案,广义为被反复使用的代码设计经验总结,分创建型、结构型、行为型三类,可提升开发效率、方便沟通并增强代码复用性与可扩展性。学习需结合UML(统一建模语言)理解类图及类间关系(关联、依赖、泛化、接口实现等),并遵循七大面向对象设计原则:单一职责(类职责单一)、开闭(对扩展开放、对修改关闭)、里氏代换(子类可替换父类)、依赖倒转(依赖抽象而非细节)、接口隔离(定制化接口)、合成复用(优先组合继承)、迪米特法则(降低对象间耦合)。专栏将结合案例与代码实现,帮助读者掌握设计模式的核心与应用。

南京札记:初见金陵

8月中旬,借参加中国软件杯决赛之机,作者初游南京。因未进第一轮答辩,多出一天游玩时间,与队友打卡钟山风景区等经典景点。南京景点密集需预约,旅游旺季人潮汹涌,加之天气炎热,行程受限。梧桐大道意境美但人多,美龄宫因体验一般未细看,中山陵高处空旷感令人喜爱,孙中山纪念馆让作者对历史与伟人有更清晰认识,明孝陵建筑肃穆、石像路有趣,夫子庙因人山人海仅简单游览。饮食上,当地口味偏淡,鸭血粉丝颇受好评。作者感谢主办方、队友及老师,期待与南京再相见。

星优灵犀项目介绍 | 中软杯国二 | 数智化教育应用平台

星优灵犀-基于讯飞AI的智适应学习平台’针对高等教育课前、课时、课后知识孤岛、评估低效等痛点,以人机共创与社群化学习融合为目标。项目采用前后端分离与微服务架构,深度整合讯飞星火大模型、语音合成等AI能力,构建“三大核心赋能+十大功能”体系:课前提供智能预习、备课及知识图谱;课时支持课堂回放、语句级社群智答;课后实现五维学情评估、闯关式复习及RAG资料问答。通过AI技术全流程渗透,助力高等教育数字化转型,让学习更智能、便捷、高效。

可解释性文档问答系统后端GPU服务器部署文档

本文档为Linux+GPU服务器上的文档问答系统部署手册,作者结合自身踩坑经验编写,旨在帮助后续开发者顺利部署。核心步骤包括:修改`chatdoc/config.py`中的数据库与API配置;安装Anaconda并创建Python 3.10虚拟环境;配置清华源后安装requirements.txt依赖;根据CUDA版本安装Pytorch、Paddlepaddle及zh_core_web_sm模型;使用tmux管理会话确保服务持续运行;通过`export CUDA_VISIBLE_DEVICES`指定GPU卡号。手册还详细解决了星火Embedding源码修改(解决QPS限制和API版本问题)、Paddle报错处理(如libcudnn_ops_infer.so缺失)等常见部署问题,强调需注意环境变量配置与依赖版本匹配。

Go语言修炼(十三):Go语言是如何抽象Epoll的?

Go语言通过netpoll机制巧妙封装Linux Epoll,实现高性能网络编程。文章对比了BIO、NIO和Epoll的优缺点,指出Go结合了BIO的简洁性和Epoll的高效性:底层使用OS多路复用IO,协程层采用阻塞模型,将阻塞线程转为休眠协程。Go通过抽象层屏蔽不同系统差异(Linux的epoll、Mac的kqueue、Windows的IOCP),利用pollDesc等数据结构管理Socket状态,runtime自动监控Socket状态并调度协程休眠/唤醒,让开发者无需直接操作复杂系统调用即可享受高性能网络编程。

Go语言修炼(十二):高并发下的通信方式Channel

本文深入解析了Go语言Channel的核心概念与实现原理。Channel作为Go协程间的通信桥梁,通过"通信共享内存"的设计理念有效避免数据竞争,提升并发安全性。文章详细介绍了Channel的声明语法、基本操作及常见错误,并剖析其底层数据结构(环形缓冲区、等待队列、互斥锁等)。重点讲解了发送与接收数据的四种场景:直接传输、缓存操作、休眠等待及非阻塞模式(select、timer),揭示了Channel高效实现并发控制的内在机制,为开发者提供了清晰的并发编程实践指导。

Go语言修炼(十一):Go语言的读写锁是怎么工作的?

Go语言读写锁(`sync.RWMutex`)通过分离读锁(共享)与写锁(互斥),优化了并发场景下的性能:无写锁时允许多读并发,有写锁时阻塞所有读写,有读锁时阻塞写锁。其核心数据结构包含互斥锁`w`、读写信号量`writerSem`/`readerSem`、读计数`readerCount`及等待读计数`readerWait`,通过状态转换实现锁的获取与释放。合理使用可显著提升读多写少场景的并发效率,但写入频繁时可能退化至互斥锁,需根据实际场景选择同步机制。

Go语言修炼(十):Go语言的互斥锁是怎么工作的?

Go语言互斥锁`sync.Mutex`通过`state`(记录锁状态、唤醒标志、饥饿模式)和`sema`(休眠队列)实现并发控制。正常模式下,协程优先通过CAS尝试加锁,失败后自旋多次仍失败则入队休眠;解锁时直接释放或唤醒队列中协程。当协程等待超1ms进入饥饿模式,新协程直接入队,被唤醒协程优先获取锁,确保公平性。使用时需注意减少锁粒度、缩短持有时间,并用`defer`确保释放,避免性能瓶颈与死锁。

Go语言修炼(九):Atomic操作与sema锁

Go并发编程中,Atomic操作与sema锁是保障数据一致性的核心技术。Atomic操作通过硬件级锁(如LOCK指令)确保变量读写不可分割,解决全局变量自增等非原子性问题,提供增减、CAS等API;sema锁以uint32值控制并发数,>0时通过CAS获取/atomic释放,=0时退化协程休眠队列(AVL树管理),实现灵活并发控制。二者是sync.Mutex/RWMutex等高层锁的底层支撑,共同应对并发场景下的资源访问与数据一致挑战。