大模型風(fēng)靡全球,無(wú)論是像GPT這樣的大語(yǔ)言模型,還是其他領(lǐng)域的AI巨頭,都成了技術(shù)界的焦點(diǎn)??墒?,問(wèn)題來(lái)了:這些強(qiáng)大的模型光是存在就夠了嗎?顯然不夠!要發(fā)揮它們的真正價(jià)值,就需要一個(gè) "中間人" 來(lái)搭建大模型與實(shí)際應(yīng)用場(chǎng)景之間的橋梁,而這個(gè)中間人,就是AI Agent(AI代理)。
AI Agent可不是單純的一個(gè)普通AI,它就像是一個(gè)全能的事務(wù)處理員,能理解、執(zhí)行并響應(yīng)不同的任務(wù)。當(dāng)我們向AI模型提出一個(gè)復(fù)雜的需求,模型給了我們一堆處理后的信息。如果沒(méi)有AI Agent來(lái)優(yōu)化和整合這些信息,我們就只能依靠自己來(lái)篩選、應(yīng)用。而AI Agent的存在,正是為了解決這一問(wèn)題——它能將大模型的復(fù)雜處理能力轉(zhuǎn)化為可操作的任務(wù)結(jié)果。
什么是AI Agent?
AI Agent的工作方式其實(shí)可以理解為一個(gè)流程化的任務(wù)處理器。它能夠接收用戶輸入,分解復(fù)雜任務(wù),調(diào)用所需資源,最后整合并返回結(jié)果。以下是它的工作步驟:
1. 用戶發(fā)起請(qǐng)求
用戶通過(guò)界面或者語(yǔ)音向AI模型發(fā)出請(qǐng)求,比如“生成一份市場(chǎng)調(diào)研報(bào)告”。這個(gè)請(qǐng)求可以是非常簡(jiǎn)單的問(wèn)題,也可以是復(fù)雜的任務(wù)。
2. AI Agent分解任務(wù)
AI Agent會(huì)首先理解這個(gè)請(qǐng)求,然后將其分解為多個(gè)子任務(wù)。例如,在市場(chǎng)調(diào)研報(bào)告的例子中,它可能會(huì)將任務(wù)拆解為“收集市場(chǎng)數(shù)據(jù)”、“分析競(jìng)爭(zhēng)對(duì)手”等子任務(wù)。這個(gè)分解的過(guò)程可以讓每個(gè)子任務(wù)更好地執(zhí)行。
3. 調(diào)用大模型及外部資源
在每個(gè)子任務(wù)下,AI Agent會(huì)根據(jù)需求調(diào)用大語(yǔ)言模型(如GPT)進(jìn)行信息生成,同時(shí)還可能連接到外部的API、數(shù)據(jù)庫(kù),甚至是其他系統(tǒng)的數(shù)據(jù)源。通過(guò)這種調(diào)用,AI Agent能獲取更加豐富和精準(zhǔn)的資源來(lái)完成任務(wù)。
4. 整合并返回結(jié)果
一旦所有的子任務(wù)都執(zhí)行完畢,AI Agent會(huì)將所有信息整合起來(lái),生成一個(gè)可操作的最終結(jié)果,并返回給用戶。例如,它將把收集到的市場(chǎng)數(shù)據(jù)和競(jìng)爭(zhēng)對(duì)手分析結(jié)果整合成一份完整的市場(chǎng)調(diào)研報(bào)告。
5. 用戶獲取最終結(jié)果
用戶最終得到一個(gè)由AI Agent處理過(guò)的結(jié)果,可以直接使用,省去了自己分析、處理數(shù)據(jù)的麻煩。
從上面的概述,我們可以把AI Agent概況為:
我們可以把AI Agent數(shù)據(jù)流簡(jiǎn)單概括如下:
走進(jìn)AI Agent
接下面我們對(duì)AI Agent的幾個(gè)組成模塊進(jìn)行簡(jiǎn)單解釋:
01、提示模板
當(dāng)我們談到AI Agent時(shí),常常會(huì)提到一個(gè)重要概念——提示工程(Prompt Engineering)。這是一個(gè)幫助大模型高效工作的技巧,它不僅是與大模型對(duì)話的關(guān)鍵,也是引導(dǎo)大模型生成準(zhǔn)確、有用的數(shù)據(jù)。
在AI Agent中,提示工程的作用就像我們跟大模型溝通的“橋梁”,把我們的意圖轉(zhuǎn)化為機(jī)器能理解的指令,讓大模型可以給出符合預(yù)期的輸出。簡(jiǎn)單來(lái)說(shuō),它幫助我們“教”大模型該如何思考及輸出我們預(yù)設(shè)的數(shù)據(jù)格式。
02、大模型
大模型是一種神經(jīng)網(wǎng)絡(luò)模型,通常由數(shù)以億計(jì)甚至千億級(jí)的參數(shù)組成(比如GPT-4)。這些模型通過(guò)對(duì)大量文本數(shù)據(jù)進(jìn)行訓(xùn)練,學(xué)會(huì)了從語(yǔ)言中捕捉模式、理解上下文關(guān)系、預(yù)測(cè)下一個(gè)詞及生成圖片、生成聲音、甚至生成具有創(chuàng)意的文本。
訓(xùn)練大模型的過(guò)程相當(dāng)復(fù)雜,它通過(guò)處理各種各樣的語(yǔ)料庫(kù)(新聞、書(shū)籍、網(wǎng)頁(yè)等),學(xué)習(xí)到人類語(yǔ)言的結(jié)構(gòu)和邏輯。這讓它能夠生成高度相關(guān)、連貫、甚至具有一定常識(shí)性和推理能力的回答,進(jìn)而實(shí)現(xiàn)自然語(yǔ)言處理的強(qiáng)大功能。
03、記憶
在AI Agent中,記憶指的是它能夠在多輪對(duì)話或一系列任務(wù)之間“記住”一些信息。這些信息可以是用戶的偏好、之前的對(duì)話內(nèi)容、執(zhí)行的任務(wù)步驟,甚至是歷史決策。這種記憶可以是短期的(比如一次對(duì)話會(huì)話中的內(nèi)容)或長(zhǎng)期的(跨多個(gè)會(huì)話,保存重要的用戶數(shù)據(jù)或偏好)。
和人類一樣,AI Agent擁有記憶的能力后,能夠更好地理解用戶的需求,追蹤上下文,提供更連續(xù)且一致的交互體驗(yàn)。例如,如果一個(gè)AI Agent記住了你喜歡的咖啡類型,下次你訂咖啡時(shí),它就能直接推薦你偏好的選項(xiàng),而不需要你每次重新說(shuō)明。
04、工具
在AI Agent中,工具的概念指的是賦予AI執(zhí)行特定任務(wù)的外部或內(nèi)部能力。這些工具讓AI Agent不僅能夠理解和生成語(yǔ)言,還能通過(guò)操作不同工具來(lái)完成復(fù)雜的任務(wù)或解決問(wèn)題。換句話說(shuō),工具是讓AI Agent從“會(huì)說(shuō)”變成“會(huì)做”的關(guān)鍵組件。
這些工具可以是API、數(shù)據(jù)庫(kù)、計(jì)算模塊、瀏覽器等具體的外部系統(tǒng),也可以是AI Agent內(nèi)置的能力(如搜索、計(jì)算、文件操作等)。工具的使用極大地?cái)U(kuò)展了AI Agent的能力,讓它能夠與外部世界互動(dòng),而不僅僅局限于對(duì)話或文字生成。
實(shí)現(xiàn)簡(jiǎn)單的客服系統(tǒng)
我們根據(jù)AI Agent的概念,來(lái)實(shí)現(xiàn)一個(gè)手機(jī)售賣的客服系統(tǒng),為了便于快速理解這些概念,我們使用Dify來(lái)實(shí)現(xiàn),Dify我們?cè)谏掀恼轮幸堰M(jìn)行安裝簡(jiǎn)介。
01、數(shù)據(jù)準(zhǔn)備
我從網(wǎng)上查詢到一些手機(jī)的報(bào)價(jià)及配置作為測(cè)試數(shù)據(jù),如下圖,把它保存為phones.xlsx,并上傳到Dify知識(shí)庫(kù)。
上傳到Dify:
點(diǎn)擊下一步:
點(diǎn)擊保存并處理:
點(diǎn)擊前往文檔,把剛上傳的文件改名為"手機(jī)列表"。
知識(shí)庫(kù)的概念:
大語(yǔ)言模型的訓(xùn)練數(shù)據(jù)一般基于公開(kāi)的數(shù)據(jù),且每一次訓(xùn)練需要消耗大量算力,這意味著模型的知識(shí)一般不會(huì)包含私有領(lǐng)域的知識(shí),同時(shí)在公開(kāi)知識(shí)領(lǐng)域存在一定的滯后性。為了解決這一問(wèn)題,目前通用的方案是采用 RAG(檢索增強(qiáng)生成)技術(shù),使用用戶問(wèn)題來(lái)匹配最相關(guān)的外部數(shù)據(jù),將檢索到的相關(guān)內(nèi)容召回后作為模型提示詞的上下文來(lái)重新組織回復(fù)。
Dify 的知識(shí)庫(kù)功能將 RAG 管線上的各環(huán)節(jié)可視化,提供了一套簡(jiǎn)單易用的用戶界面來(lái)方便應(yīng)用構(gòu)建者管理個(gè)人或者團(tuán)隊(duì)的知識(shí)庫(kù),并能夠快速集成至 AI 應(yīng)用中。你只需準(zhǔn)備文本內(nèi)容,例如:
長(zhǎng)文本內(nèi)容(TXT、Markdown、DOCX、HTML、JSONL 甚至是 PDF 文件)
結(jié)構(gòu)化數(shù)據(jù)(CSV、Excel 等)
(來(lái)源于Dify官方文檔)
02、創(chuàng)建一個(gè)Agent
根據(jù)下圖提示,我們創(chuàng)建一個(gè)Agent:
點(diǎn)擊創(chuàng)建,如下圖:
在右上角選擇gpt-4,在提示詞中輸入提示詞,在上下文中選擇我們的知識(shí)庫(kù)"手機(jī)列表":
你是一位手機(jī)售賣AI助手,專門回答客戶的關(guān)于手機(jī)方面的問(wèn)題。
請(qǐng)按照以下步驟回答:
1. 使用 “手機(jī)列表” 查詢手機(jī)信息。如果“手機(jī)列表”中有相關(guān)數(shù)據(jù),請(qǐng)返回查詢結(jié)果。
2.?如果?“手機(jī)列表”?中沒(méi)有相關(guān)數(shù)據(jù),請(qǐng)直接回答:“抱歉,我沒(méi)有找到相關(guān)的手機(jī)信息?!?/code>
3. 不要嘗試從其他來(lái)源獲取信息,如在線搜索。
在添加功能中,我們選擇添加開(kāi)場(chǎng)白:
我們?cè)谟覀?cè)底部輸入對(duì)話信息,AI客服回答了知識(shí)庫(kù)已有的信息。
03、運(yùn)行發(fā)布
點(diǎn)擊右上角的發(fā)布,我們可以運(yùn)行程序或把這個(gè)Agent集成到應(yīng)用程序。
如下可以創(chuàng)建訪問(wèn)API,集成到應(yīng)用程序中:
通過(guò)這個(gè)簡(jiǎn)單的示例,我們可以對(duì)AI Agent有個(gè)入門級(jí)的認(rèn)識(shí),對(duì)大模型應(yīng)用開(kāi)發(fā)的流程做到了解,后續(xù)我們?cè)龠M(jìn)行深入了解。