感覺程序員要被 AI 淘汰了?學(xué)什么才有機會?
?? 推薦觀看視頻版:https://www.bilibili.com/video/BV1i9Z8YhEja
AI 會淘汰程序員么?
我的答案是 “會”。
AI 會不會淘汰程序員?這是學(xué)編程的朋友們非常關(guān)注的問題,我也一樣,因為如果程序員被淘汰了,那我這個程序員博主也就光榮退休了。
“你講編程還有個毛用?你做教程還給誰看?給 AI 看嗎?”
“AI 自己都能生成教程了,自己都能自產(chǎn)自銷進化升級了,還要你?”
我覺得 AI 會淘汰很多程序員,但是程序員這個崗位不會消失。為什么呢?
假設(shè) AI 是個能獨立思考、有手有腳的數(shù)碼寶貝。它很強,你讓它寫代碼,它也能寫,寫得還比人更快更好;但是,它要是不聽話,程序跑不起來、多寫幾個 Bug 都是小事,搞不好把你整個電腦都給燒了。而且一旦 AI 搞砸了、黑化了,往你的代碼里加點小廣告、加點 “老八秘制小漢堡”,誰跟著倒霉???還不是咱們這些使用者嘛?畢竟 AI 又不能代替人類去坐牢對吧。
而且你想,當(dāng)年汽車取代馬車,雖然車夫被淘汰,但是卻催生了司機這個新崗位!
所以想不被 AI 淘汰,必須要把自己的經(jīng)驗和 AI 融合,駕馭 AI 更快地完成工作。以后程序員將不再是碼農(nóng),而是 AI 操控師。
下面我會發(fā)起《AI 程序員改造計劃》,給大家分享 AI 時代下,程序員必須學(xué)習(xí)的知識。是我這兩年半積累的經(jīng)驗,哪怕你之前完全沒接觸過 AI,看完后對 AI 的了解也會超過 90% 的同學(xué),也就不用擔(dān)心被淘汰了。
要分享的內(nèi)容包含 4 大部分,最后一部分【AI + 編程】是最值得學(xué)習(xí)的。別的博主不會把這些東西一次性講完,干貨很多,建議收藏起來慢慢看~
一、AI 核心概念
首先,我會通過帶大家實操一個主流的 AI 應(yīng)用開發(fā)平臺 Dify,把 AI 的核心概念串聯(lián)起來,更高效直觀地帶大家理解。
首先進入平臺,創(chuàng)建一個 AI 應(yīng)用,然后進入到了 AI 對話界面。
首次使用時,我們要選擇 大模型(LLM)。大模型是 AI 的大腦,是指具有海量參數(shù)的人工智能模型,通過大規(guī)模的預(yù)訓(xùn)練獲得廣泛的知識和能力。
不同大模型的參數(shù)規(guī)模、處理能力、接受的對話長度是不一樣的。
選擇大模型后,我們可以設(shè)置參數(shù)來調(diào)整大模型的輸出,比如 溫度 可以控制模型輸出的隨機性,溫度值越高,模型輸出越隨機多樣;溫度值越低,輸出越確定保守。
下面我們來和 AI 進行對話,輸入給 AI 的內(nèi)容我們稱為 提示詞 Prompt,用來引導(dǎo)模型生成特定內(nèi)容或執(zhí)行特定任務(wù),提示詞的質(zhì)量直接決定了 AI 輸出的準確度。
提示詞又可以分為系統(tǒng)提示詞和用戶提示詞,系統(tǒng)提示詞可以整體約束 AI 輸出的內(nèi)容,一般需要提前設(shè)置;用戶提示詞則是用戶自主輸入的內(nèi)容,隨用隨輸。
我們進行一次對話后,會發(fā)現(xiàn)對話下方展示了 “花費 Token”。
看到 “花費” 很多同學(xué)就慌了,啥是 Token ???Token 貴不貴啊?
Token 是大語言模型處理文本的基本單位,可能是單詞或標(biāo)點符號,模型的輸入和輸出都是按 Token 計算 的,一般 Token 越多,成本越高、并且輸出速度越慢。不同模型的計費都不太一樣,一般 100 萬 Token 要幾十塊錢吧。
讓我們再來添加一個大模型,谷歌的 Gemini,這次它讓我輸入 API Key,不讓我免費用了。沒事,我們?nèi)ゴ竽P凸俜饺ド暾堃粋€調(diào)用秘鑰,輸入過來即可,之后的每次扣費都會記在這個 API Key 上。
模型添加成功后,可以看到 Gemini 也支持非常多不同的大模型,比如標(biāo)準版和 Lite 輕量版。
可以將輕量版簡單地理解為蒸餾版本。在實際應(yīng)用中,大模型可能因資源需求高而難以部署。采用 模型蒸餾,將復(fù)雜大模型的知識轉(zhuǎn)移到更小模型中,就可以在保持模型性能的同時,減小模型體積,降低推理成本。
有些模型是具備 多模態(tài) 能力的,多模態(tài)大模型能夠同時理解和處理多種類型的信息,比如文本、圖像、音頻和視頻,實現(xiàn)圖生文、文生圖、文生視頻等更智能的應(yīng)用。
有些大模型還具備 文檔解析 的能力,可以上傳一個 PDF 文件作為 上下文信息,交給 AI 去總結(jié)。還記得幾年前有個很火的爆款產(chǎn)品 ChatPDF,現(xiàn)在人人都能實現(xiàn)了。
但有時,大模型可能缺少了某些信息,比如讓 AI 總結(jié)魚皮寫的《保姆級寫簡歷指南》,它給的信息就不準確,怎么辦呢?我們可以開啟知識庫功能,背后是 RAG 檢索增強生成 技術(shù),來利用外部知識庫給 AI 補充知識。
首先創(chuàng)建知識庫,上傳知識文檔:
對文本進行切分,可以自己設(shè)置分塊的規(guī)則:
然后利用 Embedding 嵌入 技術(shù),將文本、圖像等數(shù)據(jù)轉(zhuǎn)換為向量表示,并寫入到向量數(shù)據(jù)庫中。用戶向 AI 提問時,會將問題轉(zhuǎn)換成向量,從知識庫中檢索和問題相關(guān)的信息,再將這些信息和問題一起輸入大模型進行處理,使大模型的回答更準確。
好,這樣我們的 AI 應(yīng)用就做完了,可以發(fā)布給別人用,也可以通過 API 接口,在自己的代碼程序中通過網(wǎng)絡(luò)請求來調(diào)用。
剛剛我們只是牛刀小試,做了個聊天助手罷了。但實際上現(xiàn)在 AI 的應(yīng)用已經(jīng)升級為 智能體 了。智能體是能夠感知環(huán)境、進行推理、制定計劃、做出決策并自主采取行動來實現(xiàn)目標(biāo)的 AI 系統(tǒng)。
我們可以給智能體提供 工具,比如網(wǎng)頁搜索、查詢天氣、調(diào)用數(shù)據(jù)庫等等,讓智能體完成更復(fù)雜的任務(wù)。安裝工具后,提供給智能體,它就會在需要的時候使用這個工具,比如從網(wǎng)上檢索到內(nèi)容,進行總結(jié)后再回復(fù)。這樣一來,AI 的應(yīng)用范圍和能力邊界將會是無限大。
當(dāng)然,如果你用的 AI 大模型是個睿智,它可能不會用工具,所以我建議給智能體選用思考能力更強的推理模型。有些模型會使用 思維鏈(CoT)和 ReAct 技術(shù),讓模型先思考問題、推理分析并提出行動計劃,然后再行動,再基于結(jié)果進一步推理。并且中間步驟和思考過程是公開可見的,讓我們能夠理解模型是如何得出結(jié)論的,讓整個推理過程更透明。
- 思維鏈 CoT:在處理復(fù)雜問題時,模型直接給出答案可能缺乏邏輯性和可解釋性。思維鏈技術(shù)(Chain of Thought, CoT)通過讓模型詳細介紹中間步驟和推理過程,使人們能夠理解模型是如何得出結(jié)論的,讓整個推理過程更透明。
- ReAct:結(jié)合推理(Reason)和行動(Act)的 AI 開發(fā)范式,模型先思考問題,推理分析并提出行動計劃,然后執(zhí)行行動,再基于結(jié)果進一步推理。這種循環(huán)能使 AI 能夠更有效地解決復(fù)雜問題。
有時,單一的智能體并不能完成我們的任務(wù),比如自動生成 100 個短視頻、自動做個游戲并發(fā)布上線。這時我們可以使用 智能體工作流(Agentic Workflow),可以通過規(guī)劃和編排,讓智能體自由搭配功能,自動化實現(xiàn)各種復(fù)雜的任務(wù)。有點像可視化編程。
最后再分享一個最近很火的概念,叫 MCP(Model Context Protocol) 模型上下文協(xié)議,用于實現(xiàn) AI 與外部工具或數(shù)據(jù)的標(biāo)準化交互。
簡單來說,利用 MCP 服務(wù),我們可以更方便地給 AI 集成不同的工具和數(shù)據(jù),增強 AI 應(yīng)用的功能。首先安裝 MCP Agent 策略,讓智能體支持調(diào)用 MCP:
然后可以去 MCP 大全網(wǎng)站找到我們需要的 MCP 服務(wù),比如查詢當(dāng)前時間。
再回到智能體工作流中,填寫 MCP 服務(wù)器地址、調(diào)用 MCP 的指令和查詢條件等信息,AI 就可以在需要的時候向 MCP 發(fā)送請求來完成數(shù)據(jù)啦。
OK,AI 核心概念講完了,看到這里,你應(yīng)該就超過了 70% 的同學(xué)。
二、常用 AI 工具
如今 AI 相關(guān)的工具百花齊放,像我也精心整理過幾十個主流的 AI 工具,覆蓋 AI 對話、寫作、圖像、視頻、音頻、辦公、編程等各個應(yīng)用場景。
哇,這么多工具,看得眼都花了!不過別擔(dān)心,我們不必都去學(xué)習(xí)。
下面我會著重為大家分享在程序員日常工作中非常實用的一整套工具鏈,如果你還不滿足,想學(xué)習(xí)更多工具,可以看看我 免費開源的 AI 知識庫,里面還有很多 AI 使用技巧、行業(yè)資訊、應(yīng)用場景、資源干貨的分享哦。
1、開發(fā)類工具
日常問題解決與知識搜索 - AI 對話產(chǎn)品
一些簡單的問題和內(nèi)容搜索可以直接使用 AI 對話產(chǎn)品來搞定,比如 DeepSeek、元寶、豆包、通義千問、文心一言、Kimi、GPT、Claude。像我自己一般會同時打開好幾個網(wǎng)站一起用,挑選最合適的回答。覺得麻煩的話,也可以嘗試下網(wǎng)友自制的 聚合 AI 應(yīng)用,能直接在一個聊天框里和所有主流大模型對話。
小項目與新項目開發(fā) - Cursor
如果要開發(fā)小項目或新項目,我建議使用 Cursor,一款專為編程打造的 AI 工具。新建一個文件夾,打開 AI 對話框,選擇 Agent 智能體模式和大模型,然后輸入一段提示詞,接下來只需默默等待,AI 就會自主幫你生成一個完整的網(wǎng)站,真的一行代碼都不用寫!
這也就是為什么現(xiàn)在突然有了那么多奇奇怪怪大開腦洞的應(yīng)用,像我之前分享過的什么賽博拉屎,有了 Cursor,人人都能搞網(wǎng)站了。
老項目與大項目維護 - AI IDE 插件
不過對于老項目或者大項目的開發(fā),AI 更適合作為輔助,我會選擇在主流開發(fā)工具(比如 VSCode、JetBrains IDE)中安裝插件來使用 AI,比如智譜 CodeGeex、JetBrains Assistant、通義靈碼、GitHub Copilot 等。
這些工具的使用方式都差不多,可以將項目代碼作為上下文信息,生成補全代碼、分析錯誤信息改 Bug、解釋代碼、生成單元測試、生成提交信息等等,全部在 IDE 內(nèi)完成,不用來回跳轉(zhuǎn)到其他 AI 產(chǎn)品,開發(fā)效率會更高。
其他開發(fā)場景
日常開發(fā)一般使用上面這些工具就夠了,如果你有一些特殊需求,也可以使用對應(yīng)的 AI 工具來解決。
想更高效地管理數(shù)據(jù)庫,可以使用 Chat2DB,借助 AI 一句話完成數(shù)據(jù)管理、SQL 生成、數(shù)據(jù)分析和可視化。
想對 API 接口進行測試,可以使用 PostMan,借助 AI 快速生成不同場景下的測試用例和接口文檔。
想提交代碼或部署項目,可以使用 Warp AI,自動幫你把自然語言轉(zhuǎn)換為正確的命令并執(zhí)行,再也不用記憶復(fù)雜的命令,簡化了終端操作。
2、寫作類工具
程序員的工作除了開發(fā)之外,也離不開寫文檔和作圖。
寫作與文檔編寫 - 語雀 AI
團隊協(xié)作文檔我用的比較多的還是語雀,本身功能就比較豐富,Markdown 語法寫文章、嵌入畫板等工具、一鍵進入演講模式等等?,F(xiàn)在它內(nèi)嵌了 DeepSeek 大模型和 AI 助手功能,可以幫你快速完善豐富指定內(nèi)容、改寫口吻、總結(jié)轉(zhuǎn)寫內(nèi)容,做筆記也是比較合適的。
作圖 - 豆包 + Mermaid
程序員在寫技術(shù)文檔時,一般會通過各種流程圖、架構(gòu)圖來讓文檔更好理解,看起來也更高大上。有了 AI 后,很多圖例不用自己手繪了,我可以直接把作圖的信息提供給豆包或者其他 AI,讓它生成 Mermaid 文本作圖語法,接下來就可以直接下載圖片、或者把生成的代碼放到 Mermaid 渲染工具中,就搞定了,非常方便。
值得一提的是,現(xiàn)在有些 AI 大模型比如 Gemini 已經(jīng)原生支持多模態(tài)能力,可以直接生成圖文混排的文章,再發(fā)展發(fā)展估計能直接根據(jù)代碼生成有圖有文的技術(shù)方案了吧。
OK,常用 AI 工具分享完了,看到這里,你應(yīng)該就超過了 80% 的同學(xué)。
三、AI 使用技巧
其實現(xiàn)在很多程序員朋友對 AI 還是持懷疑態(tài)度的,覺得 AI 是不是只能做點兒小網(wǎng)站、小項目。我之前也是這么想的,直到我純用 AI、完全不寫代碼地做了一個有幾萬行代碼的大項目,我才發(fā)現(xiàn) AI 的進化,遠比我的想象更可怕。
當(dāng)然,想用 AI 做大項目,還是有很多技巧的。為啥使用相同的 AI 工具,有同學(xué)能做出來網(wǎng)站,有同學(xué)只能做出來一堆 Bug 呢?這一部分,我們就來解決一個問題 —— 如何讓 AI 生成的代碼更準確?
1、優(yōu)化 Prompt
Prompt 的質(zhì)量直接決定了 AI 生成代碼的準確性,也正因如此,才有了 Prompt 工程的概念、市面上才出現(xiàn)了提示詞工程師這個崗位。
首先我們要掌握最基本的 Prompt 優(yōu)化技巧,比如明確 AI 的角色、提供具體的細節(jié)要求、拆解任務(wù)、提供示例等等,這里 智譜 AI 開放平臺的文檔 總結(jié)得不錯,大家可以學(xué)習(xí)下。
此外,我更建議先把自己手寫的 Prompt 扔給其他 AI,讓它幫我生成一段質(zhì)量更高的、結(jié)構(gòu)化的需求文檔,再喂給 Cursor 去生成網(wǎng)站,效果會更好。
完整的需求文檔通常包括:
- 明確項目背景和目標(biāo)
- 詳細列出功能要求和技術(shù)棧
- 指定代碼風(fēng)格和架構(gòu)模式
- 提供示例和參考資料
- 明確限制條件和邊界場景
2、復(fù)雜項目的生成技巧
對于復(fù)雜的項目,想一步到位是不現(xiàn)實的,可以采用分步迭代的策略:
- 先利用 Cursor 的 Agent 模式 + 高級推理模型生成基礎(chǔ)項目框架,暫時不管功能好不好用,確保能夠運行項目即可
- 劃分模塊和功能點,依次向 AI 提問,逐步實現(xiàn)核心功能并驗證是否可用。
- 在保證不影響功能的前提下,優(yōu)化實現(xiàn)細節(jié)。
聽起來很簡單,但實際操作時,大家經(jīng)常會遇到 AI 輸出的內(nèi)容驢頭不對馬嘴、生成了一個新功能后原來的功能就不能用了、改了一個 Bug 又來 3 個 Bug 的情況。怎么辦呢?
教你幾招:
1)項目模塊化。由于 AI 的腦容量不大,能接受的上下文是有限的,隨著你的項目信息量不斷增大,它有可能忘記之前的信息,導(dǎo)致生成的代碼錯誤。所以我們要把項目的功能盡可能隔離開,把一個大項目分割成多個小項目,讓 AI 生成某個功能時只需要關(guān)注一小部分上下文,得到的結(jié)果會更精準。
舉個例子,開發(fā)一個電商系統(tǒng),可以把商品管理模塊獨立出來,當(dāng)需要 AI 生成添加商品功能的代碼時,只需要提供像商品表的字段設(shè)計、添加商品的業(yè)務(wù)邏輯規(guī)則,不需要把支付結(jié)算、用戶會員等關(guān)聯(lián)不大的功能作為上下文提供給 AI。
2)限定修改范圍。AI 生成的代碼沒有那么可控,經(jīng)常改 A 功能的同時把 B 功能也順帶修改了。這個問題很好解決,只要在提示詞中限定修改范圍即可,比如:
僅修改 services/order.java 中的 CreateOrder 方法:
1. 添加分布式鎖防止超賣
2. 保持現(xiàn)有日志格式
3. 不要改動其他文件
3)抽象和復(fù)用。假如我們要讓 AI 生成 2 個布局一模一樣的頁面,它有的時候會很死板,生成完頁面 A 之后,復(fù)制一遍頁面 A 的代碼來生成頁面 B。這樣非常不利于大項目的生成和維護,以后 AI 改了頁面 A,說不定頁面 B 就忘了改,跟人來開發(fā)一樣。所以我們需要留個心眼兒,適當(dāng)?shù)馗嬖V AI:請幫我抽象 XX 頁面、XX 代碼為可復(fù)用的組件。這樣也能減少整個項目的代碼量,也有助于減輕 AI 上下文記憶的負擔(dān),讓生成結(jié)果更準確。
4)版本控制。建議利用 Git 版本控制工具對代碼進行管理,每正確生成一個功能后都提交一次版本,在每次 AI 生成新代碼之后人工對比一下改動的文件,出了問題也能快速還原到之前的版本,防止代碼丟失。
3、其他技巧
掌握了上面這些,是完全可以利用 AI 生成復(fù)雜大項目的。還有一些其他小技巧,大家自己看一看就好:
- 注意操作系統(tǒng):AI 更喜歡 Linux 或 Mac 系統(tǒng)的終端,執(zhí)行命令的能力更強。如果使用 Windows 系統(tǒng),可以通過安裝 Linux 子系統(tǒng)(WSL)來替代自帶的終端?;蛘咴诤?AI 對話的上下文中明確告訴它使用 Windows 系統(tǒng)的終端命令,否則可能 AI 給的很多命令都是無法運行的。
- 人工控制:AI 有時會因缺乏關(guān)鍵上下文信息、或者自身能力的不足而陷入循環(huán),這時就有必要人工介入了。可以嘗試手動指定上下文、更換 Prompt 來引導(dǎo) AI。
- 多元 AI 協(xié)作:不同 AI 大模型擅長不同任務(wù),如果單一大模型無法正常完成工作,可以利用其他大模型生成 “教 AI 做事的方法和指令”,增加解決問題的可能性。
OK,AI 使用技巧還是挺多的,建議大家可以多去練習(xí)練習(xí),看到這里,你應(yīng)該就超過了 90% 的同學(xué)。
四、AI + 編程
最后這部分最重要,作為程序員,咱們不光要會用 AI 工具、能利用 AI 開發(fā)項目,還要能夠自主開發(fā) AI 項目,把 AI 的能力接入到自己的項目中。
有句話說得好:AI 時代,所有的傳統(tǒng)業(yè)務(wù)都值得利用 AI 重塑一遍。
所以現(xiàn)在很多公司都在招能夠開發(fā) AI 項目的程序員,這也是我們的機會。那么我們要學(xué)習(xí)哪些知識和技術(shù),才能成為企業(yè)招聘的香餑餑呢?
1、AI 開發(fā)框架
首先從技術(shù)角度出發(fā),我們要學(xué)習(xí)主流的 AI 開發(fā)框架,比如 Spring AI、LangChain4j 和 LangGraph。
Spring AI 和 LangChain4j 的作用是類似的,都提供了很多現(xiàn)成的方法來幫我們提高開發(fā) AI 應(yīng)用的效率。比如快速對接大模型、保存會話上下文、對接向量數(shù)據(jù)庫實現(xiàn) RAG 等等。
區(qū)別是 Spring AI 更容易和主流 Java 開發(fā)框架 Spring 集成,上手難度較低;而 LangChain4j 更靈活,更適合開發(fā)復(fù)雜的智能體。比如在開發(fā)一個智能文檔分析系統(tǒng)時,利用 LangChain4j,智能體能夠自動讀取文檔內(nèi)容,調(diào)用搜索引擎獲取相關(guān)背景知識,然后根據(jù)任務(wù)需求,將文檔信息與外部知識結(jié)合,生成分析報告。
不過我的建議是,二個都要學(xué),先從 Spring AI 學(xué)起,再學(xué) LangChain4j 會更簡單。
LangGraph 框架會更復(fù)雜一些,它用圖的結(jié)構(gòu)來組織和管理 AI 相關(guān)的工作流,適合構(gòu)建有狀態(tài)、多代理的企業(yè)級 AI 大項目。打個比方,我們有多個 AI 智能體,分別負責(zé)生成文字、生成圖片、組合文字和圖片,那么 LangGraph 像是負責(zé)人,可以安排這些智能體的工作順序,一起搞大事。
用一個表格來總結(jié)這幾種技術(shù):
Java 企業(yè)應(yīng)用 | Spring AI | 無縫集成 Spring 生態(tài) |
智能體開發(fā) | LangChain4j | 完整 Agent 工具鏈 |
復(fù)雜工作流 | LangGraph | 可視化編排 |
2、AI 集成
開發(fā) AI 應(yīng)用的前提是要有大模型,但是大模型要消耗算力才能運行,算力就是金錢,從哪兒搞來大模型呢?
2 種方法,使用 AI 云服務(wù)、或者本地部署大模型。
AI 云服務(wù)
AI 云服務(wù)就是其他企業(yè)為我們部署了 AI 大模型,通過 API 接口的方式提供給我們使用,按量計費。
比如阿里云百煉、火山引擎、硅基流動、Open AI 等等。
咱們程序員需要重點掌握的是:
- 如何通過 API 接入云服務(wù)?
- 如何使用 AI 云服務(wù)來創(chuàng)建智能體和配置參數(shù)?
- 如何選擇合適的云服務(wù)?這就需要關(guān)注各家云服務(wù)的計費模式和服務(wù)質(zhì)量
- 如何更低成本、更穩(wěn)定地使用云服務(wù)?這就需要我們學(xué)習(xí) Prompt 工程和高可用技術(shù)
本地部署大模型
本地部署大模型對于很多企業(yè)來說也是剛需,數(shù)據(jù)無需上傳至云端,能夠有效保障數(shù)據(jù)的安全性和隱私性,尤其適用于醫(yī)療、金融等對數(shù)據(jù)安全極為敏感的行業(yè)。
本地部署大模型其實并不難,只需要使用 Ollama 工具 就可以一鍵部署各種主流的開源模型。
唉,但部署大模型的難度不在于技術(shù)啊,主要是沒算力?。〔蝗晃乙步o我們團隊的 **** 和 *** 都來一套魚皮大模型了。
3、AI 領(lǐng)域業(yè)務(wù)
企業(yè)中的 AI 業(yè)務(wù)開發(fā),可不僅僅是來個 AI 對話就夠了,咱們還要掌握幾種更復(fù)雜的業(yè)務(wù)開發(fā),比如 RAG 知識庫、多模態(tài)、MCP 服務(wù)、ReAct 智能體。
RAG 知識庫
很多公司都有屬于自己的業(yè)務(wù)知識和文檔,會構(gòu)建自己的問答系統(tǒng)或客服,這就要用到 RAG 檢索增強生成技術(shù)。先通過文本嵌入模型,將企業(yè)各種文檔轉(zhuǎn)化為向量,存入向量數(shù)據(jù)庫;當(dāng)用戶提問時,系統(tǒng)在向量數(shù)據(jù)庫檢索相關(guān)向量數(shù)據(jù),找到最相似文檔片段,和問題一起輸入大模型處理。這樣一來,大模型能夠基于企業(yè)真實數(shù)據(jù)作答,更準確貼合實際。
關(guān)于 RAG 能學(xué)的知識可太多了,比如主流的向量數(shù)據(jù)庫 Milvus 和 PGVector、文檔的抽取 / 轉(zhuǎn)換 / 加載、索引的構(gòu)建、查詢策略的優(yōu)化等等。這也是 AI 企業(yè)面試的重點!
多模態(tài)
多模態(tài)也是主流的 AI 業(yè)務(wù)場景,即融合文本、圖像、音頻、視頻等多種不同類型的數(shù)據(jù)模態(tài),從而提高產(chǎn)品使用的易用性,做出更多有創(chuàng)意的功能。
比如做個智能導(dǎo)購系統(tǒng),顧客既可以輸入文字描述想要的商品,系統(tǒng)也能識別顧客上傳的商品圖片,甚至可以理解顧客通過語音提出的購物需求。系統(tǒng)會將這些來自不同模態(tài)的數(shù)據(jù)進行整合處理,在商品數(shù)據(jù)庫中精準匹配符合要求的商品,并將結(jié)果反饋給顧客。
想開發(fā)多模態(tài)應(yīng)用,咱們要學(xué)習(xí)模態(tài)轉(zhuǎn)換技術(shù),比如文本轉(zhuǎn)語音(TTS)、語音轉(zhuǎn)文本(STT)、光學(xué)字符識別(OCR)等,不過這些都有現(xiàn)成的工具庫或者云服務(wù),掌握調(diào)用方法就行。還可以通過 Spring AI、LangChain 等 AI 開發(fā)框架調(diào)用不同模態(tài)的大模型,降低開發(fā)難度。
MCP 服務(wù)
MCP(Model Context Protocol,模型上下文協(xié)議)可以理解為提供給 AI 的各種服務(wù),AI 利用這些服務(wù)能夠?qū)崿F(xiàn)更強大的功能。
如何在項目中接入別人的 MCP 服務(wù),來增強自己的項目能力;以及如何開發(fā)自己的 MCP 服務(wù),讓別人的項目使用,都是必須要學(xué)習(xí)的?,F(xiàn)在使用 Spring AI 等開發(fā)框架就可以開發(fā) MCP 服務(wù),而且甚至有高手做了個 網(wǎng)站,能夠一句話創(chuàng)建自己的 MCP 服務(wù),這真的是泰褲辣。
ReAct 智能體
ReAct 是一種構(gòu)建智能體的開發(fā)范式,目的是打造能夠依據(jù)推理結(jié)果自主采取行動的智能體。
它的開發(fā)過程會涉及到任務(wù)規(guī)劃、工具調(diào)用、交互 I/O、異常處理等知識。尤其是工具調(diào)用,可以通過 Function Call 或 MCP 實現(xiàn)像天氣查詢、文件讀寫、網(wǎng)頁運行、信息檢索、終端命令執(zhí)行等功能。
就拿開發(fā)視頻網(wǎng)站為例,用戶說了 “幫我開發(fā)一個 Dilidili 視頻網(wǎng)站并部署上線” 的指令時,智能體首先會深入理解任務(wù)內(nèi)容,通過推理梳理出一系列執(zhí)行步驟,包括明確需求、設(shè)計方案、搭建框架、生成代碼、部署上線等。接下來,智能體就會調(diào)用相應(yīng)的工具來執(zhí)行這些行動。如果執(zhí)行過程中遇到問題,還會詢問我們的意見,重新推理并及時調(diào)整行動方案。
4、AI 工具鏈
最后就是我們開發(fā) AI 項目時可能會用到的一些平臺、工具和類庫了。
低代碼平臺
比如主流的低代碼 AI 開發(fā)平臺 Dify,可以讓我們通過拖拉拽的方式構(gòu)建自己的 AI 智能體,創(chuàng)建知識庫并導(dǎo)入自己的文檔,搭建復(fù)雜的工作流等等。就哪怕你不會寫代碼,都能用它搞出復(fù)雜的 AI 應(yīng)用。
工具庫
還有一些開發(fā) AI 智能體時會用到的工具庫,比如:
- Apache Tika,功能強大的文件解析器工具庫,支持解析 PDF、Word、Excel、PowerPoint 等各種文檔,然后提供給 AI 作為知識。
- Playwright,用于模擬瀏覽器行為的工具庫,AI 需要運行網(wǎng)頁、抓取網(wǎng)頁數(shù)據(jù)、自動化測試時,它都能派上用場。
- JSON 格式解析庫 GSON 和 Kryo
- HTML 文檔解析庫 jsoup
這些類庫基本沒什么學(xué)習(xí)成本,要用的時候看文檔就好了。
部署工具
項目最終是要部署上線的嘛,所以我們還要掌握高效的部署工具,讓 AI 應(yīng)用從開發(fā)環(huán)境順利過渡到生產(chǎn)環(huán)境,為用戶提供穩(wěn)定服務(wù)。
如果不在意價格、追求穩(wěn)定的話,還是優(yōu)先選擇大廠提供的云服務(wù)來部署項目。但如果是個人學(xué)習(xí)使用、想快速上線自己的 AI 小應(yīng)用,可以試試下面這些平臺:
- Vercel:適合前端應(yīng)用的部署平臺,支持自動構(gòu)建、在線瀏覽、CDN 分發(fā),而且還免費提供可訪問的域名
- Sealos:云原生應(yīng)用管理平臺,支持 Kubernetes 集群管理,為 AI 應(yīng)用提供容器化部署環(huán)境,適合需要彈性伸縮的 AI 服務(wù)
- Railway:能讓開發(fā)人員輕松部署 Docker 容器,無需操心服務(wù)器配置與運維,且自帶自動化構(gòu)建工具、環(huán)境管理能力等
當(dāng)然,想快速部署服務(wù),上面提到的 Docker 容器化技術(shù)也是必須要學(xué)習(xí)的,就像 APP 的安裝包一樣,能夠輕松分發(fā)和部署你的應(yīng)用程序。
其實我有一種假設(shè),如果 AI 足夠穩(wěn)定、并且一句提示詞就能生成完整應(yīng)用的話,是不是可以直接根據(jù) Prompt 來部署項目啊。扯遠了扯遠了,當(dāng)我沒說吧~
怎么樣,要學(xué)的東西還是挺多的吧,有沒有感覺信息量爆炸。別擔(dān)心,上面這些都是實踐,咱還得學(xué)一些理論呀,比如某個框架的底層原理、調(diào)優(yōu)技巧、算法實現(xiàn)等等。不過真的別擔(dān)心,我也在持續(xù)學(xué)習(xí)這些內(nèi)容并且會持續(xù)分享給大家,以上我提到的東西,在我后續(xù)的 項目教程 中,都會講到,期待的話可以關(guān)注一下。
尾聲
OK,以上就是魚皮 AI 指南的內(nèi)容,我覺得能有 1% 的同學(xué)看完就不錯了。
如果你問我 AI 會淘汰程序員么?我的答案仍然是 “會”。因為程序員本身就是需要持續(xù)學(xué)習(xí)和實踐來保持競爭力的,只要大家能夠?qū)W會我提到的這些知識,多關(guān)注 AI 的前沿資訊,相信 AI 不會搶走咱們程序員的飯碗,而是成為咱們改造世界的杠桿。
在這里也推薦一下我們免費公開的 AI 知識庫
,匯總收集了最新最全的 DeepSeek 知識,幫助大家更好地適應(yīng) AI 時代的到來。
魚皮的 AI 知識庫:**************************
里面除了各種教程資料外,也重點給大家分享了很多 AI 工具的具體應(yīng)用場景,比如接入辦公軟件提升效率,幫你做自媒體,AI 批量制作視頻等。希望幫助大家舉一反三,找到新的思路。
更多
?? 編程學(xué)習(xí)交流:****
?? 簡歷快速制作:老魚簡歷
?? 面試刷題神器:***