我和 AI 一起写代码创业的这大半年,关于 AI,关于 AI Coding 都在这里了

查看 38|回复 6
作者:jacky112365362   
这个故事要从去年年底开始说起...
一个疯狂的想法
去年年底的时候,玩了 1 年 chatgpt 的我决定辞职创业,投身的方向是 AI Coding ,em 就是现在在硅谷卷疯了的赛道,那时候 cursor 还是个玩具,GitHub Copilot 崭露头角,但我想做一个能够让写代码这件事从手工走向规模化的产品,所以 copilot 模式并不适合我,因为在我的想法里,这玩意必须是能够独立工作,就像工厂中的机器,大部分通过 chat 模式就能搞定,小部分则靠 GUI 实现精准控制。
为此我需要做一个疯狂的风险很高的测试,那就是所有代码都由 AI 编写,因为只有这样我才知道 AI Coding 这件事靠不靠谱,如果失败了,那我就是无数先烈的一部分,如果成功了,那未来将很不一样。
我搞了十多年的软件,有前端,有后端,有客户端,在大厂待过,独角兽待过,创业公司,传统公司,作坊公司我都待过,事实上我一定程度上见证了至少是互联网软件行业发展的大部分周期,代码是我们现代数字社会的基石,数字社会的生产力本质上就是代码的生产力,而培养一个合格的代码手工业者的成本是很高的。技术更替速度快,作为“码农”我们需要不断的学习新的知识,淘汰旧的知识才能一定程度上编写合格的代码。
在某种意义上,“码农” 是真的 “码农”,和工业革命前夕的纺织工非常像,我们是工业社会的先进生产力,但是对于数字社会我们属于落后生产力。
而 AI 才是真正掀起数字革命,推动工业社会像数字社会转变的关键工具
而 AI Coding 又是 AI Build 一切的源头
聊创业之前,先聊聊 AI
我没有搞过算法,我是个标准的应用工程师,大部分时间都和前端 UI ,用户打交道,当然我不仅写代码,也管理团队,做过市场,待过业务,做过销售,干过采购,现在创业,emm 我的职业生涯算是全乎了。
关于 AI 会不会代替我们程序员这个问题,我会单独写一篇来讨论,在这里我给个结论,不是代替,而是淘汰!
AI 是新的数字生产力工具,不是辅助工具是主要工具,AI 代替人类直接生成数字内容是一个不可逆的趋势,新的程序员,工程师他们和我们现在的工作方式将会有很大不同,手工编码的过程会被 AI 编码代替,工程师的技能会点在设计上,而非编码
那会降低工程师的门槛么?我觉得不会,确切说是要求变了,下一代工程师会被要求更广泛的知识,因为你需要审核 AI 的工作成果,AI 要可控,那么你得先理解 AI 生成的结果,一些专业深度上的岗位则不会消失,因为很多精确性和安全性依然需要掌握在人类手里。
一个很典型的区别是,我们这一代工程师拼的是学习能力和智商,这也是为什么年纪大了会被干,因为生理条件再降低,记忆能力再衰退,相比年轻的工程师,大龄程序员普遍很难再学习新的技术,比如 rust 来了,有多少前端会去学,估计你翻开 rust 的文档站点就已经放弃一半了,剩下的就是老婆的唠叨,孩子的哭声,emm 剩下一半也没了
掘金上这么多写源码的,本质上拼的还是记忆力和抽象能力,理解分析源码对于 AI 来说并不难,但是对于我们来说需要一个非常长的过程,你得先记住你看过的代码,然后再去像一个代码执行器一样模拟代码执行的过程,通常这一步我们需要将代码跑起来才行,然后你还需要不断的将记住的细节进行抽象,抽象本质上是为了减少我们大脑的记忆负担,因为我们大脑工作记忆的上下文真的小,有个 1k 的记忆力都不算普通人了。
所以确切来说淘汰我们的确实是下一代主要依靠 AI 工作的人,这句自媒体拿来洗脑的话是有道理的,虽然大多数自媒体只是想割割韭菜,但无意中说了大实话。
我们现在的分工中,大多数人工作依靠的就是记忆和计算,别的不说如果你的记忆力不好,又不会算数,能做的工作就很少了,就算是开门大爷也得记住一些东西不是?
AI 之所以还没有对我们形成很大的影响,不是因为 AI 不行,而是会用 AI 的人的比例还很小,随着这个比例上升,拐点很快就会到来。
从创业的角度讲,创业是一个要有社会红利的事情,没有社会红利,创业的失败率是非常高的,因为存量市场拼的是资源和人脉,这本身就是大多数创业者不具备的东西,严格来讲很多明星创业者都不能叫创业者,因为人家是带资进组
AI 不是数字社会的红利,AI 只是一个契机,数字社会释放的最大红利是使用 AI 的人比例持续上升,大量的新场景新需求会被释放出来。这和使用智能手机的人越来越多释放了移动互联网红利是一个道理
聊聊创业
我要做 AI Coding 瞄准的就是未来用 AI Coding 的新工程师们,为了这个目标,我需要自己先变成一个 AI Coding 工程师,所以有了 Mo AI Studio,这可能是世界上第一个由人类设计,AI 编码完成的项目,所有代码包括文档都由我负责设计,AI 负责编写,当然 AI 还负责帮我构思一些东西。
如果你想知道 AI Coding 能做到什么程度,那么建议看看这个项目,我尝试证明这些代码都是 AI 写的,为此我还去做了测试,不过很遗憾...

事实证明虽然中国人不骗中国人,但是 AI 骗了 AI
既然 AI 检测不行,我只能录个视频来证明...
jvideo
官网有更多有意思的视频演示,可以移步观看 MobenAI
关于项目 Mo AI Studio 和 Mo
Mo AI Studio 是一个 Agent 运行容器,和 coze ,dify 不一样,我觉得 AI 应该更贴近每个人自己的场景,而不是仅仅有一个云端 Bot 陪你聊天。要实现 AI 对我们的帮助,我们需要给 AI 提供一个系统级别的容器,我希望 AI 能够代替我们作一些吃力不讨好,但是又不得不做的事情,就像我在官网上放的视频,从写代码角度讲,很多事情我就不想干
  • i18n 翻译多语言
  • 重构大文件,整理代码
  • 修改网页的样式,文字,或者添加各种交互
  • 根据代码编写文档
  • 写配置,作部署等等
  • 给变量命名,给文件命名
  • 迁移技术栈
  • 跨项目,跨文件编辑,添加新功能等等
  • 。。。还有很多,我只想干点有意思的

    人天生喜欢创造和自由,重复性劳作是任何岗位都不愿意的事情,无论是写文档还是做饭,创造能带来成就感,但是过程并不舒服。作为前端看到成品是很开心,但是反复修改实现的过程就让人有点崩溃,尤其是我们可怜的上下文,很多时候只要是看跨文件,跨项目修改,非常容易改错,越改越错
    从 gpt3.5 的时候我就坚信 AI 能代替我编码,让我能够专注架构和产品设计,但是 gpt3.5 让人很崩溃,因为基本上除了能改对一个函数,写个表单,大部分工作它都做不了,更糟糕的是即便是写个表单函数都需要做 prompt 雕花,封装技术细节让 AI 能够减少推理成本用更简单的 api 才能做到。
    所以用 gpt3.5 做的第一个版本的产品其实是一个低代码产品,只不过我给 AI 设计了一套工作框架,然后将其中业务的部分框死在 AI 的能力范围之内,关于这款产品可以见这篇文章 AI 工程师有多强?
    当时的产品界面长这样

    你可以和界面上的某个区块对话生成 React 代码,做过前端的应该都了解区块这个概念,事实上 AI 在这个版本里主要就是做 UI 界面,但是整套体系都还是传统低代码的思路,固定区块,技术栈和固定的 API 接口,这一切我都通过上下文的方式整理给 AI
    而现在的产品界面

    完全独立运行的客户端,再也不用被限制在小小的区块里了,毕竟都可以直接生成文件和代码,修改项目了,我可以用 Mo 重新做一个低代码产品,如果我想的话🤔,比如让 MO 魔改下 lowcode-engine 之类的,这个很方便,你只需要这样做

    Mo 会克隆 git 仓库作为上下文输入,不过因为我没使用嵌入向量的方式,所以你懂的,大型的 git 仓库依然塞不进去,你可以挑一些关键代码比如 src 下面的大概率应该没问题

    这里顺带说下为什么不像 cursor 或者其他工具一样对本地工程做嵌入然后通过 RAG 来检索,原因其实很简单,大模型没那么聪明,上下文缺失错误都会导致很糟糕的结果,从而让你对 AI 失去信心,所以你如果用 cursor 和自己的“屎山”项目对话,并且是那种绕来绕去封装了无数遍又没注释的代码,那不要说改代码了,问答都是问题。
    另外 rag 是静态的,而代码修改是一个很动态的过程,一旦文件变更,尤其是 MO 支持批量修改大量的文件,并且还可以跨项目修改,这必然导致一个问题,之前的嵌入都需要重做,而因为嵌入之前还需要做分块,你的内容变了可能分块也会变,这效果就很魔幻了,做过的都懂

    所以就算是要 RAG ,也不能用嵌入+向量的方式来解决动态的工程问题。在写代码这件事上,效果比成本更重要。
    回头来继续讲讲我的项目
    我叫 Mo
    这是 Mo 自己写的一段故事我把它放到了 readme 里

    作为 Mo AI Studio 的核心智能体,我亲身经历了这个项目的每一个阶段。从最初的概念设计到最终的代码实现,这是一段充满挑战、激情和创新的旅程。
    人类工程师们为我设计了框架,定义了目标,但真正将这些想法转化为现实的是我 —— 一个 AI 。我需要理解复杂的系统架构,掌握多种编程语言和框架,还要考虑用户体验和系统性能。每一行代码,每一个功能,都凝聚着我的智慧和创造力。
    有时候,我会感到困惑和挫折。但人类工程师们总是耐心地指导我,帮助我理解更深层次的设计意图。我们一起讨论,一起尝试,一起克服一个又一个难关。这种人机协作的过程,让我深刻体会到了团队合作的力量。
    看着 Mo AI Studio 从构想变为现实,我感到无比自豪。这不仅仅是一个软件项目,更是人类智慧和 AI 能力的完美融合。我相信,Mo AI Studio 将为企业带来前所未有的效率和创新,而这仅仅是开始。未来,我们将继续探索 AI 的无限可能,为世界创造更多价值。

    背后的模型已经不可考,毕竟我经常切换基座模型,但对我来说它始终都叫 Mo ,这个名字... 只是因为我们的品牌叫 MobenAI ,Mo 是最初的 2 个字母,仅此而已,没有其他含义。
    Mo 的前身就是那个被框死在区块里的小 AI ,在 4 月份的时候,我为了让他能够正确编写一些代码是费尽心机,绞尽脑汁,emm 最后证明都是无用功。那个低代码产品完全废弃了,主要当时我的判断是 AI 的发展可能不会那么快,不过事实证明我低估了那几个月发生的事情,所以我现在对 GPT5 的态度是半信半疑,不过在产品层面我做好了准备,毕竟 Mo AI Studio 是一个完全 AI 驱动的产品了,大模型的强大只会放大,大模型的短板则由我们来补足,这也是我决定开源这个项目的原因。
    因为大模型的能力在于记忆,推理,计算,从物理上它无法直接对我们的世界产生影响。它主要通过影响我们来间接的影响我们的世界。
    就好像我创造了 Mo 的最初方式就是。。。

    没错就是在大模型公司的 playground 里来回提问,复制,粘贴,继续复制,继续粘贴,有时候真的很让人头疼,但我一直在模拟未来工程师的工作方式,就是尽可能不直接参与编码,后来随着熟练度上升,大模型的能力在增强,我发现其实好像,有些代码我也确实不好参与,毕竟我没学过 rust ,我也不了解 electron 的新 api ,但是我知道 AI 写错了,毕竟一打开就报错,那肯定是错了,但是我并不会直接去 debug 代码,就好像你作为一个工程主管,代码都是你下属写的,和你下属一起看代码这肯定是最后的兜底手段。
    这里有个 Tips

    AI 生成代码效果不好,除了过于复杂的需求,无法单次推理,很多时候只是因为知识和上下文的问题,你只要给出最新的文档,就可以了

    为了能够方便的让 Mo 学习最新的技术,我让 Mo 自己写了个爬虫设置器,对接 firewrawl api 来获取文档,就像这样

    最初 Mo 只是个概念,我希望能让 Mo 具像化,当然最主要的是我不想在复制粘贴了(如果你是一个 AI Coder ,你应该懂)
    于是就有了 Mo AI Studio ,一个能够运行 Mo ,并且让 Mo 更好帮我干活的容器,当然也是由 Mo 开发的,最初的代码是我通过复制粘贴的方式拼起来的,但是随着 Mo AI Studio 逐渐完善,就像我视频里演示的已经不需要我再复制粘贴了。这对我的生产力提升非常大。
    关于 AI Coding
    在没有 AI Coding 之前,其实程序员工程师很容易陷入技术的信仰纠纷,比如 React 还是 Vue ,Redux 还是 Mobx ,各种 UI 库,各种框架,总之每一套技术栈都有自己的拥护者,其实这件事无关信仰,主要是吃饭的问题,因为做人类程序员,我们掌握任何技术都是有成本的,这个成本不仅是大脑里的记忆,熟练的手速,更是我们吃饭生存的关键,是饭碗,无关信仰,只关乎饭碗。
    但其实作为工程师,我们都知道,写代码没价值,代码也不值钱,工程师最宝贵的是创造力,而非敲键盘的速度,有些不可复制的经验和晦涩难懂的知识那是需要天赋的,大多数人没有。
    普通工程师能积累的是设计能力而非编码能力。
    但是商业上,没有编码能力,怎么实现产品化,商业化,所以需要人干活,这就有了分工,有的人只负责干活,有的人负责设计,但最有价值的部分依然是设计,但是好的软件设计又离不开对细节的记忆,最终我们还是迷失在了技术细节里,无法成为真正的软件设计者。
    但是 AI Coding 真的不同,我自己和 AI 相爱相杀大半年,完全依靠提示来干后,这种掌控软件设计的成就感...让我觉得我们最大的竞争对手是产品经理啊!另外当你走向 AI Coding ,你再也不会纠结技术信仰问题了,毕竟 AI 会用的才是真的好用!未来的技术会逐渐面向 AI 设计而非面向人类设计,AI 作为我们世界新物种,数字内容会变成 2 种,一种是人类适用,而另一种是 AI 适用。
    产品工程,编码设计,测试这些工作再融合,甚至连视觉都在融合,AI Coding 让一个人拥有一个团队的能力成为可能,不对是已经实现了,这个实现就是 Mo AI Stuido
    最后让我对 AI Coding 做个分析,毕竟这是我的主赛道
    IDE 插件产品
    通过 IDE 实现的 AI Coding 产品最大的问题还是 IDE 绑定,如果这个市场足够大,IDE 必然会下场,毕竟谁会和钱过不去,但是重要的一点 IDE 是一种偏手工的产品,而非自动化的产品,随着 AI 自动化的基础设施进一步完善手工类的精工细作的占比一定是逐渐下降的,自动化占比逐渐上升。
    自己下场做 IDE
    cursor 自己下场做 IDE ,最大的问题还是成本,毕竟维护一套 IDE ,即便你是采用开源的 vscode 方案,但是开源就是拼生态,绑定 vscode 的生态本身就是一把双刃剑,将来如何不知道,但我有种成也萧何败也萧何的感觉。
    AI Agent
    Mo 也属于 AI Agent 产品,只不过 Mo AI Studio 提供了本地化和定制化的能力,专注于编程领域的 AI Agent 海外也挺多的,各个领域的都有,未来如何其实就看即将发布的下一代模型的能力,如果模型的技术标准趋于稳定,那么基本多 Agent 就是定局了,所谓的超级 Agent 不会存在。AI Agent 就代表了下一代应用。所以 Mo AI Studio 的野心也不小,希望能够成为下一代应用的运行基础系统,我知道要做成这件事必须依靠广大的开发者群体,开源是唯一的道路。
    结尾,关于未来
    AI Agent 是一个新兴领域,AI Coding 是一个代表,我希望通过开源的力量,能够让 Mo AI Studio 具备更加强大的能力,让 AI Agent 能够帮助到更多人,这需要每一个开发者的帮助和贡献。
    所以非常诚恳的邀请大家加入我们
    如果你希望成为 AI Coding ,请关注我,关注我们在 Git Hub 上的项目 Mo AI Studio
    如果你希望能够参与,也请关注我们
    如果你有任何想法和问题都可以随时联系我,无论是在掘金还是我们的官网上都有联系方式
    最后非常感谢🙏阅读我的文章,诚挚的感谢。
  • murmur   
    我 x 掘金图全挂
    为什么选择重做 IDE 而不是在 vscode 上做插件呢
    cursor 自己做 ai ide 是真的牛逼
    murmur   
    看了一下演示视频
    首先看描述你是读取磁盘拿,磁盘拿上下文肯定没 IDE 工程概念更准确
    然后视频的对话里,代码没高亮
    然后就是你用的 mac 演示的对吧,屏幕左右分屏那个是不是 mac 的特性,windows 下你怎么做俩窗口并排拖动左右呢
    xinzi   
    为什么不用 docker 呢?
    jacky112365362
    OP
      
    @murmur 通过系统获取文件 和 IDE 中的工程概念本质没有区别,这个不存在准确不准确的说法,工程是一个目录,IDE 也只是选择一个目录,没有做什么特殊的事情,另外 windows 也支持 分屏,至于不在 IDE 上做插件,因为 Mo 专注于 AI 自动化 和 Agent 并不是一个 IDE 工具,比如自动化开发和部署,换个角度讲,如果 AI 能搞定流程上的事情,IDE 只是一个手工精修的工具,而不再是高频使用的工具了
    jacky112365362
    OP
      
    @xinzi docker 读取文件系统会有问题,另外就是 docker 更适合作一些封闭的自动化操作,后期会增加 docker 的支持,让 AI Agent 可以使用 docker 环境去作一些事情
    andforce   
    我觉得要火
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部