一、概述
8 月 8 日,谷歌宣布推出 AI 代码编辑器 IDX,旨在提供基于浏览器的人工智能开发环境,用于构建全栈网络和多平台应用程序。谷歌在创建 IDX 时并没有构建新的 IDE(集成开发环境),而是使用 VS Code 作为其项目的基础。目前,IDX 支持 Angular、Flutter、Next.js、React、Svelte 和 Vue 等框架以及 JavaScript 和 Dart 等语言,后续还将支持 Python、Go 和其他语言。
据了解,IDX 是基于 Google Cloud 构建的一整套浏览器开发体验,由 Codey 提供支持。IDX 项目还以 Code OSS 编辑器为基础。当前,IDX 还未大面积开放,只有少数指定测试人员能够亲身参与体验。不过 IDX 团队透露,在即将召开的 Google Cloud Next 大会上,可能会有更多 Codey 现有成果及未来发展计划的消息与广大开发者见面。IDX 团队表示:
我们花费了大量时间编写代码,AI 的最新进展则创造了巨大的机会空间,能让我们更高效地利用时间。通过 IDX 项目,我们正探索谷歌在 AI 领域的创新成果(包括为 Android Studio 中的 Studio Bot 提供支持的 Codey 与 PaLM 2 模型、Google Cloud 中的 Duet 等)如何帮助开发者加快代码编写速度、提高代码编写质量。
二、谷歌发布 AI 代码编辑器 IDX
IDX 团队在博文中提到,时至今日,从零开始构建应用(特别是能在移动、Web 和桌面平台上良好运行的应用)的难度简直不逊于制造鲁布·戈德堡机械(Rube Goldberg machine,一种被设计得过度复杂的机械组合)。开发者需要在无尽的复杂性之海中航行,将种种技术栈粘合起来,奋力摸索出一条能够正确引导、编译、测试、部署和监控应用的路线。
虽然谷歌多年来一直致力降低多平台应用的开发难度,也先后推出了 Angular、Flutter、Google Cloud 乃至 Firebase 等成果,但似乎还能做得更好。毕竟当下的多平台应用开发还远远称不上快速、顺畅。所以几个月前,谷歌的几个小伙伴聚在一起开始尝试,而这场实验的早期成果就是 IDX 项目(idx.dev/)。
团队之所以决意构建 IDX 项目,一个重要原因就是希望听取广泛开发者社区的意见,了解哪些要素能帮助大家提升工作效率。
三、IDX特性
具体来说,IDX 项目当前主要可实现以下功能:
随时随地,快速工作
IDX 项目的核心是帮助开发者在任何位置、任何设备上进行开发,并且获得完全保真的本地开发体验。IDX 项目中的每个工作区都具备基于 Linux 虚拟机的全部功能,并配有托管在开发者邻近云数据中心的通用访问权限。
可导入现有应用,也可创建新应用
IDX 项目允许开发者从 GitHub 处导入现有项目,随时从上次完成的位置继续开发。开发者也可以使用各类流行框架的预制模板创建新项目,包括 Angular、Flutter、Next.js、React、Svelte、Vue 以及 JavaScript 和 Dart,并即将推出对 Python 与 Go 语言的支持。此外,IDX 团队还在积极努力为更多项目类型和框架提供最佳支持。
跨平台实现应用预览
如今,构建成功应用意味着要对应用的设计和行为做跨平台优化,并以用户“所见即所得”的方式预览应用效果。为了降低这一切的实现门槛,IDX 项目提内置有 Web 预览功能,而且即将推出经过完善配置的 Android 模拟器与嵌入式 iOS 模拟器。所有这些,都可以在浏览器中直接使用。
结合 AI 技术
目前,IDX 项目的 AI 功能尚处于早期阶段,但已经拥有智能代码补全、辅助聊天机器人以及“添加注释”和“解释此代码”等结合上下文的代码操作。
借助 Firebase Hosting 实现 Web 发布
将应用投入生产的一大常见痛点就是部署流程。IDX 项目集成了 Firebase Hosting 以降低整个操作难度,只需单击几下,即可部署 Web 应用的可共享预览,或者使用快速、安全的全球托管平台将其部署至生产环境。由于 Firebase Hosting 能够支持基于 Cloud Functions 的动态后端,因此能够与 Next.js 等全栈框架良好配合。
IDX 团队表示,目前 IDX 项目才刚刚起步,距离最终的端到端开发流程改进还有很长的路要走。希望开发者可以注册成为首批 IDX 项目体验者,大家携手发现的问题将为项目的后续迭代方向、以及还需哪些新增功能以匹配应用团队的工作流程带来指引。
至于下一步计划,IDX 团队称,将不断努力添加新功能并解决开发者反馈的问题。“我们已经在研究新的协作功能,因为我们深知这项功能在如今混合办公时代下的重要意义。此外,更深入的框架集成和个性化/情境化 AI 选项也在筹备当中。期待听到大家提出的更多功能需求!”
IDX 背后的 AI 模型 Codey
在 Google I/O 2023 大会上,谷歌正式发布 Codey。这是一款新型 AI 驱动工具,能够编写并理解代码内容。这款新工具被外界视为谷歌对于 GitHub Copilot 的回应,属于同 Replit 结盟打造的成果。
Codey 基于谷歌的下一代大语言模型 PaLM 2,并采用谷歌自家产品代码及大量合法许可的源代码作为训练素材。更重要的是,Codey 仍在不断学习和发展,从谷歌服务生态系统的各个项目中持续汲取新的力量。
Codey 支持 20 多种编程语言,包括 Go、谷歌标准 SQL、Java、JavaScript、Python 以及 TypeScript。开发者可以通过 Visual Studio Code、JetBrains IDE、Google Shell 编辑器以及 Google Cloud 托管工作站服务的扩展来访问 Codey。开发者能够直接在 IDE 的聊天框中与该模型交流(例如 Android Studio Bot),或者在文本文件中编写注释以指示其生成相关代码。它支持各种编码任务,通过以下方式帮助开发人员更快地工作并缩小技能差距:
- 代码完成:Codey 根据提示中输入的代码上下文建议接下来的几行。
- 代码生成:小程根据开发人员的自然语言提示生成代码。
- 代码聊天:Codey 允许开发人员与机器人对话,以获得调试、文档、学习新概念和其他与代码相关问题的帮助。
Codey 在处理与编码相关的提示词方面接受了专门训练,谷歌还通过其他训练让该模型学会了处理关于 Google Cloud 的一般查询。
参考链接:
developers.googleblog.com/2023/08/int…
codeandhack.com/google-code…