生5小時(shí)搞定AI+AR原型:低代碼與AI開(kāi)發(fā)平臺(tái)實(shí)戰(zhàn)拆解)
1. 從畫筆到代碼一個(gè)美術(shù)生的“甲方”初體驗(yàn)“當(dāng)甲方很快樂(lè)”這句話在項(xiàng)目群里通常是程序員們帶著復(fù)雜心情發(fā)出的調(diào)侃。但作為一個(gè)純正的美術(shù)生我從未想過(guò)有一天這句話會(huì)從我嘴里說(shuō)出來(lái)而且是在一個(gè)涉及AI、AR和智能眼鏡的“硬核”技術(shù)項(xiàng)目里。這一切發(fā)生在短短五個(gè)小時(shí)內(nèi)。我的專業(yè)是視覺(jué)傳達(dá)日常就是和PS、AIAdobe Illustrator此AI非彼AI、數(shù)位板打交道。代碼對(duì)我而言就像是另一種語(yǔ)言寫的天書。然而公司最近接了一個(gè)為大型倉(cāng)儲(chǔ)物流中心做概念驗(yàn)證的活兒核心是探索AI眼鏡在倉(cāng)庫(kù)揀貨與盤點(diǎn)中的應(yīng)用。團(tuán)隊(duì)里懂算法的同事被另一個(gè)緊急項(xiàng)目抽走老板看著我桌上最新款的AR眼鏡原型機(jī)半開(kāi)玩笑地說(shuō)“你審美在線又最懂用戶體驗(yàn)要不……你試試用現(xiàn)在那些‘低代碼’、‘AI開(kāi)發(fā)’平臺(tái)把咱們之前討論的那個(gè)AR導(dǎo)航疊加AI識(shí)別的Demo搭出來(lái)就模擬一下從A區(qū)到B區(qū)路上識(shí)別貨箱并高亮顯示目標(biāo)貨箱這個(gè)流程。”我當(dāng)時(shí)的第一反應(yīng)是老板你認(rèn)真的嗎讓我一個(gè)畫畫的去搞AI開(kāi)發(fā)但看著他那“我相信你可以”的眼神以及“反正就5小時(shí)搞不出來(lái)也沒(méi)關(guān)系就當(dāng)熟悉下新技術(shù)”的免責(zé)聲明我硬著頭皮接下了這個(gè)“甲方”任務(wù)——畢竟這次的需求方是我自己。我的武器庫(kù)只有一臺(tái)電腦一些關(guān)于“低代碼”、“AI應(yīng)用開(kāi)發(fā)”、“AI Agent”的網(wǎng)絡(luò)搜索記錄以及一顆不想認(rèn)輸?shù)男?。接下?lái)的五小時(shí)是一場(chǎng)從茫然到興奮從絕望到狂喜的極限過(guò)山車。我發(fā)現(xiàn)當(dāng)技術(shù)門檻被極大地降低當(dāng)“開(kāi)發(fā)”從寫代碼變成拖拽、配置和與AI對(duì)話一個(gè)創(chuàng)意者所能爆發(fā)出的能量超乎想象。這不是一個(gè)嚴(yán)謹(jǐn)?shù)慕坛潭且粋€(gè)“外行”用最野路子在5小時(shí)內(nèi)征服多個(gè)技術(shù)概念的奇遇記錄里面充滿了誤打誤撞的驚喜和哭笑不得的坑。2. 開(kāi)局一頭霧水在“低代碼”與“AI開(kāi)發(fā)平臺(tái)”的迷宮中定位坐在電腦前第一個(gè)問(wèn)題就來(lái)了從哪開(kāi)始我知道關(guān)鍵詞是“低代碼”和“AI開(kāi)發(fā)平臺(tái)”。但搜索之后我陷入了更深的困惑。阿里云宜搭、騰訊云微搭、還有各種我聽(tīng)都沒(méi)聽(tīng)過(guò)的“斑斑低代碼”、“前幾年搞低代碼平臺(tái)的創(chuàng)業(yè)公司”……它們看起來(lái)都像是我需要的但又似乎完全不同。2.1 理解“低代碼”與“AI開(kāi)發(fā)平臺(tái)”的本質(zhì)區(qū)別我的第一個(gè)重大認(rèn)知糾偏是弄明白了“低代碼”和“AI開(kāi)發(fā)平臺(tái)”雖然常被一起提及但核心解決的是不同問(wèn)題。這花了我將近半小時(shí)閱讀和對(duì)比。低代碼平臺(tái)它的核心是“快速構(gòu)建應(yīng)用”尤其是企業(yè)管理類應(yīng)用OA、CRM、ERP等。它通過(guò)圖形化拖拽組件如表單、按鈕、表格和配置業(yè)務(wù)邏輯流來(lái)替代傳統(tǒng)的編寫大量基礎(chǔ)代碼。比如我想做一個(gè)倉(cāng)庫(kù)入庫(kù)單審批流程用低代碼可能只需要拖一個(gè)表單設(shè)計(jì)器、連一個(gè)審批人節(jié)點(diǎn)、再配置一下數(shù)據(jù)庫(kù)字段就完成了。它關(guān)注的是業(yè)務(wù)流程的數(shù)字化和自動(dòng)化。搜索時(shí)看到的“低代碼平臺(tái)中的視圖模型”、“柱狀圖自動(dòng)彈出數(shù)能不能給關(guān)了”這些問(wèn)題都非常“業(yè)務(wù)系統(tǒng)”離我的“AIAR”場(chǎng)景有點(diǎn)遠(yuǎn)。AI開(kāi)發(fā)平臺(tái)它的核心是“賦能AI能力”讓開(kāi)發(fā)者甚至非開(kāi)發(fā)者能夠更容易地使用、微調(diào)或部署人工智能模型。它提供的是像視覺(jué)識(shí)別、語(yǔ)音交互、自然語(yǔ)言處理、智能決策Agent這樣的能力。比如我想讓我的應(yīng)用能識(shí)別貨箱上的文字就需要調(diào)用某個(gè)AI開(kāi)發(fā)平臺(tái)提供的OCR文字識(shí)別API。它關(guān)注的是智能能力的集成與調(diào)用。我的項(xiàng)目呢既要“應(yīng)用”一個(gè)能跑在AR眼鏡里的界面和邏輯又要“AI”識(shí)別貨箱。所以我需要的可能不是一個(gè)單純的平臺(tái)而是一個(gè)組合方案用某個(gè)相對(duì)靈活的應(yīng)用開(kāi)發(fā)工具可能是輕量級(jí)低代碼也可能是更偏向前端的框架搭建AR眼鏡的應(yīng)用界面和基礎(chǔ)邏輯同時(shí)接入一個(gè)AI開(kāi)發(fā)平臺(tái)提供的視覺(jué)識(shí)別服務(wù)。2.2 我的野路子選型邏輯時(shí)間緊迫容不得我系統(tǒng)學(xué)習(xí)。我的選型原則變得非常功利能否快速上手文檔是否清晰有沒(méi)有現(xiàn)成的模板或Demo社區(qū)是否活躍是否支持AR眼鏡我的目標(biāo)設(shè)備是特定的AR眼鏡比如Rokid、RealWear或微軟HoloLens平臺(tái)或方案是否需要特殊的SDK或適配AI能力接入是否方便能否以最簡(jiǎn)單的方式比如一個(gè)API調(diào)用接入我需要的圖像識(shí)別功能基于這三點(diǎn)我排除了那些需要復(fù)雜企業(yè)賬號(hào)申請(qǐng)、專注于內(nèi)部流程管理的重型低代碼平臺(tái)。我也暫時(shí)擱置了需要從零學(xué)習(xí)Python或Java去訓(xùn)練模型的“AI大模型開(kāi)發(fā)”路線。我的目光投向了兩類產(chǎn)品面向AI應(yīng)用的原型工具例如一些國(guó)內(nèi)的AI應(yīng)用開(kāi)發(fā)平臺(tái)它們提供了將AI模型如對(duì)話、識(shí)別封裝成可交互應(yīng)用界面的能力有時(shí)甚至支持簡(jiǎn)單的邏輯編排??缙脚_(tái)前端框架云AI服務(wù)例如使用Unity對(duì)游戲引擎它其實(shí)對(duì)美術(shù)很友好或React Native這類工具開(kāi)發(fā)一個(gè)簡(jiǎn)單的AR應(yīng)用界面然后通過(guò)HTTP請(qǐng)求調(diào)用像阿里云、百度云或騰訊云提供的、開(kāi)箱即用的視覺(jué)識(shí)別API。最終我選擇了一條“縫合怪”路線用一個(gè)對(duì)設(shè)計(jì)者友好的交互原型工具類似Figma但能輸出真機(jī)可運(yùn)行代碼的進(jìn)階版快速搭建UI和頁(yè)面流同時(shí)在工具里用“自定義代碼”模塊調(diào)用一個(gè)提供免費(fèi)試用額度的云AI服務(wù)API。這樣我就能在5小時(shí)內(nèi)看到一個(gè)“有形且能動(dòng)”的東西。3. 五小時(shí)極限沖刺拆解“AR導(dǎo)航AI識(shí)別”Demo目標(biāo)明確了做一個(gè)在AR眼鏡屏幕上顯示虛擬箭頭指引同時(shí)攝像頭掃描到目標(biāo)貨箱時(shí)能在其周圍顯示高亮框的Demo。3.1 第一步構(gòu)建靜態(tài)場(chǎng)景與UI用時(shí)1.5小時(shí)作為美術(shù)生這是我的舒適區(qū)。我打開(kāi)選定的原型工具假設(shè)它叫“CoDesign”。創(chuàng)建場(chǎng)景我導(dǎo)入了倉(cāng)庫(kù)的簡(jiǎn)單平面圖作為背景。繪制UI元素導(dǎo)航箭頭一個(gè)簡(jiǎn)單的3D箭頭模型我設(shè)置它的初始狀態(tài)為隱藏。信息面板一個(gè)半透明的浮動(dòng)面板用于顯示當(dāng)前任務(wù)如“前往B-12區(qū)”和識(shí)別結(jié)果。高亮框一個(gè)紅色的矩形線框用于標(biāo)記識(shí)別到的目標(biāo)貨箱。設(shè)置頁(yè)面流我設(shè)計(jì)了兩個(gè)主要“狀態(tài)”。狀態(tài)一導(dǎo)航中。信息面板顯示“正在前往B-12區(qū)”導(dǎo)航箭頭根據(jù)預(yù)設(shè)路徑我簡(jiǎn)單模擬了從A點(diǎn)到B點(diǎn)的直線動(dòng)態(tài)更新位置和旋轉(zhuǎn)角度指向下一個(gè)拐點(diǎn)。這里我用到了工具的“動(dòng)畫”和“智能動(dòng)畫”功能通過(guò)關(guān)鍵幀來(lái)模擬移動(dòng)而不是真寫代碼計(jì)算路徑。狀態(tài)二識(shí)別到目標(biāo)。當(dāng)觸發(fā)“識(shí)別”事件我暫時(shí)用一個(gè)手動(dòng)按鈕模擬后信息面板內(nèi)容切換為“已定位目標(biāo)貨箱B-12-05”高亮框顯示在屏幕中央的某個(gè)位置模擬攝像頭捕捉到的位置。注意這里最大的“坑”是坐標(biāo)系統(tǒng)。AR眼鏡的屏幕坐標(biāo)2D和現(xiàn)實(shí)世界坐標(biāo)3D的映射在真正的開(kāi)發(fā)中需要SLAM同步定位與地圖構(gòu)建技術(shù)。為了Demo我粗暴地假設(shè)攝像頭畫面就是屏幕目標(biāo)貨箱出現(xiàn)在畫面固定位置。這是美術(shù)生思維的“取巧”也是原型與產(chǎn)品的巨大鴻溝。3.2 第二步接入AI識(shí)別能力用時(shí)2小時(shí)這是最讓我頭疼也最終帶來(lái)最大驚喜的部分。我需要讓應(yīng)用能“看懂”攝像頭畫面里的貨箱。尋找合適的AI服務(wù)我搜索了“AI視覺(jué)識(shí)別 API 免費(fèi)試用”找到了幾家大廠的服務(wù)。對(duì)比后選擇了一家因?yàn)樗星逦摹拔矬w檢測(cè)”API文檔且每天提供一定次數(shù)的免費(fèi)調(diào)用。理解API調(diào)用文檔里通常有一個(gè)curl命令示例。我看不懂但工具的模式讓我只需要關(guān)注幾個(gè)關(guān)鍵點(diǎn)Endpoint請(qǐng)求地址一個(gè)URL。Header請(qǐng)求頭里面要包含一個(gè)叫Authorization的東西值是Bearer你的API_Key。這個(gè)Key在注冊(cè)平臺(tái)后就能獲得。Body請(qǐng)求體我需要把圖片數(shù)據(jù)傳過(guò)去。文檔說(shuō)可以傳圖片的URL或者直接傳圖片的base64編碼一種把圖片變成一長(zhǎng)串文本的方法。在原型工具中“拼裝”我在“識(shí)別”按鈕的點(diǎn)擊事件上添加了一個(gè)“HTTP請(qǐng)求”動(dòng)作。按照文檔填好URL。在Headers里添加Authorization: Bearer sk-my-test-key-123456示例。最麻煩的是圖片。我沒(méi)有真實(shí)的攝像頭流。于是我又“作弊”了我預(yù)先準(zhǔn)備了幾張包含不同貨箱的倉(cāng)庫(kù)照片上傳到圖床獲得URL直接把URL作為請(qǐng)求參數(shù)固定寫死?;蛘吒皠?dòng)態(tài)”一點(diǎn)我讓工具在點(diǎn)擊按鈕時(shí)自動(dòng)將當(dāng)前屏幕截圖模擬攝像頭畫面轉(zhuǎn)換成base64然后填到請(qǐng)求體里。這個(gè)“截圖轉(zhuǎn)base64”功能居然在工具的內(nèi)置函數(shù)庫(kù)里找到了處理返回結(jié)果API的返回是一段JSON數(shù)據(jù)對(duì)于美術(shù)生來(lái)說(shuō)這就像一段結(jié)構(gòu)化的文字描述。它可能長(zhǎng)這樣{ code: 0, msg: success, data: { objects: [ { label: cardboard_box, score: 0.95, bbox: [120, 80, 300, 400] // 代表框的左上角x,y和右下角x,y坐標(biāo) }, // ... 可能還有其他識(shí)別到的物體 ] } }我需要從這個(gè)JSON里取出label是cardboard_box紙箱且score置信度最高的那個(gè)對(duì)象的bbox坐標(biāo)。讓高亮框動(dòng)起來(lái)工具提供了“解析JSON”的功能。我設(shè)置了一個(gè)變量target_bbox來(lái)存儲(chǔ)解析到的坐標(biāo)[120, 80, 300, 400]。然后將高亮框組件的位置和大小屬性綁定到這個(gè)變量。當(dāng)API返回?cái)?shù)據(jù)并解析后高亮框就自動(dòng)跳到了對(duì)應(yīng)的屏幕位置。當(dāng)點(diǎn)擊按鈕看到高亮框真的根據(jù)“AI識(shí)別結(jié)果”移動(dòng)到圖片中貨箱的位置時(shí)那種感覺(jué)難以言喻——我一個(gè)美術(shù)生沒(méi)有寫一行傳統(tǒng)意義上的代碼卻讓AI聽(tīng)我指揮了。3.3 第三步串聯(lián)邏輯與模擬數(shù)據(jù)用時(shí)1小時(shí)現(xiàn)在我有了一堆散落的“積木”會(huì)動(dòng)的箭頭、會(huì)跳的框、一個(gè)能調(diào)AI的按鈕。我需要把它們連成一個(gè)完整的故事。狀態(tài)管理我設(shè)置了兩個(gè)全局變量app_state值為navigating或identifying和target_position存儲(chǔ)高亮框坐標(biāo)。邏輯串聯(lián)應(yīng)用啟動(dòng)app_state “navigating”導(dǎo)航箭頭開(kāi)始動(dòng)畫。我模擬了一個(gè)“到達(dá)目標(biāo)區(qū)域”的事件比如一個(gè)倒計(jì)時(shí)結(jié)束或者手動(dòng)點(diǎn)擊一個(gè)“已到達(dá)”按鈕。觸發(fā)后app_state “identifying”導(dǎo)航箭頭隱藏信息面板更新為“開(kāi)始掃描貨箱...”。用戶演示者點(diǎn)擊“識(shí)別”按鈕觸發(fā)HTTP請(qǐng)求獲取AI結(jié)果更新target_position高亮框顯示。同時(shí)信息面板更新為“目標(biāo)貨箱已高亮”。打磨與模擬為了演示更流暢我預(yù)設(shè)了幾組不同的target_position坐標(biāo)和對(duì)應(yīng)的貨箱圖片在點(diǎn)擊“識(shí)別”時(shí)隨機(jī)輪換模擬識(shí)別到不同貨箱的效果。我還給所有狀態(tài)切換加上了簡(jiǎn)單的淡入淡出動(dòng)畫。4. 踩坑實(shí)錄理想與現(xiàn)實(shí)的差距這5小時(shí)并非一帆風(fēng)順幾乎每一步都有“坑”這些坑恰恰是傳統(tǒng)開(kāi)發(fā)中習(xí)以為常但對(duì)新手來(lái)說(shuō)宛如天塹的細(xì)節(jié)。4.1 網(wǎng)絡(luò)請(qǐng)求的異步之殤我最初以為點(diǎn)擊按鈕 - 調(diào)用API - 立刻更新界面是一條直線。實(shí)際上網(wǎng)絡(luò)請(qǐng)求是“異步”的。意思是點(diǎn)擊按鈕后程序說(shuō)“我去發(fā)個(gè)請(qǐng)求”然后就繼續(xù)往下執(zhí)行了不會(huì)傻等結(jié)果。這導(dǎo)致我的高亮框總是在AI結(jié)果回來(lái)之前就試圖用一個(gè)空的位置坐標(biāo)去更新然后報(bào)錯(cuò)。解決方案在工具的HTTP請(qǐng)求動(dòng)作配置中我找到了“成功回調(diào)”和“失敗回調(diào)”。我需要把“更新高亮框位置”和“更新信息面板”這兩個(gè)操作從主流程里拖出來(lái)塞進(jìn)“成功回調(diào)”函數(shù)里。這意味著只有API成功返回?cái)?shù)據(jù)后這些界面更新才會(huì)發(fā)生。這是我學(xué)到的第一個(gè)重要的編程概念——異步回調(diào)。4.2 坐標(biāo)系統(tǒng)的轉(zhuǎn)換陷阱我成功讓高亮框在屏幕上跳了起來(lái)但很快發(fā)現(xiàn)不對(duì)。AI API返回的bbox坐標(biāo)[x1, y1, x2, y2]通常是基于輸入圖片的像素坐標(biāo)系。而我的UI組件的位置可能是基于屏幕百分比、絕對(duì)像素值或者是另一套相對(duì)坐標(biāo)。直接賦值會(huì)導(dǎo)致框的位置錯(cuò)亂。解決方案我需要一個(gè)轉(zhuǎn)換函數(shù)。比如API返回的坐標(biāo)是基于800x600的圖片而我的AR眼鏡屏幕分辨率是1920x1080。那么高亮框的左邊距應(yīng)該是(x1 / 800) * 1920。我在工具的自定義代碼區(qū)域?qū)懥艘粋€(gè)簡(jiǎn)單的JavaScript函數(shù)來(lái)做這個(gè)比例換算。這讓我意識(shí)到數(shù)據(jù)格式和坐標(biāo)系的統(tǒng)一是集成不同模塊時(shí)最瑣碎也最關(guān)鍵的一步。4.3 AI模型的“偏見(jiàn)”與局限我用自己網(wǎng)上找的倉(cāng)庫(kù)圖片測(cè)試識(shí)別率不錯(cuò)。但當(dāng)我興沖沖地想用手機(jī)拍一下辦公室的紙箱試試時(shí)識(shí)別結(jié)果要么是“椅子”要么置信度很低。這是因?yàn)樵品?wù)提供的通用“物體檢測(cè)”模型是在海量通用數(shù)據(jù)集COCO等上訓(xùn)練的它對(duì)“在倉(cāng)庫(kù)環(huán)境下的、特定擺放角度的、貼有復(fù)雜標(biāo)簽的貨箱”特征學(xué)習(xí)不足。解決方案對(duì)于真正的項(xiàng)目這條路走不通。要么1使用該AI平臺(tái)提供的自定義模型訓(xùn)練功能上傳幾百?gòu)堊约簜}(cāng)庫(kù)的貨箱圖片進(jìn)行微調(diào)要么2尋找行業(yè)垂直的、專門針對(duì)物流倉(cāng)儲(chǔ)場(chǎng)景優(yōu)化過(guò)的AI服務(wù)商。這遠(yuǎn)遠(yuǎn)超出了5小時(shí)Demo的范疇但它點(diǎn)明了AI應(yīng)用落地的核心現(xiàn)成的通用模型往往不夠用領(lǐng)域定制化是關(guān)鍵。4.4 性能與真機(jī)部署的鴻溝我的Demo在原型工具的預(yù)覽窗口里跑得很流暢。但我知道這只是“預(yù)覽”。一旦要打包成真正的應(yīng)用部署到AR眼鏡通常是Android系統(tǒng)上問(wèn)題會(huì)接踵而至HTTP請(qǐng)求的延遲在移動(dòng)網(wǎng)絡(luò)下是否可接受連續(xù)調(diào)用API的電量和流量消耗如何UI動(dòng)畫在真機(jī)上是否依然流暢原型工具生成的代碼是否足夠優(yōu)化這些我都沒(méi)有答案。這個(gè)Demo的價(jià)值在于快速驗(yàn)證想法和交互邏輯在于讓業(yè)務(wù)方甚至是我自己在投入大量工程資源前看到一個(gè)“活”的、可交互的概念。它是一個(gè)溝通工具一個(gè)設(shè)計(jì)驗(yàn)證工具而非一個(gè)產(chǎn)品原型。5. “甲方”的快樂(lè)與思考低代碼/AI開(kāi)發(fā)平臺(tái)改變了什么五小時(shí)到點(diǎn)我向老板展示了一個(gè)可以點(diǎn)擊交互、有動(dòng)畫、能“調(diào)用AI”識(shí)別圖片并高亮目標(biāo)的AR應(yīng)用原型。雖然它漏洞百出離真正可用差十萬(wàn)八千里但所有人都震驚了。一個(gè)美術(shù)生在這么短的時(shí)間內(nèi)竟然串起了一條從UI設(shè)計(jì)、邏輯編排到AI能力調(diào)用的完整鏈路。這種“甲方”的快樂(lè)源于以下幾點(diǎn)創(chuàng)意的快速具象化我不再需要先花幾周學(xué)習(xí)編程再和工程師反復(fù)溝通需求、等待排期。想法可以直接變成可交互的東西。這極大地壓縮了從“點(diǎn)子”到“原型”的路徑讓創(chuàng)意驗(yàn)證變得極其高效。對(duì)核心邏輯的聚焦我不必糾纏于內(nèi)存管理、線程同步、網(wǎng)絡(luò)框架等底層技術(shù)細(xì)節(jié)。我可以把幾乎全部精力都放在業(yè)務(wù)邏輯和用戶體驗(yàn)上導(dǎo)航箭頭該怎么動(dòng)更自然識(shí)別結(jié)果如何展示更清晰狀態(tài)切換的動(dòng)畫怎么才不突兀這讓我這個(gè)“產(chǎn)品設(shè)計(jì)師”的角色得以真正貫穿始終。與技術(shù)的平等對(duì)話當(dāng)我拿著這個(gè)Demo去和后來(lái)的工程師溝通時(shí)我不再說(shuō)“我想要一個(gè)能識(shí)別貨箱的功能”而是說(shuō)“你看我在這里調(diào)用了這個(gè)API它的返回格式是這樣的但我需要你把坐標(biāo)轉(zhuǎn)換一下并且考慮一下網(wǎng)絡(luò)延遲時(shí)的加載狀態(tài)”。溝通效率提升了不止一個(gè)量級(jí)。當(dāng)然狂喜之后是冷靜的思考。這5小時(shí)的奇遇并不能讓我轉(zhuǎn)型為AI開(kāi)發(fā)工程師。它揭示的是一種新的生產(chǎn)范式而非職業(yè)的替代。對(duì)于中小企業(yè)或初創(chuàng)團(tuán)隊(duì)正如熱搜詞里提到的“缺資金、缺人才、缺技術(shù)”這類低代碼/AI開(kāi)發(fā)平臺(tái)極大地降低了創(chuàng)新試錯(cuò)的門檻。你可以用極小的成本快速驗(yàn)證一個(gè)涉及AI或復(fù)雜邏輯的產(chǎn)品創(chuàng)意拿到投資或內(nèi)部支持后再投入專業(yè)力量進(jìn)行工業(yè)化開(kāi)發(fā)。對(duì)于專業(yè)開(kāi)發(fā)者這不是威脅而是生產(chǎn)力的解放。平臺(tái)生成的代碼或搭建的應(yīng)用往往可以作為高質(zhì)量的“腳手架”或“前端原型”。開(kāi)發(fā)者可以專注于更底層的算法優(yōu)化、性能調(diào)優(yōu)、系統(tǒng)架構(gòu)和定制化深度開(kāi)發(fā)把重復(fù)性的、標(biāo)準(zhǔn)化的界面和業(yè)務(wù)邏輯搭建工作交給工具或更廣泛的“公民開(kāi)發(fā)者”。對(duì)于像“AI Agent”這樣的前沿概念這些平臺(tái)可能成為構(gòu)建和測(cè)試Agent工作流的絕佳沙盒。你可以用圖形化的方式編排Agent的感知、決策、行動(dòng)鏈條快速驗(yàn)證其在不同場(chǎng)景下的有效性而無(wú)需先搭建復(fù)雜的技術(shù)環(huán)境。回到最初的問(wèn)題AI開(kāi)發(fā)用Java還是Python需要哪些技術(shù)棧對(duì)于想從事專業(yè)AI應(yīng)用開(kāi)發(fā)的人來(lái)說(shuō)這依然是核心問(wèn)題。Python在算法原型和數(shù)據(jù)處理上優(yōu)勢(shì)明顯Java在大型企業(yè)級(jí)后端服務(wù)中地位穩(wěn)固。你需要數(shù)據(jù)結(jié)構(gòu)、算法、機(jī)器學(xué)習(xí)基礎(chǔ)、至少一門主力語(yǔ)言、框架知識(shí)等等。但我的5小時(shí)經(jīng)歷說(shuō)明了另一條路如果你是一個(gè)業(yè)務(wù)專家、產(chǎn)品經(jīng)理、設(shè)計(jì)師或者是一個(gè)資源有限的創(chuàng)業(yè)者你的目標(biāo)不是成為算法科學(xué)家或架構(gòu)師而是快速將AI能力與具體業(yè)務(wù)場(chǎng)景結(jié)合創(chuàng)造價(jià)值。那么熟悉幾個(gè)主流的低代碼/AI開(kāi)發(fā)平臺(tái)理解它們的能力邊界和集成方式學(xué)會(huì)“像甲方一樣思考并快速驗(yàn)證需求”可能是一項(xiàng)比精通某種編程語(yǔ)言更立竿見(jiàn)影的技能。這五個(gè)小時(shí)我并沒(méi)有學(xué)會(huì)寫代碼但我學(xué)會(huì)了如何“駕駛”一套強(qiáng)大的工具去實(shí)現(xiàn)我的創(chuàng)意。當(dāng)技術(shù)的大門以這種方式打開(kāi)快樂(lè)確實(shí)屬于每一個(gè)能清晰表達(dá)需求的“甲方”。