在這個(gè)月的月初,Go 官方公布了 1 月、2 月做的 Go 開(kāi)發(fā)者調(diào)查結(jié)果。本次調(diào)查的主要關(guān)注點(diǎn)是:開(kāi)發(fā)人員如何開(kāi)始將 Go(或其他語(yǔ)言)用于 AI(人工智能)相關(guān)場(chǎng)景。以及正在學(xué)習(xí) Go 或希望擴(kuò)展 Go 技能的開(kāi)發(fā)人員面臨的特殊挑戰(zhàn)有哪些。
老樣子,我會(huì)摘取其中我認(rèn)為有了解意義的 TOP3 分享給大家。
使用 Go 最大的挑戰(zhàn)
在本輪調(diào)查中,我們引入了封閉式問(wèn)題,提供了往年最常見(jiàn)的回答作為選擇。在形式上,我們會(huì)隨機(jī)向受訪者展示開(kāi)放式或封閉式問(wèn)題。
在封閉式問(wèn)題中,選擇最多的是:
1、學(xué)習(xí)如何有效地編寫(xiě) Go(15%)。
2、處理錯(cuò)誤處理的冗長(zhǎng)(13%)。
封閉式問(wèn)題
有趣的是,13% 的受訪者表示他們?cè)谑褂?Go 時(shí)沒(méi)有遇到任何困難的挑戰(zhàn)。
圖片
這與我們?cè)陂_(kāi)放式問(wèn)題中看到的情況一致:
1、11% 的受訪者在回答中提到學(xué)習(xí) Go、學(xué)習(xí)最佳實(shí)踐或文檔問(wèn)題是他們面臨的最大挑戰(zhàn)。
2、另有 11% 的受訪者提到了錯(cuò)誤處理問(wèn)題。
Go + AI 系統(tǒng)的使用情況
在使用生成式人工智能(GenAI)系統(tǒng)的 Go 開(kāi)發(fā)者中,絕大多數(shù)(81%)表示使用了 OpenAI 的 ChatGPT 或 DALL-E 模型。
開(kāi)源模型的使用率也很高,大多數(shù)受訪者(53%)至少使用了 Llama、Mistral 或其他開(kāi)源軟件模型中的一種。
圖片
受訪者正在構(gòu)建的最常見(jiàn)服務(wù)包括:摘要工具(56%)、文本生成工具(55%)和聊天機(jī)器人(46%)。
圖片
用戶表示這些 AI 用例中有許多是面向內(nèi)部的,例如:根據(jù)企業(yè)內(nèi)部文檔訓(xùn)練的聊天機(jī)器人,旨在回答員工的問(wèn)題。對(duì)面向外部的人工智能功能提出了一些擔(dān)憂,其中最主要的是可靠性、準(zhǔn)確性、法律法規(guī)等問(wèn)題。
另外有證據(jù)表明,Go 已經(jīng)被用于 GenAI 領(lǐng)域,而且似乎還有更多的需求。大約 1/3 正在構(gòu)建人工智能功能的受訪者告訴我們。
圖片
他們已經(jīng)在使用 Go 完成各種 GenAI 任務(wù),包括:新功能原型開(kāi)發(fā)和與 LLM 集成服務(wù)。
在我們認(rèn)為 Go 是特別合適的工具的兩個(gè)領(lǐng)域:ML/AI 系統(tǒng)(37%)和托管 ML/AI 模型的 API 服務(wù)(41%)。這一比例略有上升。
Go 團(tuán)隊(duì)工作優(yōu)先級(jí)
在以往過(guò)去收集的 Go 開(kāi)發(fā)者反饋中,大家最關(guān)心的是:最關(guān)心的是資源成本和安全問(wèn)題。
如下圖:
圖片
為了解決對(duì)資源成本的擔(dān)憂,Go 團(tuán)隊(duì)將會(huì)繼續(xù)優(yōu)化 Go 和增強(qiáng)配置文件引導(dǎo)優(yōu)化 (PGO)。
在安全方面的擔(dān)憂,受訪者最擔(dān)心的問(wèn)題是:不安全的編碼實(shí)踐(42%)和系統(tǒng)配置錯(cuò)誤(29%)。
如下圖:
圖片
Go 團(tuán)隊(duì)的主要結(jié)論是:開(kāi)發(fā)者對(duì)在編寫(xiě)代碼時(shí)幫助發(fā)現(xiàn)和修復(fù)潛在安全問(wèn)題的工具特別感興趣,將會(huì)在這一塊領(lǐng)域繼續(xù)加大研究和投入。
調(diào)查報(bào)告的亮點(diǎn)
- 開(kāi)發(fā)人員對(duì) Go 語(yǔ)言的滿意度仍然很高,93% 的受訪者表示在過(guò)去一年中對(duì) Go 語(yǔ)言感到滿意。
- 大多數(shù)受訪者(80%)表示,他們相信 Go 團(tuán)隊(duì)在維護(hù)和發(fā)展 Go 語(yǔ)言時(shí),會(huì)為像他們這樣的開(kāi)發(fā)人員 "做最好的事"。
- 在構(gòu)建人工智能驅(qū)動(dòng)的應(yīng)用程序和服務(wù)的受訪者中,他們普遍認(rèn)為 Go 是在生產(chǎn)中運(yùn)行此類應(yīng)用程序的強(qiáng)大平臺(tái)。
例如:大多數(shù)使用 AI 應(yīng)用程序的受訪者已經(jīng)使用 Go 開(kāi)發(fā),或者希望將其人工智能驅(qū)動(dòng)的程序遷移到 Go,而開(kāi)發(fā)人員遇到的最嚴(yán)峻挑戰(zhàn)與庫(kù)和文檔生態(tài)系統(tǒng)有關(guān),而不是核心語(yǔ)言和運(yùn)行時(shí)。
目前最常見(jiàn)的記錄入門路徑都是以 Python/ target=_blank class=infotextkey>Python 為中心的,這導(dǎo)致許多組織在轉(zhuǎn)向更適合生產(chǎn)的語(yǔ)言之前,都先用 Python 開(kāi)始人工智能驅(qū)動(dòng)的工作。
- 受訪者正在構(gòu)建的最常見(jiàn)的人工智能驅(qū)動(dòng)服務(wù)包括摘要工具、文本生成工具和聊天機(jī)器人。都是面向內(nèi)部使用為主。
- 實(shí)現(xiàn) Go 相關(guān)學(xué)習(xí)目標(biāo)時(shí)最常提到的挑戰(zhàn)是:缺乏時(shí)間或機(jī)會(huì)。
-
這表明在沒(méi)有具體目標(biāo)或業(yè)務(wù)案例的情況下,語(yǔ)言學(xué)習(xí)很難被優(yōu)先考慮。
-
最常見(jiàn)的挑戰(zhàn)是學(xué)習(xí)新的最佳實(shí)踐、概念和成語(yǔ),這些都是圍棋所特有的,因?yàn)榇蠖鄶?shù)開(kāi)發(fā)者來(lái)自其他語(yǔ)言生態(tài)系統(tǒng)。
總結(jié)
其實(shí)和平時(shí)工作接觸到的情況差不多,大家都會(huì)用慣用語(yǔ)言先去開(kāi)發(fā) AI 相關(guān)程序,例如:Go。然后開(kāi)發(fā)著開(kāi)發(fā)著,發(fā)現(xiàn)很多東西和輪子都在 Python 那里,尷尬得很。
面向今年(2024 年),Go 團(tuán)隊(duì)?wèi)?yīng)該會(huì)在 Go 最佳實(shí)踐、高級(jí)方面的教程使用上繼續(xù)發(fā)力。而功能方面,安全和資源成本已經(jīng)列上了日程。
最頭疼的 Go 錯(cuò)誤處理的問(wèn)題和改善,雖然一直在高呼。但 Go 團(tuán)隊(duì)顯然在 issues 清單上還沒(méi)想好怎么做。