2025主流AI开发工具对比

发布于 更新于
截至2025年4月,主流AI开发工具 Copilot, Cursor, Trae, Jetbrains, Continue, Codium 等体验对比

总结

这篇文章是按照时间倒序更新的,且更新了多次,显得有些杂乱;而且随着业界整体快速发展,这篇文章的内容已经有些过时了。

所以,今天(2025年10月17日),我在文章的最前面,把原文作一番简单概括,供后来的读者快速了解这一段历史。

简单来说,自从2025年春节deepseek-r3发布以来,AI编程,或者说能用到大语言模型的方方面面都得到了快速的发展,从这个角度来说,幻方值得名留青史,确实成为了AI发展历程的里程碑之一。

AI编程插件的发展,一开始是百花齐放的。上半年cursor的风头一时无二,但随后4月Copilot逐步上线了Agent模式、9月左右上线了 Next Edit Suggestions 之后,二者差距已经不大了,而且后者还有更优惠的价格、更稳定的访问和更广泛的兼容,因此到目前,包括我在内的我身边大多数朋友都在使用Copilot,其他人中一部分可能在白嫖cursor,还有一部分人仍然坚持拒绝使用AI编程。

jetbrains在AI编程插件领域的进展令我失望,不过好在copilot在jetbrains的支持虽然落后vscode大约一个月的进度,但总归是能满足使用的。

copilot从六月开始正式修改了计费政策,由原先的“完全不限量”改为对“高级请求”限量。虽然一开始让我这个消费者不满意,但随后我发现实际上对我的影响并不大,因为我其实很少用到“高级请求”——即Chat/Edit/Agent模式,我只用completion能力就能满足工作中95%以上的需求,再用openai的网页版解答一些技术疑问就够了,除此之外只有在少数简单固定重复劳动的情况下会用到高级请求。

我不愿意用高级请求的主要原因,是目前AI仍然“不够聪明”。它懂的比我多,但是它很难模仿我的代码风格,也很难理解我的架构设计。关于这点我认为是几乎无法解决的,这是由于目前AI的“在线服务”的模式在根本上就决定了的。除非AI行业能发展到每个人、每个项目都单独训练一个专用AI的那一天。

在工作中我发现一些同事的编程经常会出现低级错误,以他们的能力和经验来说我觉得这些错误不像是由于人为的疏漏,而是由于AI的低质量产出。AI并不是什么灵丹妙药,至少在现阶段以及可见的未来,AI应当被谨慎、辩证地使用,并由人类来做最后的把关。

AI本身的智力方面,在deepseek之后的大半年中,有不小的进步,尤其是 claude3.7 的出现尤其让我惊艳。但在激烈竞争之下,逐渐的各家的AI能力都差不太多了。不过这仅限于国外的AI,很遗憾,至少目前据我所知,我们国内AI,至少在编程领域,依然明显落后于国外,用是能用,但没那么聪明。

AI编程对我最大意义主要有三点:

  1. 有效加速日常繁琐需求代码实现效率
    • 对简单的CRUD代码它能让我效率翻几倍,以前我一天能写200-400行,现在我一天能写1000行以上
    • 不过对于架构设计类和复杂业务的工作还几乎无法胜任
  2. 准确完成一些特定功能的代码片段(如正则表达式、css样式等)
  3. 带领我快速学习和实现一个新领域(它帮助了我真正地理解了c++并实现了一个完整的商业项目)

目前,copilot的编程能力已经足够令我满意,似乎也是到了瓶颈期,至少我是暂时无法想象AI编程还能玩出什么花样了。如果未来还有重大更新,我会另开一篇文章记录。

从上面的描述不难看出AI的特长和短板:它擅长的是抽象的、共通的纯逻辑的部分,而难以适应我们人类现实生活中的种种不合理、妥协或者“灵机一动”。其实出现这种情况是必然的,因为AI本质是大语言模型,而人类喂给AI的都是文本信息——即已经经过人类的语言抽象之后的现实世界的信息,也就是说AI原生就在一个抽象化的世界中,它擅长抽象的能力是必然且合理的。这甚至可以说明外国AI与我们国内AI在某些领域的表现差异,毕竟人类的语言是不同的,就像盲人摸象,中文、英文等不同的语言对世界的理解和描述方法不同,所喂养出的AI对于世界的理解也自然不同。而计算机语言同样也语言,是一个个现实世界具体需求经过程序员抽象之后翻译而来的抽象代码,从这样的代码中学习的AI自然也是“活”在抽象的世界中,难以理解和还原现人类的本意。

以下是原文,可以不看,就让它自然沉没吧——

2025-06-26 更新

Copilot计量政策终于在6月19日左右上线了。可喜可贺

最终方案与前面讨论的基本相同,唯一的区别是免费模型是 gpt4o 和 gpt4.1 两种任选。

agent模式,用户发1次请求,不论中间多少步骤,只计费1次。

计费系统可能仍不完善,目前我在github.com网页中暂时无法查到我的用量,但是在copilot插件中可以实时查询。

这几天我在使用中,copilot服务经常遇到问题,表现为:AI思考时间很长(1-2分钟),并且结果经常会报错。而且我无法接受的是,即便一次对话(edit)中报错了,这次对话依然是要被计量的,无法免费重试。

最先进的 claude4.0 已经可用了,但是仅限vscode可用,jetbrains依然只有claude3.7

本文至此停止更新,后续有新的AI新闻我应该会另起一篇新文章。

2025-06-06 更新

Copilot 再次跳票

按照一个月前的政策变化,现在应该开始收费了。但是昨天(6月5日)我去看文档,文档中依然写的是“4 June”;而今天(6月6日)再看,则变成了“coming soon”,公告原文如下:

Billing for premium requests is coming soon. Until then, you can continue to use Copilot premium models without being billed for additional premium requests. We’ll update this article with the latest start date at least two business days in advance.

Jetbrains全系内置AI

Jetbrains系列IDE,从2025.1版本开始,全部内置他自家的AI插件,并且命名统一为“Jetbrains AI”(此前为 AI Assistant 和 Junie)。

我在Goland中是没有装 Github Copilot插件 的,主要由于我最近很少写golang,但是刚才写了几行golang代码突然发现有AI提示了,而且用着很别扭,仔细一看,我确实没有装Copilot,刚才的AI提示是 Jetbrains AI 提供的。它的免费且内置的版本是完全本地运行的,当然理解能力很弱,远不如 chatGPT/Claude 这些成熟产品。前几代版本中也提供了本地大模型,不过之前几乎没有存在感,而现在2025.1版本开始有了明显的存在感了。

从jb的官网可以看到他们确实有很多新东西推出或者计划推出,甚至涵盖了非编程任务(文档、项目管理、数据库、自动测试等),感觉确实大有可为,也有在努力追赶,虽然现在还没出什么成绩。不过这些都对中国大陆用户无缘。继续观望先。

2025-05-11 更新

今天发现,Copilot付费政策再一次修改:

  • premium requests 将从 2025年6月4日起计费(此前为5月8日)
  • Base model 改为 GPT-4.1 (此前为GPT-4o)
  • GPT-4o 将按1倍计算请求数(此前为无限量Base model)

2025-05-07 更新

Copilot Rider插件 Agent 体验

2025年5月6日,我发现 Github Copilot 在 Jetbrains 的插件已经提供了 Agent模式(Preview)。

今天来体验一下。我在一个Unity项目中进行实验,这个项目已经实现了一个2D横板动作游戏的基本框架。

模型选择Claude 3.7,我给Copilot输入的命令是:

在 ControllerPlayer 中设计一种技能攻击方式(CombatAction),这个技能的快捷键是J,冷却时间0.5秒,会释放出一个魔法球向前移动,检测到敌人后触发攻击检测(CombatEffect),释放需要消耗20点能量值。并给人物添加能量值系统,上限100点,每秒自然恢复10点,与生命值一样显示在UI中。

我给它提示的文件上下文,是命令中提到的ControllerPlayer.cs文件。这个文件专门负责玩家人物的操控。

ok,首先先设想一下,如果是我自己来做个需求,我要怎么做:

  1. 首先得想个名字。预定为“MagicBall”,去素材商店找到了可用的素材,继续。
  2. 先打通输入设备(快捷键J)到 Controller 类的事件链。
  3. 实现人物动作方法(CastMagicBall),这个方法需要判断能否施法,并触发施法动画。
  4. 在施法动画中触发施法成功后的逻辑,包括扣除能量值、添加冷却事件、创建一个魔法球对象等。
  5. 完成魔法球对象(MagicBall)的逻辑。包括动画、移动、碰撞检测、消失等。
  6. 实现碰撞检测后的伤害判定逻辑(CombatEffectMagicBall),包括攻防计算、扣除生命值等。

接下来看看Copilot(Claude3.7)做了什么:

  1. 先查看了我提供的提示文件ControllerPlayer.cs
  2. 发现里面逻辑很简单,大部分都是从父类中继承的。它搜索并查看其中与战斗相关的组件CombatUnit.cs
  3. 它继续搜索并查看操控组件的父类Controller.cs
  4. 它搜索并查看了输入设备控制器PlayerInputControl.cs以及其Unity资产文件.inputactions
  5. 它觉得已经明白情况了。创建并实现了第一个文件MagicBall.cs
    1. 包含移动功能 transform.Translate
    2. 包含碰撞检测,检测碰到CombatUnit单位则施加伤害ApplyDamageToEnemy,如碰到地形则销毁
    3. 最大生命3秒后自动销毁。
    4. 点评:这里没有完全满足我的期望,它用的是直接扣血,并且针对性地只实现了玩家类的检测,这样不能在玩家和怪物之间通用了(如果我想做一个也会火球术的怪物的话)
  6. 修改CombatUnit
    1. 添加了能量值系统,自动恢复能量,能量变化事件
    2. 点评:基本上满意,不过冷却时间计算方式我用的是略显怪异的“100倍int”,它并没有完全理解我的这一设定。
  7. 修改CombatUnitPlayer
    1. 实现了CastMagicBall方法,会根据参数实例化一个GameObject
    2. 点评:意思大概对了,不过实现方式不太符合我之前代码的风格。另外可以直接写在父类中便于给怪物NPC通用。
  8. 修改按键配置
    1. 配置了 “/j” 和 “/buttonEast” 两种输入方式
    2. 点评:人类必须借助Unity操作,AI直接修改,属于艺高人胆大。后来打开Unity确实也报错了:)
  9. 打算配置UI,
    1. 搜索**/UI/*.cs但是没搜到东西,因为我UI逻辑并没有写在那个目录下。于是它停止在了这一步。
    2. 点评:我借助 ScriptObject 来实现玩家与UI之间的数据通信的,确实没有直接联系,因此把AI难住了。这个关联关系应该记录Scene文件中了,如果AI更聪明的话理论上应该是可以找到并检测出来的,不过那样的话需要读取的文件可能有点多,对于这种运行在远程服务器而不是本地的AI(Claude3.7)来说,这点可能确实有点难,成本也很高。

总得来说还是比较勉强的。

与上个月我用 Windsurf Agent 做的 golang 程序的那次实验相比,我觉得大体上来说实现程度相近。简单概括就是:能够理解命令并实现主干逻辑,但在实现细节上还不够完美,以及遇到比较明显的障碍的时候无法自行脱困。

这一次命令估摸着大约也是消耗了1次请求和大约10~20次的动作请求吧。

今天我又仔细看了一次Copilot的高级请求计费规则,这次发现两个点:

  • Copilot Pro 付费用户将从 2025年5月8日 开始计费,详细用量可以在Github账户设置中查询。
  • 1次Agent似乎只算1次高级请求;
  • 而一次Agent期间的连续动作(在Windsurf中称为ActionFlow),在Copilot中似乎被称为agent requests,其计费规则我暂时没有找到准确的说明。

2025-04-19 更新

Cursor 卸载不完全

由于我的试用许可已经到期并且不再打算使用 Cursor,因此我决定卸载它。

但是我在 windows 应用管理器中看到有两个 Cursor 应用,一个叫Cursor,一个叫Cursor 0.45.14,我卸载了前者之后,发现后者依然留存、并且无法在 windows 应用管理器中卸载。

我只能手动删除了软件的本地目录。然后还要手动去注册表搜索相关项目。于是我发现在注册表里 Cursor 又留下了很多屎:所有的代码文件后缀关联被修改了,还留下很多隐含的注册表项。

我再回忆起之前我在试用阶段观察到多次 Cursor 强制更新,其中曾经出现过自动强制更新之后程序无法运行的情况。技术力堪忧啊。

这一切让我洁癖属性发狂。请问这是什么流氓软件做派?!堪比 360!据此,我对Cursor的评价降低为“谨慎使用”。

降级 Jetbrains 订阅

4 月 18 日,我再次到 Jetbrains 官网确认,AI 插件是有中国大陆特供版本的,模型用的是通义千问,插件能力依然仅限 Chat 模式;而与此同时,国际版提供了包括 Claude3.7 在内的先进大模型,并且实现了 Agent 能力(命名为Junie)。

作为中国大陆用户我觉得我受到了侮辱,是觉得我人傻钱多好欺负吗?既然你 Jetbrains 这么合规,且懒政(明明 Copilot 能做的事你不做),不在乎用户体验,那我就用脚投票了。我把 All Products License 降级为了仅限 Webstorm,年费由¥ 1198 降低为¥ 330 。并且开始逐步学习和适应 VSCode,将一部分代码工程迁移到 VSCode 中完成。

小伙伴问我,Jetbrains 到底好在哪里?我的终极答复是,虽然细节优化有很多,但总体来说差距并不大,一个 100 分的 IDE 和一个 90 分的 IDE,工作效率差距可能是 5% ~ 10%,用不用 Jetbrains 纯粹看你愿不愿意为这 5% ~ 10% 的效率提升付费。而在 AI 应用高速发展的今天,AI 能力也是 IDE 能力的重要组成部分,在这个领域 Jetbrains 中国大陆特供版是远远落后的,因此我个人已经不推荐新人使用 Jetbrains 了,尽早拥抱 VSCode 吧,避免沉没成本。

后续补充:当然我这里并不是说Jetbrains已经完全不行了,只是在ai能力残疾的情况下,Jetbrains的不再拥有无脑碾压级别的竞争力。更何况现在还有Copilot等一众第三方AI插件激烈竞争中,反而又有种要把Jetbrains奶活了的趋势。对于那些想要极致体验并愿意付费的人群来说,Jetbrains依然值得购买。选择VSCode也有好处,拥抱开源社区就像手动挡汽车,开着很麻烦但好处是可以高度定制化。

与之非常类似的还有一个近期比较火的话题——Unity 中国大陆特供版——也就是“团结引擎”。Unity 的运营策略几乎与 Jetbrains 一样,国际版与中国大陆特供版完全切分。但是 Jetbrains 好歹还有良心,而团结引擎几乎可以说是打着国家安全旗号敛财的 **势力 了。团结引擎个人版本游戏画面强制带水印,收费包括 15 万元的使用授权费和 25 万元的去水印费,甚至还有网络传言说鸿蒙平台还有后续强制费用。

此外我还在评论区看到一些关于鸿蒙系统的负面信息,这里我就不贴内容了,有兴趣的可以自行搜索了解。只能说还好我不是移动端/游戏领域的从业者,否则搞不好我要被气到转行……

总之看来看去,我就感觉这伙推动软件国产化的团体的行为方式有种眼熟的感觉。像是炒股大师特朗普?还是肩负两京一十三省重担的小阁老?

Jetbrains 回落许可

这里我简单概括一下 Jetbrains 的回落许可,官方文档:fallback license

即任意 Jetbrains 版本,在上线之后、且在你付费期覆盖这个版本满一整年之后,这个版本将对你永久免费使用。

换句话说,以我举例子,我之前是连续年费订阅,假如我2025年4月19日退订,那么我可以使用所有2024年4月19日之前发布的版本,例如 Goland 2024.1 ,具体可以在官网个人账号许可详情页面中查询到。

国产AI插件对比

近期有新闻说阿里的通义千问模型已经接近国际顶尖水平,还有说阿里集团在AI领域的贡献度已经排名世界前几。

但其实我想说,看一个模型好不好,不能光看跑分,要看Copilot/Cursor/Windsurf这类应用软件是否接入这个模型,如果没有接入,那就说明这个模型不好,或者至少可以说不够好。战报可以骗人,战线不会骗人。

于是为了验证,4月18日,我做了个小对比。

我输入的需求是“帮我写一个对象,用于代替原生的Set,其内部包含两个原生Set,先向其中一个add,装满后向第二个add,第二个装满后清除第一个并重新向第一个add”。

通义灵码(默认模型) 只在当前文件中写了个 class DualSet ,里面逻辑远远不够完善,只能说勉强符合我需求的表面文字意思。

copilot(claude3.7) 找了个合适的地方新建了 utils/DoubleBufferSet.ts 文件,其中实现逻辑非常完善(甚至实现了不常用的迭代器方法,在我看起来已经无可挑剔了),而且还帮我替换了我原本代码中使用Set的地方。也就是说,它不仅写出了代码、还更深层次地理解了我的隐含意图。

小伙伴用 腾讯云代码助手(deepseek-v3) 输入了同样的需求(但是基于一个空白项目),得到的代码略好于通义灵码,但也是五十步笑百步。值得一提的是,ds-v3在思考阶段所说的内容并没有完全体现在生成的代码当中,说的和做的不同。

除此之外,我还试用了一整天的 通义灵码 的行内补全功能,其补全能力也是不尽人意,甚至出现了循环生成的现象。说点好话吧,我猜阿里并没有在通义灵码插件中应用其最先进的千问模型。

简单来说,今天的国产AI编程插件(至少包括上述两个插件),不及Copilot一根毛。我以我这次实验结果对此言论负责。

我觉得必须承认的是,在软件工程行业,目前依然是西方世界占据领先地位,并且他们在生态、规范甚至开源意识这些软实力上的优势更加明显。我固然坚信我们中华民族迟早登上世界巅峰,但是现阶段还是要认清差距,奋力追赶,多一点脚踏实地,少一点好大喜功,多一点工匠精神,少一点爱国营销吧。

2024-04-11 更新

AI 编程应用的发展确实很快。

截止目前(2024 年 4 月 11 日),与我刚写这篇文章时(2025 年 3 月 6 日)相比,业界有如下变化:

Github Copilot 在 VSCode 中已经上线了 Agent 模式。我没有亲自试用,有伙伴用过,能做不少事情。

Github Copilot 在 Jetbrains 中已上线了 Edit 模式,以及 claude3.7 等先进模型。Edit 模式的使用体验不如 VSCode,但可用。Agent 模式还要再等等。

Github Copilot Pro(付费版)从 5 月 5 日起将对请求计量。简单来说,行内补全不限量(包含gpt-4o),其他算作Premium requests,每月 300 次与 Cursor 相同。超出限额后可以继续用”Base Model”完成 Chat/Agent 等工作,基础模型中包含gpt-4o,不包含claude3.5/3.7

其中有个小插曲,4 月 6 日刚公布政策的时候,“Base Model”是不包含gpt-4o的,gpt-4o的计费倍率是 1x;到了大概 4 月 9 号凌晨偷偷改了政策,把gpt-4o定为无限使用的基础模型了(猜测是被用户喷的改的)。

作为 Github Copilot Pro 的年费订阅用户,我有种被背刺的感觉,因为我订阅的时候是完全不限量的。不过冷静想想应该影响不大,实际使用主要还是用行内补全功能,一天十次 Chat/Edit 勉强够用吧。焦虑也没办法,先凑合吧,毕竟价格还是比 Cursor 便宜一半,就算额度用完了有gpt-4o兜底勉强也还能对付。

Windsurf(原名 Codeium),在 4 月 9 日宣布在 Jetbrains 插件中实现了 Agent 模式。我试用了一下,虽然没能一次跑起来,但还是挺惊艳的。体验过程如下:

我的需求是让他写个 golang 可执行程序,运行 docker 命令后调用我自己写的飞书机器人库发送飞书消息。

  1. 他先看了一下我的 main.go ,发现是空的,
  2. 他看了我 IDE 中预先打开的另一个文件,里面的代码刚好能抄
  3. 给 go.mod 添加依赖,申请运行 go mod tidy,他能发现安装依赖失败,
  4. 然后访问 github 网页查看我那个库,查到库的最新 tag 是 v0.2.0,改依赖版本号后申请运行 go mod tidy,依赖安装成功;
  5. 生成代码。代码里有幻觉,调用了不存在的函数。
  6. 编译,编译失败,结束工作
  7. 最后一步停在了想要参考 github 仓库文档用以改良代码(也就是刚才出现的幻觉部分)。(不过我这个仓库的文档没写 Demo,参考了也没用。)

这一系列的动作,消耗了 1 个 Request 和 20 个 Flow Action,按照 Windsurf 的$15 的包月套餐(300 Request + 1500 Action)计算,可用量大约平均每天 2.5 次,大概就是每天尝个鲜的水平(笑哭)。

虽然没有跑通,不过我简单改一改之后就能用了,由于我是第一次使用 Agent 工具,对我来说整个过程还是很惊艳。但是冷静想想,以结果来说其实 Agent 也没比 Edit 强多少,没有 Agent 也不是不能接受。而 Windsurf 的行内补全质量就比 Copilot 差太多了(差距原因应该主要是 Copilot 提供的是gpt-4o模型),再加上 Copilot 的 Agent 模式也预期在不久的将来提供,因此 Windsurf 不会成为我的替代选择。

Windsurf 这次尝试,对我来说最大的意义在于:它证明了 Jetbrains 插件提供的开放能力是完全支持实现一个满血版本的 Agent 插件的。我之前一直以为 VSCode 作为一款开源的插件,它的开放能力应该是最强的,然而现实却是完全相反,Windsurf 的更新日志中这样说:

Unlike VSCode, where the limited set of APIs exposed to extensions restricted our ability to create a great agentic experience via our VSCode extension (thus prompting the fork of VSCode into the Windsurf Editor), the JetBrains suite has a much richer set of customizability and configurability.

不仅 Jetbrains 家的能力足够,甚至(我还听说)VSCode 还给自家的 Copilot 插件开放了专用的特权。也就是说,看起来商业收费的 Jetbrains 系列反而比开源免费的 VSCode 更“开放”,这颇有一种“OpenAI 其实是最 close 的”的戏谑感。所以微软程序员你们都在干什么!赶紧给我更新 Jetbrains 插件啊!!我要用 Agent!!

背景

其实 AI 编程早就不是什么新闻了,大概是从 2022 年末 ChatGPT 问世之后,AI 应用开发显著加快,最广为人知的 Copilot 在 2023 年末就已经发布,但是说实话,我体验过,感觉当时的 AI 编程还远远达不到“可商用”的程度。

2025 年春节前夕,Deepseek 震撼问世(震撼的不仅有技术圈还有金融圈甚至全世界),在家休假的我也赶忙跟进体验了一番,必须承认,此时的 deepseek-r1 已经有了足够让我满意的智能,特别是他把思维过程也呈现出来这点尤其让我眼前一亮。

于是春节复工后我一直关注 AI 相关新闻,包括编程工具这块,近期我算是报复性地把市面上常见的工具全都体验了一遍,记录成本文。

先放结论

注意:由于现在 AI 模型和 AI 相关应用的迭代发展速度很快,下文所述的内容仅对目前(2025 年 3 月 6 日)有效,阅读时请自行辨别信息的时效性。

在编程领域,目前 AI 已经有了一定的生产力,还在观望的朋友现在已经可以开始考虑学习使用了。

但是同样作为 AI 其质量良莠不齐,需要注意选择,目前我认为唯二好用的场景有:

  1. claude3.7 sonnet 模型加上 Agent 模式(或 Edit 模式),给出具体的描述让其完成一项具体的编程任务(一个函数、一个类、一个页面这种程度),它的理解能力和完成度非常高。
  2. Cursor IDE 强大的 Tab 按键(通俗的说“猜你想改”)。但是注意它的订阅有点贵而且限额可能不够用。

评价:Copilot

经过对比之后我目前手头留下的付费订阅工具只有 Copilot,也就是说它是我目前心目中最合适的工具。

它的好处有:

  • Claude3.7/3.5 GPT-4o/o1/o3 等最先进的模型都有,而且都不限量使用。
  • 有 Edit 模式
  • 不限 IDE
  • 价格适中,10 刀一个月,年订还有优惠,对于中国程序员来说也能负担得起。
  • 大公司——微软,目前看起来经营得不错,相对有保障。

但它也有些不足:

  • 虽然不限 IDE,但只有在 VSCode 中是满血状态。JetbrainsIDE 中只有 chat 模式没有 edit 模式。
  • 行内补全智能程度还不太满意

对我来说最大的痛苦在于 IDE 限制。由于我是多年的 Jetbrains 全家桶订阅用户,已经习惯而且深知就从 IDE 本身能力而言 VSCode 最多算个勉强及格的水平。因此我必须在 IDE 能力和 AI 能力之间做取舍,因此我不得不花时间去熟悉和调试 VSCode 环境配置,并且在实际开发中需要同时打开 VSCode 和 Jetbrains 两个软件。

IDE 与 AI 能力的区别

具体来说,什么叫 IDE 能力?即 IDE 本身可能针对语言和框架做一些针对性的调优,并在用户使用过程中无感地、快速地、离线地提供 100%完全正确的补全选项。同时,IDE 还可以在 UI 布局和操作流程上进行细节打磨。

而相对而言,AI 能力提供的是需要联网的、有延迟的、更智能更多可能性的、但是正确率可能只有 50%的补全选项。因此使用 AI 补全有个最大的毛病是,你每次输入一部分代码或者注释之后,你需要稍等 0.5-1 秒 左右时间等 AI 补全弹出来,然后再花 1-2 秒 的时间快速确认一下它猜得对不对,甚至有时它给出了意外的答案你还得停下来思考它为什么会这样想是不是你自己哪里搞错了?这样不断地停顿和走神会严重影响思维的连贯性。

举个具体的例子:

假如你的代码中有CatModule, CatListPage, CatDetailPage, CatService这些模块。突然你想要把所有的Cat改名为Dog

IDE 能提供的是,一键帮你把整个项目中所有文件CatModule改名为DogModule,然后一键把所有的CatListPage改为DogListPage,然后一键把所有的……以此类推

AI 能提供的是,你刚刚手动改了一个单词CatModule改为DogModule,它理解了,它提示你可以一直按 Tab 键快速地将当前文件(或者当前工作区/上下文中的某些文件)中所有的CatXXXX改为DogXXXX……但是项目中其他文件中的命名则需要你分别打开对应的文件去找,AI 看见了才会继续知道修改。

也就是说,AI 可以真正从语义上去理解代码(姑且可以算是理解吧),但是受限于容量和在线服务模式,至少目前不可能同时处理整个项目所有的内容。而 IDE 能力则基于预先制定好的具体的规则,可以以相当小的代价在本地进行索引和查找。

评价:Cursor

它也是个非常强大的工具,虽然使用的是与竞品相同的 AI 模型,但是它隐含了更好的调教,给用户提供了更智能的使用体验。我觉得它可以与 Copilot 并列,如果喜欢的话可以作为唯二选择。

它的优点有:

  • 对上下文的理解非常优秀,经常可以连续按 Tab
  • 行内补全响应更快更聪明
  • 拓展了 AI 的使用场景,例如它可以直接读取命令行的运行输出并快速帮你诊断问题

它的缺点有:

  • 基于 VSCode 换皮,不习惯 VSCode 的朋友必须花时间学习和熟悉
  • 价格略贵,20 刀一个月,对中国程序员来说还是比较肉痛的
  • 限额不够用,500 次高级请求往往很快用完,用完就不能用包括 claude3.7/3.5 在内的先进模型了。

值得一提的是,由于它有免费试用政策,因此有一些技术手段可以破解,可以一直换账号免费使用。不过这种方式不道德也不合法,我在这里并不建议这样做。

对我来说最大的痛苦在于有限额。如果它跟 Copilot 一样不限额的话,我是愿意掏钱的。我不是舍不得这几十块钱的差别,而是“有限额”会让我产生焦虑,我不希望我的工作表现(编码产出)会被这种不可控因素影响。

评价:Jetbrains AI Assistant

最让我失望的产品。

Jetbrains 系列 IDE 产品很优秀,但是在我看来,它最近几年的动作一直有点跟不上节奏。从前几年 WSL 推出的时候,在远程开发领域落后了 VSCode,于是我能感受到从那时起他们内部就将重心放在重构上了,推出了Fleet以及让我非常讨厌的New UI(两者看起来都是在抄 VSCode 风格)。前者已经 Public Preview 很久了可到现在还是一个半成品且半死不活的样子;后者我坚持拒绝使用大概有一年吧,随后估计是被用户喷的,逐渐又把很多旧 UI 风格给抄回来了,整个像是一出乌龙。

随后近两年的 AI 浪潮中也是表现平平、被动跟随。他官方推出的 AI Assistant 插件,至少中国大陆版本的 AI Assistant 插件还只是个落后一个时代的半成品——尽管我在他官网中的油管视频中看到了包含 claude 模型和 Edit 模式的演示,但在中国大陆区域的用户是根本没有的(简单试过改区域加代理依然无效),中国大陆用户只有 chat 模式。这也是让我感到非常愤怒并且要求退款的理由。

既然国内无法使用,那我也懒得再花精神去研究和解释了。

如果在我下次续费之前还没有向中国大陆用户开放这些功能的话,我会考虑不再续费,或者将 All Products 订阅 缩减为 仅包含 Webstorm 。

评价:Trae

Trae 分两个版本:海外版(Trae),以及前两天刚刚上线的国内版(Trae CN)。

海外版类似 Cursor,不过 Trae 是全免费的。免费的代价是热门模型需要排队使用,我简单试用了一下,用 claude3.7 模型提问,排队 300 人、等待时间大约 5 分钟;切换 claude3.5 模型提问则不用排队,不过 3.5 的能力确实明显比 3.7 差一档。

除了 AI 之外,Trae 在 UI 方面做了一些更激进的调整,这甚至导致一些兼容性问题(例如一键导入设置后发现 WSL 插件报错)。相比之下 Cursor 更接近 VSCode 原版,兼容性更好,并且还有一些看不见的细节优化。

整体而言 Trae 是明显不如 Cursor 的,如果你实在囊中羞涩或者就是这么抠门、也不在乎实际生产效率,那用 Trae 也行吧。

至于国内版(Trae CN),没有提供国际先进的模型,仅仅提供了国内模型,截止昨天我看的时候只有 豆包 和 ds-r1 等三个模型,他们的代码能力实在没法用。而且必须要说,最奇葩的是,在一次 chat 中明明 AI 已经吐完了答案,我点击 apply ,Trae 居然还运行了大约 30 秒才生效,这个过程让我很慌,不知道是它后台搞什么小动作还是服务不稳定还是有什么 BUG。总之我立马就卸载了。

评价:Continues

Continues 用法是你自己准备 AI 模型的 API 接口。也就是说如果你特别喜欢某个不流行的 AI 模型、或者有你自己部署的模型、或者有免费薅来的额度,可以考虑用它。

前阵子我自己尝试过的方案是:接入阿里云提供的千问模型接口。结果代码表现非常糟糕,Continues 插件无法处理 AI 模型的流式输出。也许是我配置不对吧,可是我折腾半天也没找到对应的文档在哪。而且“Continues”这个名字太普通了,我搜索资料都很难搜到。

看网络上的一些帖子,有人尝试用例如 ds-r1 或者 claude API 来接入 Continues,但普遍反映:实际使用的接口调用费会比 Copilot/Cursor 这些产品的订阅费还高得多,何必呢。

评价:Codeium

Codeium 是一个全免费的插件,直接内置了一些免费的 AI 模型可直接选用。不过这些模型的素质就比较差了。它也提供付费版本可以用一些先进模型,但那样的话为什么不用 Copilot 呢?

AI 的其他应用

除了写代码,我现在也逐渐在用 AI 替代一部分搜索引擎的能力。

当然,一些时效性比较强或者主观性比较强的东西,AI 是不靠谱的,哪怕是联网模式。

我觉得最有作用的是一些文科类的知识。比如我看了《康熙王朝》电视剧,兴起了可以问 AI:“清朝最伟大的皇帝是谁”,很快我就能到一个比较全面的历史概括。比如我一直对《资本论》中的几个“价值”的概念分不太清,我可以换各种角度提问、举各种例子刁难,AI 都能一一详细解答,比我在学校学的有效多了。再比如我觉得某个英文单词不太好记,我可以问 AI 这个单词的词根词缀,拆解之后就很容易记忆了。等等。

现在科技界的热点似乎主要在编程、数学逻辑这方面,但我其实觉得“神仙打架凡人遭殃”,程序员们还在表达担忧,文科从业者们可能早已经“站上天台了”吧。

畅想未来

首先声明,我虽然是一个程序员,但是并不是 AI 本身相关的从业者也不懂一些底层原理,我仅以一名消费者的角度说说我对未来的想法。

现在的 AI 已经是超级昂贵的巨无霸。为了训练这些 AI,大公司们不惜成本搜罗了全世界的(公开的)知识作为训练材料。也就是说,理论上,现在的大模型应该是知道世界上所有(公开的)知识的,也就是说,核心关键在于如何引导 AI 用最好的方式把不同的知识线索组合起来、再吐出来。

如果我理解的没错的话,现在热门的 deepseek-r1 ,就是这样做的。它以一个相对全知全能的大模型(ds-v3)作为基础,主要运用强化训练手段,即相当于是对原来的通用知识进行了提炼、在某一个方向上做了强化——这次的强化方向是“深度思考”——结果是成功的,因此幻方量化给全世界展现了一个“会深度思考的大模型”。

(其实这个过程我觉得用“蒸馏”一词来描述挺合适的,不过似乎这个词在这个行业有另外的含义,这里不深究。)

而这世界上的一般客观规律是“通用工具不如专用工具”。也就是说,有没有可能,现在的大模型已经足够大了,我们可以像幻方量化一样换一种方向,朝着专业化模型的方向发展。

就像人类社会的工业化进程那样,随着专业化的推进,AI 之间的分工也将会越来越细,最后细到一项工作由多个专业 AI 协作完成。甚至到最后,每个人(或者家庭、项目组这样的小团体)可能都要训练自己的专用 AI 模型,把自己一生的经历、见闻、思考都分享给它,训练它,让它成为自己的分身。

我姑且将其称为“伴生 AI”。就像现代人们可以靠一部智能手机完成许多复杂事务,那时的人们也将依赖他们的伴生 AI 完成更多的工作。“一个有能力的人”的评价标准将不再是这个人本人有多少知识,而是他训练 AI 的能力如何、并且基于此表现出的他训练出的伴生 AI 有多少知识。

二十年前望子成龙的父母会给孩子买一台个人电脑,也许相当于二十年后的父母给孩子买一个未经伴生训练的通用大模型吧。

会有人失业吗?一定会的。可怕吗?不可怕,怕也没用。

而且我认为,可能正相反,越多人失业,说明 AI 能力越强,也就意味着以后人类的人均生产力越高,人均生活水平也会越高。(仇富人士请勿抬杠)

蒸汽机、纺织机、汽车、互联网、电商、网约车……每次社会的进步,都必然会砸掉一部分人的饭碗,但是从社会整体来看,其自然是弊大于利的,自然是有利于整体社会的。

失业的人也并不是死了,新的行业一定有新的机会,多余的人力也会通过市场调节找到合适的去处。我觉得担心失业问题的是属于一种“PVE 思维”,而现实的人类社会是“PVP 玩法”。除非 AI 彻底统治人类,否则只要还是人类作为社会的主体,就一定会有工作机会。因为你会用 AI,别人也会用 AI 啊,你会训练 AI,别人也会训练 AI 啊,凭什么你抢到别人的客户呢?也就是说归根到底 AI 只是工具,限制生产力的依然是人类本身,人类形成的团体为了竞争和生存,必然需要一定的人力组织结构,也就会有相应的工作岗位。

这个观点是符合马克思资本论的,即价值仅仅只是人类的无差别劳动时间——“价值则是商品的社会属性,它体现了商品生产者之间相互交换劳动的社会关系”。如果 AI 能把资本论都打碎了,例如 AI 已经可以 100%替代人类、人类已经不需要交换了,那未来的世界是什么样子我觉得也没有人可以从现在想象了,想象了那也是属于科幻小说的范畴,因为从来没有任何历史可以作为参考来描绘这样一个全新的世界。

人可以有圣母之心,但是这个客观的物理世界不会。时间会让人老化,病毒会让人生病,饥饿会让人煎熬,寒冷会让人痛苦。对美好生活的向往和物质享受的追求,注定了人类社会一定会进步,不会被任何个人的意志所阻挡。与其绝望地等待或者狂妄地阻挡,不如早做准备尽早适应新的世界。