自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

AI 編碼 2.0 分析、思考與探索實踐:從 Cursor Composer 到 AutoDev Sketch

人工智能
AI 編程工具正在從代碼補全、代碼預(yù)測,到更加智能、更耗費 token 的 AI 自動化編碼與驗證,以及正在發(fā)展中的異步 AI 編碼。

在周末的公司【AI4SE 效能革命與實踐:軟件研發(fā)的未來已來】直播里,我分享了《AI編碼工具 2.0 從 Cursor 到 AutoDev Composer》主題演講,分享了 AI 編碼工具 2.0 的核心、我們的思考、以及我們的 AI 編碼工具 2.0 探索實踐。

在這篇文章中,我將分享這次演講的內(nèi)容,希望能夠給大家?guī)硪恍﹩l(fā)。

一、AI 編程工具 2.0 (趨勢分析)

我們分析了市面上最受歡迎的 AI 編程工具,如 Cursor、GitHub Copilot Edit、WindSurf、Cline 等,簡單總結(jié)一下新一代 AI 編程工具的特點:

圖片圖片

AI 編程工具正在從代碼補全、代碼預(yù)測,到更加智能、更耗費 token 的 AI 自動化編碼與驗證,以及正在發(fā)展中的異步 AI 編碼。

基于這些特點,我們認(rèn)為 AI 編程工具 2.0 的核心特點應(yīng)該是:

  • Agent 驅(qū)動。依賴于基礎(chǔ)模型的強大推理能力,結(jié)合在編程工具中提供更快、更好的獲取上下文,可以讓 AI 編程工具更好地理解開發(fā)者的意圖,并編寫出更加符合開發(fā)者預(yù)期的代碼。

圖片圖片

  • 開發(fā)者體驗優(yōu)先。結(jié)合開發(fā)者日常活動,更好的滿足開發(fā)者的心流,諸如編輯預(yù)測、自動測試等;諸如 Cursor 結(jié)合開發(fā)者活動提供了大量機制來降低心智成本,以及應(yīng)對失敗和重試等。

圖片圖片

  • 自動化校驗。即自動化校驗 AI 生成代碼的質(zhì)量、業(yè)務(wù)邏輯正確性、修復(fù)幻覺導(dǎo)致的問題,諸如 patch等,從而在機制上減少幻覺帶來的影響;諸如 Cursor 集成大量實用的 Lint、Terminal 等工具,提供自動化檢驗手段。

圖片圖片

當(dāng)然了,它們還有其它非常不錯的范式:

  • 容錯式交互:采用「生成-校驗-回滾」的三階段機制降低心智負(fù)擔(dān)
  • 場景化聚焦:針對代碼評審、漏洞修復(fù)等場景設(shè)計專用交互流

當(dāng)前主流的 AI 編碼 2.0 工具主要集中在 VSCode 平臺上,而 VSCode 只是一個編輯器,它的 API 限制了 AI 編碼工具的功能擴展,阻礙了更高級功能的實現(xiàn)。我們便開始思考,直接在 IDE 上構(gòu)建 AI 編碼工具會不會是一個更好的選擇?

二、我們的 AI 編碼工具 2.0 的思考

我們在內(nèi)部做了一些新一代編碼工具收集,發(fā)現(xiàn)典型的 Intellij IDEA 用戶,會使用 Cursor 來生成代碼,然后再回到 IDEA 中進行測試和調(diào)試。分析其中的原因,我們發(fā)現(xiàn):盡管 Cursor 能提升開發(fā)效率,但是它并沒有 IDEA 帶來的提升大,即 IDEA 與編輯器的能力差異,使得 IDEA 提升反而更大。

因此,我們開始思考,如何更好的開發(fā) AI 編碼工具 2.0?

思考 1:編輯器優(yōu)勢在于體驗,IDE 優(yōu)勢在于生態(tài)集成

圖片圖片

我們簡要分析了編輯器與 IDE 的優(yōu)勢與劣勢:

VSCode

  • 顯著優(yōu)勢:可以快速開發(fā)功能原型、迭代;
  • 缺點:插件豐富但是質(zhì)量低,需要重新開發(fā)和設(shè)計。盡管有 LSP(Language Server Protocol)、DAP(Debug Adapter Protocol)等,MCP(Model Context Protocol)等,但是并不能提供非常好的集成。

Intellij IDEA 系列

  • 顯著優(yōu)勢:開箱即用,高質(zhì)量的官方插件可以提供高質(zhì)量的上下文
  • 缺點:開發(fā)成本高、速度緩慢、文檔缺失(AI 無法生成靠譜的代碼)

因此,我們認(rèn)為,AI 編碼工具 2.0 應(yīng)該更多的借助工具生成的能力,

思考 2:借助 IDEA 插件生態(tài),構(gòu)建端到端自動化

圖片圖片

在現(xiàn)有可參考的工具里,IDEA 是一個非常好的示例,諸如在后端 API 開發(fā)場景,它非常好的集成【設(shè)計-開發(fā)-校驗】相關(guān)的工具生態(tài)。諸如:

  • 設(shè)計:Swagger、PlantUML、Mermaid 等工具
  • 開發(fā):HttpClient、Curl、Database 插件等
  • 校驗:JUnit、Playwright、SonarLint 等

有了這些插件后,我們可以構(gòu)建面向 AI 的接口,提供更好的提示詞、工具,以及對應(yīng)的校驗機制。

思考 3:構(gòu)建高質(zhì)量的上下文,減少幻覺產(chǎn)生示例

圖片圖片

以后端開發(fā)為例,我們可以通過三種工程,構(gòu)建 Agent 驅(qū)動的 AI 編碼工具核心:

  • 軟件工程的上下文工程。獲取項目中的關(guān)鍵上下文:諸如于:依賴信息、數(shù)據(jù)庫信息、框架信息等;示例:This workspace use Gradle+Java+JDK_18;This project use MariaDB;You are working on a project that uses Spring Boot 2.7.10,Spring MVC,JDBC to build business logic.
  • 函數(shù)調(diào)用工程(OpenAI)。即持續(xù)圍繞不同的場景,讓模型更好的理解不函數(shù)如何調(diào)用,做更好的集成。
  • 提示詞工程(Claude)。面向不同的模型,提供思考過程范例,讓模型更好的學(xué)習(xí)。

更好的上下文,配合上更好的提示詞,意味著更少的幻覺。也因此工具的各種指標(biāo),諸如可用性、接受度、準(zhǔn)確度等,都會有所提升。

三、我們的 AI 編碼工具 2.0 探索實踐:AutoDev Sketch

基于我們的分析和思考,我們開始構(gòu)建我們的 AI 編碼工具 2.0:AutoDev Sketch。它的核心應(yīng)該是:高質(zhì)量系統(tǒng)提示詞 + LLM “推理”能力,獲取 IDE 中的關(guān)聯(lián)上下文,渲染為交互式視圖(Sketch View)。

圖片圖片

1. 構(gòu)建高質(zhì)量的上下文與工具使用

圖片圖片

鑒于我們的思考,我們在 AutoDev Sketch 深度集成了 IDEA 插件,諸如于 Database 組件,提供統(tǒng)一的數(shù)據(jù)庫能力,作為上下文、工具封裝,快速幫助開發(fā)者進行數(shù)據(jù)庫處理。它可以在三個步驟幫助 AI 更好地與數(shù)據(jù)庫交互:

  • 系統(tǒng)提示詞。當(dāng)用戶連接了數(shù)據(jù)庫時,會在系統(tǒng)詞中添加:User's workspace context is: This project use MariaDB 11.5.2-MariaDB
  • 工具使用。與此同時,AI 在識別到需求后,可以調(diào)用 Database 工具,來獲取數(shù)據(jù)庫信息( /database:schema),以幫助生成對應(yīng)的代碼。
  • SQL 交互。最后,模型不僅可以生成 SQL 代碼,還可以與數(shù)據(jù)庫進行交互,以驗證生成的代碼是否正確。同時,我們也將在未來提供對應(yīng)的 SQL 代碼校驗機制。

除了 Database 組件,我們還提供了其他插件,如:HttpClient、SonarLint 等,以幫助開發(fā)者更好地進行開發(fā)、測試、校驗。

2. 豐富的工具構(gòu)建自動采納的最后一公里

與 Cursor 這一類基于 VSCode 的 AI 編輯器相關(guān),我們加入了更多的 IDE 原生的功能,以提升開發(fā)者的體驗。如下是 AutoDev Sketch 的工具列表:

圖片圖片

諸如: run、 refactor、 structure 等,都是 IDE 原生的功能,我們將其封裝為工具,以幫助 AI 更好地理解開發(fā)者的意圖,并生成更加符合開發(fā)者預(yù)期的代碼。

3. 多樣化 Sketch 視圖構(gòu)建開發(fā)者心流的連續(xù)性

圖片圖片

在 AI 針對問題生成代碼后,我們將代碼渲染為交互式視圖(Sketch View),以幫助開發(fā)者更好地理解代碼,提升開發(fā)者的體驗。這是就需要充分考慮不同場景下的交互可能性, 如下是 AutoDev Sketch 提供的連續(xù)性交互示例:

  • 多種化的 Patch/Diff 處理, 并針對生成代碼進行 Lint 檢查等
  • 前端應(yīng)用在啟動 dev 服務(wù)時, 自動打開 WebView 查看編譯正確
  • 生成依賴文件時,可提供依賴的安全檢查等

通常這種連續(xù)性,降低了開發(fā)者的心智負(fù)擔(dān),提升總體的開發(fā)體驗。

AI 編碼工具 2.0 總結(jié)

圖片圖片

我們可以對 AI 編碼工具 2.0 的核心特點進行總結(jié):分考慮與研發(fā)知識庫、工具生態(tài)的結(jié)合,部署最新模型以刷新認(rèn)知,關(guān)注開發(fā)者日?;顒?/p>

  • 充分利用研發(fā)生態(tài):結(jié)合研發(fā)工具鏈和知識庫,提升 AI 編碼工具的智能化。
  • 開發(fā)者編碼心流:通過持續(xù)性自動化修改,提升開發(fā)效率。
  • 多種規(guī)格 AI 模型支撐:通過規(guī)劃、理解、補全等不同模型,滿足多樣化的開發(fā)需求。

通過 AutoDev Sketch 的探索,相信大家也知道如何通過高質(zhì)量上下文、豐富的工具集成和交互式視圖,構(gòu)建下一代 AI 編碼工具,提升開發(fā)者的效率和體驗。

責(zé)任編輯:武曉燕 來源: phodal
相關(guān)推薦

2025-01-20 10:40:08

2024-09-19 16:11:07

2024-09-03 16:15:36

2024-09-13 10:01:51

2024-09-25 11:14:33

2025-03-13 03:00:00

DockerAgentic工具

2019-02-21 08:30:00

邊緣計算物聯(lián)網(wǎng)5G

2024-12-05 12:01:09

2018-06-15 09:59:02

WOT史揚邊緣計算

2023-07-17 08:00:00

ChatGPT自然語言人工智能

2012-03-21 10:09:12

2022-12-30 15:27:13

2023-09-07 08:58:36

K8s多集群

2022-04-13 12:20:21

零信任網(wǎng)絡(luò)安全

2017-10-24 11:39:29

銀行轉(zhuǎn)賬數(shù)據(jù)庫分布式事務(wù)

2016-10-24 11:24:22

電商數(shù)據(jù)

2024-06-14 08:19:45

2025-03-17 00:00:00

點贊
收藏

51CTO技術(shù)棧公眾號