AI Agent應(yīng)用——AgentGPT技術(shù)詳解
由于chatpgt的發(fā)展,除了基礎(chǔ)的問答需求,利用chatgpt完成一系列復(fù)雜任務(wù)的需求也應(yīng)用而生,產(chǎn)生了很多關(guān)于ai agent的應(yīng)用框架,具體應(yīng)用如下圖,包括開源和商業(yè)的。
圖來自https://github.com/e2b-dev/awesome-ai-agents
得益于llm模型的強(qiáng)大能力,將llm作為大腦,ai agent可以做到根據(jù)任務(wù)目標(biāo),進(jìn)行思考,分解任務(wù),然后調(diào)用相應(yīng)工具完成任務(wù)。
一般ai agent的結(jié)構(gòu)如下:
一個(gè)agent(智能體)主要包含以下3個(gè)部分:
?(1) Perception:感知,主要就是信息的輸入,比如文本,語言等信息。?(2) Brain:這個(gè)是核心,基于llm,根據(jù)輸入信息,制定任務(wù)計(jì)劃等。?(3) Action:執(zhí)行,根據(jù)計(jì)劃執(zhí)行對應(yīng)的任務(wù),比如調(diào)用第三方api,從工具集(tools)選中合適的tool執(zhí)行任務(wù)。
agents支持多種形式,如下圖所示,single anget就是將anget作為一個(gè)ai助手,類似目前gpt的問答操作;agent-agent就是多個(gè)agent可以相互交互,比如chatdev,定義了多個(gè)角色,實(shí)現(xiàn)了一個(gè)虛擬的開發(fā)公司;human-agent就是加入人工提示或者反饋,根據(jù)人工信息,agent可以調(diào)整任務(wù),實(shí)現(xiàn)更好的完成任務(wù)。
2.agentgpt技術(shù)介紹
目前開源的ai agent有很多,如AutoGPT,BabyAGI,openagents等,本文以agentgpt為例,介紹一下其大概流程和結(jié)構(gòu)。
agentgpt主要包含3個(gè)部分,其他如AutoGPT,BabyAGI等llm-based agent基本結(jié)構(gòu)都是類似的。
?Reasoning and Planning:推理和計(jì)劃,如果定義一個(gè)目標(biāo),只是簡單的輸入給llm模型,只能得到一個(gè)粗略的答案;如果使用"prompt engineering"(提示工程),則可以將目標(biāo)分解成多個(gè)更容易理解的步驟,并用思維鏈提示的方法進(jìn)行反思。?** Memory**:記憶,分為短期記憶和長期記憶。短期記憶是根據(jù)上下文學(xué)習(xí),受限于llm的token長度;長期記憶是當(dāng)執(zhí)行一個(gè)復(fù)雜任務(wù)時(shí),需要考慮到歷史任務(wù)的情況,當(dāng)代理的任務(wù)長時(shí)間運(yùn)行時(shí),超過token長度時(shí),就會會過期的記憶,agentgpt此處采用了向量數(shù)據(jù)庫存儲歷史信息的特征向量。?Tools:工具集,llm只支持文本的輸出,對于復(fù)雜任務(wù),比如定個(gè)機(jī)票,llm就無法完成。解決方法就結(jié)合"prompt engineering",定義一系列工具集,通過prompt和工具功能的描述,agent就可以根據(jù)任務(wù)調(diào)用相應(yīng)的工具,比如定義一個(gè)“search”工具,功能描述是用“Google Search”的api搜索內(nèi)容,描述中還可以可以包含api調(diào)用的輸入輸出以及內(nèi)容格式等。
參考:https://blog.csdn.net/qq_27590277/article/details/134893431
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。