写点什么

微软制霸 AI 编程?GitHub 被曝秘密开发 Copilot 专属 API,“杀死”Cursor 开源替代!

  • 2024-10-23
    北京
  • 本文字数:2750 字

    阅读完需:约 9 分钟

大小:1.26M时长:07:19
微软制霸AI编程?GitHub被曝秘密开发Copilot专属API,“杀死”Cursor开源替代!

近日,GitHub 被曝一直在悄悄地向 VS Code 引入新的扩展 API,但是这些 API 只能由其 Copilot 使用。


发生了什么?

 

VS Code 提供了一种发布新 API 的机制,称为“Proposed APIs”。这些 Proposed APIs 是一组尚未稳定的 API,它们在 VS Code 中已经实现,但不会像稳定 API 那样公开给所有用户。这些 API 可能会发生变动,目前仅在 Insider 版本中可用,并且不能在正式发布的扩展中使用。

 

这是非常有意义的,因为 Proposed APIs 为社区提供了一种使用新 API、收集反馈以及快速迭代 API 的途径,同时不会破坏现有的稳定扩展。

 

不过,开发者只能在开发模式下使用这些 API,不能将包含这些 API 的扩展发布到商店。“尽管你不能使用市场上的 Proposed APIs 来发布扩展,但你仍然可以通过打包和共享的方式与同行共享扩展。”VS Code 官网上这样写道。

 

然而,近日网友“kannthu”对GitHub Copilot Chat扩展进行了反编译,并查看了它的 package.json 文件,结果得到了以下内容:



“这是一个已发布且已启用 ApiProposals 的扩展。”kannthu 说道。

 

“怎么可能呢?哦,对,他们是微软……”kannthu 表示,“这看起来像是一种反竞争策略。VS Code 的扩展 API 非常有限,这就是为什么像 Cursor 这样的初创公司选择分叉 VS Code 并直接应用更改的原因。GitHub 正在引入许多变化,这些变化也会使 Continue 等开源 Copilot 替代品受益,但他们只让自己使用。”

 

VS Code 是微软在 2015 年发布的一个运行于 Mac OS X、Windows 和 Linux 之上的,针对编写现代 Web 和云应用的跨平台源代码编辑器,可在桌面上运行,并且可用于 Windows,macOS 和 Linux。它有对 JavaScript,TypeScript 和 Node.js 的内置支持,并具有其他语言和运行时扩展的生态系统。

 

网友称,这并不是 VSCode 第一次这样做。

 

网友“rty32 ”也在最近发帖称,“我发现 VSCode 有一组用于添加 SSH 隧道的 API,正常情况下,你必须使用特殊的标志启动 VS Code 才能使用它们。但不知为何,他们的内置 JavaScript 调试扩展竟然也能畅通无阻地使用这些 API。”



“而且,你几乎找不到关于这些 API 的任何公开信息。除非有人问起——截至两年前,他们还没有计划‘最终确定’这些 API 并公开它们。建议你寻找其他解决方案。”“rty32 ”说道。

 


前员工:微软有区分私有和公共 API 的文化和技术

 

对于微软的行为,网上也有两种不同的声音。

 

网友 geoffreyhuntley 表示,“正如 Geoffrey Huntley 所说,一旦 VS Code 编译成 MIT 许可的其他版本时,生态系统就会以一种糟糕的方式分裂(商标),包括无法运行大多数微软的扩展(如语言 LSP、Copilot、远程开发)。如果你是生产 MIT 分支的供应商,那么你需要更新图表并说服第三方扩展作者不要将微软的扩展作为依赖项,而是在 open-vsx.org 上发布。”

 

“这就是 Cursor 在中长期内受到破坏的原因。编码代理?很酷,但你不能将它与 Pylance 一起使用。VS Code 被降级为 notepad.exe。微软利用 Cursor 进行产品研究,然后将学习成果推广到 Copilot,因为只有 Copilot 支持用户期望的所有 VS Code 功能(这是有意为之的设计)。”geoffreyhuntley 说道。

 

Cursor 是 VS Code 的分支。Cursor 代码编辑器一半是开发环境,一半是 AI 聊天机器人,将人工智能整合到了开发人员工作流程中的功能,目前备受开发者好评。这里的背景是,OpenAI 是 Cursor 的主要投资者,而是 OpenAI 的主要投资者。所以,有网友认为“微软也控制着(尽管不是完全控制)Cursor 的开发。”

 

此外,也有网友表示,“每个人都将此解读为故意的反竞争行为。虽然这可能是真的,但另一个合理的解释难道不是 Copilot 开发团队正在尽可能快地行动、而变通办法则是以团队名义强行推行的吗?推广公共 API 需要花费更多的时间和精力,而且它可能与开发 Copilot 扩展的团队完全不同。”

 

还有网友指出,其目的可能不是为了竞争,但“给予一个客户其他客户无法享受的特殊待遇仍然会具有反竞争性。”“大多数公司都有内部 API,这些 API 通常不可用。”

 

然后,有自称曾在微软工作的开发者 Arainach 明确表示,“微软拥有区分私有和公共 API 的文化和技术,并在整个公司内检查代码以确保只调用公共 API。这是司法部同意并要求的数十年规定,公司的每一款产品都配有扫描工具,以检查它们是否使用了任何私有 API(或类似的黑客手段来访问它们,例如私下搜索 Windows DLL 文件中的符号)。这一点已经深入每个人的心中,包括我认为的目前公司 90%的高级副总裁及以上人员,而且这已经持续了很长时间。他们这样做是有意识的反竞争决策。”

 

当然,也有网友觉得这并不是什么事,“这并没有什么奇怪的,也不是那么糟糕。他们投入了时间、精力和金钱来开发 VS Code。它是开源的,所以如果你想使用这些 API,你可以在一个分叉版本中使用它们。当然,如果你正在开发一些每个人都能免费使用的东西,而且不强迫人使用它,我认为使用私有 API 没有什么问题。虽然有些人将其与 IE 浏览器类比,但两者并不相同,因为它并非预装在每台机器上,也不会强迫你使用它。因此,尽管它们确实拥有很大的市场份额,但它们也阻止不了你自行分叉或使用不同的编辑器。”

 

实际上早在 2022 年,就有网友注意到,微软在 90 年代的反垄断调查中被指控,“Windows 系统包含了一些实用的 API,但微软对对此保密,仅供自己的应用程序使用,从而为它们在与竞争对手的竞争中提供了不公平的优势。因此,这可能意味着 Microsoft Word 比 WordPerfect 更出色,因为 Word 能够调用一些 WordPerfect 开发人员所不了解的、未公开记录的 Windows API 函数。”

 

对此,网友“davidbak”表示,“微软文档中的“Windows 协议规范”部分起源于最初的欧盟诉讼。如果你查看保存这些规范的地点,就会发现微软最初发布的一组“秘密”API。我清楚地记得其中包含了一份详尽的 NT 本地 API 文档,这些 API 实际上是‘妥协’的产物。它们大多是内部团队使用的 API,例如 SQL Server 以及一些桌面应用程序,但 NT 团队并未将其公开,因为它们“不适宜”——这些 API 用于特殊情况,或难以正确使用,或者不能完成整个工作流程。各个项目团队通过各种方式(有时甚至是副总裁施压)说服 NT 团队提供这些 API 以完成他们的工作,但 NT 团队认为它们不适合公开使用和长期支持。当你查看这些列表时,原本以为会看到微软的绝密优势,但实际上却会感到失望和困惑。”

 

也有网友指出,“不支持客户使用”并不意味着某种邪恶的秘密阴谋。“在我目前开发的软件中,有几十个这样的情况;它们没有记录下来,因为我把它们视为实现细节,而不是保证接口。”

 

参考链接:

https://retrocomputing.stackexchange.com/questions/25955/did-microsoft-really-reserve-secret-apis-in-windows?newreg=392a25a5992b43b2910e44e339cfb623

https://old.reddit.com/r/ChatGPTCoding/comments/1g8xrub/microsoft_is_introducing_hidden_apis_to_vs_code/

https://news.ycombinator.com/item?id=41907350

2024-10-23 08:0010199

评论

发布
暂无评论
发现更多内容

你的同事是你的竞争对手吗?

石云升

战略思考 职场经验 6月日更

anyRTC SDK 5月迭代:优化自定义加密功能,让通信更安全

anyRTC开发者

音视频 WebRTC sdk

fil云算力系统开发具体流程丨fil云算力开发源码成品

系统开发咨询1357O98O718

毕业设计So Easy:珠穆朗玛FM音频电台APP

不脱发的程序猿

android 软件开发 APP开发 毕业设计 移动应用开发

华为云携手马栏山文创园助力湖南广电荣获国家广电总局多项大奖

华为云开发者联盟

AI 5G 视频 华为云 马栏山

我把 Spring Boot 项目从 18.18M 瘦身到 0.18M,部署起来真省事!

xcbeyond

微服务 springboot 6月日更

拉仇恨!webhook + 企业微信给同事做了个代码提交监听工具

程序员小富

Java GitHub 编程 程序员 代码

Flink+Alink,当大数据遇见机器学习!

博文视点Broadview

【LeetCode】你能在你最喜欢的那天吃到你最喜欢的糖果吗?Java题解

Albert

算法 LeetCode 6月日更

火爆全网的迁移学习简明手册全面更新,重磅出版上市!

博文视点Broadview

【译】JavaScript 代码整洁之道-异常处理篇

KooFE

JavaScript 大前端 异常处理 6月日更 整洁代码

带你认识大模型训练关键算法:分布式训练Allreduce算法

华为云开发者联盟

分布式训练 Allreduce算法 集合通信 分布式通信算法 大模型训练

云网络开山之作,揭秘云上高速公路的十年技术成果!

博文视点Broadview

一封MySQL之父Monty的回信,开启彭立勋的数据库之路

华为云开发者联盟

MySQL 数据库 opengauss GaussDB 华为云数据库

写给想做程序员的半吊子应届毕业生们

北游学Java

Java Python 求职 秋招

C 语言面向对象的封装方式

实力程序员

国内首篇云厂商 Serverless 论文入选全球顶会:突发流量下,如何加速容器启动?

Serverless Devs

Serverless 容器 云原生

面向对象的Python编程,你需要知道这些!

华为云开发者联盟

Python 面向对象 oop 面向对象编程

TCP协议

IT视界

TCP 传输协议 网络通信

基于开源Tars的动态负载均衡实践

vivo互联网技术

负载均衡 TARS

LeaRun .Net Core/Java工作流引擎,分离式前端,升级Vue

雯雯写代码

Vue 工作流引擎

🏆未来可期,WebRTC成为实时通讯方案的行业标准

洛神灬殇

音视频 WebRTC 实时通信 6月日更

网络攻防学习笔记 Day33

穿过生命散发芬芳

网络攻防 6月日更

云上创新,阿里云视频云分享全场景音视频服务背后的场景探索与技术实践

阿里云CloudImagine

阿里云 音视频 在线教育 视频会议 直播技术

架构实战营模块五作业

竹林七贤

为什么说混合云是新基建的流行架构?

博文视点Broadview

书单 | 5月畅销新书情报,你最Pick哪一本?

博文视点Broadview

Chia奇亚云算力挖矿系统开发成功案例丨Chia奇亚挖矿源码成品

系统开发咨询1357O98O718

一文回顾 Java 入门知识(上)

逆锋起笔

Java 后端 javase

图表示学习+图神经网络:破解AI黑盒,揭示万物奥秘的钥匙!

博文视点Broadview

自适应微服务治理背后的算法

万俊峰Kevin

微服务 自适应 服务治理 Go 语言

微软制霸AI编程?GitHub被曝秘密开发Copilot专属API,“杀死”Cursor开源替代!_企业动态_褚杏娟_InfoQ精选文章