好久好久好久没写博客了上次写博客已经是一年前的事情了聊聊什么情况吧。所以先说说近况大家好我是awakefantasy去年发完那一篇之后我整个人就处于放假状态中了结果当然是狠狠玩了一个寒假一回来被自己整笑了。怎么又是啥也没干啊。当然你要说什么也没干也不对毕竟会打麻将了同时也把《天津罪》《人狼村之谜》《奥伯拉丁的回归》《重返蓝鲸岛》这些作品的剧情完完整整的过了一遍。这不还是什么都没干吗喂所以说呢3月回来北京看了下校园论坛里面大伙已经争先恐后的开始找实习了也算是有点焦虑吧就开始自己想办法做一些项目了。当然我这人是不喜欢为了找工作而做项目的那种对着别人已经做出来的东西再抄一遍然后写在简历上我实在觉得没用太大的意义也就只能提升自己的技术水平了。我要做的东西一定要有真实需求起码得可能有人用吧。然后说说最近做的东西我很感谢我的室友机缘巧合之下看到他用codex听他做了介绍之后我仿佛踏进了新的世界有了这个利器之后我的想法可以以一个恐怖的速度变成产品很快最初的设想我就开始投身实践了那就是基于视觉识别的日麻助手。很不幸之前对话被我整没了其实能恢复但是因为也不做这个项目了就懒得再去恢复了我没有办法还原这个项目的实践过程。简单说一下这个项目的实践思路牌桌识别包括手牌牌河各家副露识别→麻将引擎决策→实时提供切牌推荐当然我主要考虑的使用场景是雀魂的牌谱中所以截图也基本上由牌谱获取。如下这张图是我标的识别区域。之前从来没做过图像识别的任务愣头青就这样冲进了一个完全未知的领域。由于经验严重不足可以说是每做一步都出了很多毛病。当然也得出了很多经验吧这个就之后再说。首先是数据标注这活我只能说干一次就踏实了再也不想干了我让codex给我写了个标注工具但是依然每局都要标上几十个麻将牌在我标了几百个麻将牌之后我突然意识到了一个问题。那就是我没有考虑这个牌桌是三维的_导致每家的牌都长得不一样比如下图是我标的部分3索。标完之后还是我训练之后才发现的这个问题。查出来给我气笑了。没办法那就把整个牌桌做投影变换重新标注呗。下图是投影变换之后的图当然不是这一局的但是你能看见起码牌没有形变和奇奇怪怪的朝向了所以我又标注了一版如下说实话标注的时候我还不觉得有什么问题标注完一看我惊了丫的怎么一个个要么是竹竿要么是胖子怎么回事呢当时直接拿现象问gpt5.4无果没办法随开始盘查实现逻辑。当然逻辑也是让ai一段段给我忠实翻译的。直到发现。。。我投影变换的比例不对我期望用的是正方形的投影变换ai用的是长方形的投影变换。给我气晕了修改逻辑变正常了再标注一版。标注后的文件不见了拿另一个代替很明显起码牌没有莫名其妙的形变了对不对没有为形变的退场而哀悼下一个赶到战场的是——牌面阴影这正是把我项目压垮的最后一步做到这一步时我已经反反复复的标注了n次牌了注意到这个的时候我晕了过去我克服了立直横牌的处理克服了极为稀缺的红宝牌牌桌的样本却没有克服这个神奇的阴影。你可以注意到这里面有很多牌的牌面和它阴影部分的颜色几乎一模一样。当时我的脑海里面只剩下了毁灭吧世界。我尝试了调整二值图的参数尝试了单独调整颜色总之是没成功。其实并不是不能解决但是实在没动力去做了因为仔细一想也没必要做这个牌张识别此时我发现了已经有自动启动网页端打牌的项目了MahjongCopilot我直接投降不做了不做了。下图是做这个项目中产生的各种各样的实验的中间产物。这个项目最后牌河识别精度大概是95%左右但是我觉得实在是不具有太大实用性所以就没做了。一张牌的识别错误会导致一堆问题这一块就放下了。所以说经验和教训呢这个项目给我的教训和经验是很多的下面逐条展开吧。1vibecoding的时候一定要对实现目标实现架构实现方法具有清晰的认识ai不是许愿机不是丢进去一个目标就能出来结果。模糊不清的描述省略过程的描述都可能造成很大的麻烦比如我这里投影变换的问题实现的时候我没有审查实现之后标注完了才注意到牌张比例不对这个时候就已经浪费了很多的时间了。对应的解决方法就是在每个功能实现的时候自己要清楚实现方法目标架构在描述清楚的情况下让ai作业避免“帮我实现一个xxx功能”这种描述在自己清楚实现细节的情况下尽可能描述细节不清楚细节的情况下多与ai讨论实现思路和策略对自己这一轮做出来的东西有清楚的认识。比如我“我想实现一个xxx功能你有什么计划吗”GPT“架构如下。。。。”我“架构中xxx功能具体怎么实现”GPT“。。。。”我“明白了那xxx功能的这个实现中可能会出现怎么样的问题”GPT“。。。。”多次讨论清楚细节之后再放权让它根据前面讨论的内容实现实现之后立马测试。总之就是你自己要清楚你的这个项目是怎么实现的全部放权给ai只会越做越乱。2在自己新做一个项目的时候要避免闷头就开始做在开始落实到第一行代码之前要去看看相似功能的产品是怎么做的他们是怎么实现的。比如我这个麻将项目在别人已经有做好的项目的情况下再去重复造轮子浪费时间。那怎么做呢在一个点子出现的同时把问题交给ai让它查查有没有什么相似的实现以及可能有关联的项目现在的主流ai的网络搜索能力都很强了很快就能把网上的相关信息都看一遍再总结给你我们再点进去看一下别人怎么做的就好了。3时刻关注技术的进步时刻更新自己的工作流时刻优化自己工作的方式这个没什么好说的多看看别人怎么用ai就行。后记这应该是近况一我应该还会写几篇近况毕竟可不止做了这一个东西。真要说技术提升了多少那我还真不知道但你要说技术没提升那也只能说不可能。啊对的对的啊不对不对既视感总之祝读到这的你们天天开心我继续vibecoding去了。本文配图使用 Avilia Blog Illustrations 流程生成。