四個優(yōu)秀AI Agent開源項目,談一談大模型、人工智能代理
什么是AI Agent?
現(xiàn)在我們與大模型的互動,一般的過程是先輸入一個提示詞,之后,大模型根據(jù)輸入內(nèi)容進(jìn)行計算并響應(yīng)。每次想要得到一個新的輸出,我們就必須再提供一個提示詞。這個過程有點(diǎn)麻煩,因為總是要有人來驅(qū)動。
AI Agent(人工智能代理)則以不同的方式工作。他們被設(shè)計成可獨(dú)立思考和行動的智能體。我們唯一需要提供的就是一個目標(biāo),可以是研究競爭對手分析、寫個網(wǎng)站程序或進(jìn)行一次旅游。AI Agent會生成一個任務(wù)列表,然后開始工作,依靠環(huán)境的反饋和自己的內(nèi)心獨(dú)白。就好像它們可以提示自己似的,在不斷發(fā)展中適應(yīng)變化,以最好的方式實(shí)現(xiàn)我們制定的目標(biāo)。
看起來這個過程和自動化流程有點(diǎn)像,但其實(shí)有區(qū)別。與自動化流程相比,流程是可預(yù)知的,用戶可以根據(jù)數(shù)據(jù)或系統(tǒng)狀態(tài)設(shè)置一系列的觸發(fā)器,并配置接下來要執(zhí)行的活動,然而不同的是,AI Agent可以在存在大量不可預(yù)測新信息的環(huán)境中工作。這就是AI Agent。
AI Agent有哪些應(yīng)用場景?
下面是一些應(yīng)用例子:
- 在一個有25個AI Agent的虛擬城鎮(zhèn)里會發(fā)生什么?斯坦福大學(xué)和谷歌對此很好奇,所以他們使用OpenAI的API來創(chuàng)建這些虛擬居民,并觀察他們?nèi)绾紊?。為了支持這個實(shí)驗,研究小組創(chuàng)建了一個存儲記憶的平臺,以及為每個代理提供目的的基本提示。從那時起,人工智能代理能夠相互分享信息,記住他們關(guān)系的細(xì)節(jié),甚至計劃情人節(jié)派對。
- 在自動駕駛汽車領(lǐng)域,因為AI控制汽車從A點(diǎn)到B,同時保持在路上并遵守交通規(guī)則。根據(jù)自動駕駛系統(tǒng)的發(fā)展,車輛可以相互合作,并與城市基礎(chǔ)設(shè)施合作,集成多個智能體的AI系統(tǒng)。
- 可以在計算機(jī)中使用的AI Agent,用于完成各種任務(wù)。研究工作的過程其實(shí)就是一個適合使用AI Agent的場景。因為Agent可以像人類一樣使用筆記本電腦,在互聯(lián)網(wǎng)上搜索信息,將其保存在數(shù)據(jù)庫和文件中,經(jīng)過總結(jié)分析,將其轉(zhuǎn)化成摘要,最后與你一起驗收結(jié)果。
可以想象,未來人類的主要活動就是主導(dǎo)戰(zhàn)略并與其他人建立關(guān)系,而AI Agent則可以自動化其他的工作,甚至也可以與其它Agent進(jìn)行交互,完成人類的目標(biāo)。
值得關(guān)注的開源AI Agent項目
令人印象深刻的AI Agent有許多,但下面是目前最值得關(guān)注的前四個。
1.AutoGen
源碼:https://github.com/microsoft/autogen
AutoGen是一個由微軟與OpenAI以及賓夕法尼亞州立大學(xué)和華盛頓大學(xué)的研究人員合作建立的人工智能代理框架。支持多代理對話,以解決用戶的任務(wù)。
可以使用多個代理來開發(fā)LLM應(yīng)用程序,這些代理可以相互配合以解決任務(wù)。AutoGen代理是可定制的,可轉(zhuǎn)換的,并且允許人類參與其中。它們可以在各種模式下運(yùn)行,這些模式采用LLM,人工輸入和工具的組合。
2.AutoGPT
源碼:https://github.com/Significant-Gravitas/AutoGPT
AutoGPT是一個使用GPT-4創(chuàng)建的完全自主的AI代理。AutoGPT于2023年3月由首席開發(fā)商Toran布魯斯理查茲首次發(fā)布,他也被稱為游戲公司Significant Gravitas Ltd.的創(chuàng)始人,該公司生產(chǎn)的電腦游戲帶有“道德色彩”,旨在造福和教育全人類。
Auto-GPT是一個實(shí)驗性的開源應(yīng)用程序,展示了GPT-4語言模型的功能。這個程序由GPT-4驅(qū)動,可以將LLM的“思想”匯聚、連接在一起,以自主實(shí)現(xiàn)用戶設(shè)定的任何目標(biāo)。
CLI:
$ ./run
Usage: cli.py [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
agent Commands to create, start and stop agents
arena Commands to enter the arena
benchmark Commands to start the benchmark and list tests and categories
setup Installs dependencies needed for your system.
3.BabyAGI
源碼:https://github.com/yoheinakajima/babyagi
BabyAGI于2023年3月由Yohei Nakajima發(fā)布。與AutoGPT類似,也是使用GPT-4來開發(fā)的完全自主的聊天機(jī)器人。
該系統(tǒng)使用OpenAI和矢量數(shù)據(jù)庫(如Chroma或Weaviate)來創(chuàng)建、優(yōu)先處理和執(zhí)行任務(wù)。這個系統(tǒng)背后的主要思想是,它根據(jù)先前任務(wù)的結(jié)果和預(yù)定義的目標(biāo)創(chuàng)建任務(wù)。然后,該腳本使用OpenAI的自然語言處理(NLP)功能來創(chuàng)建基于目標(biāo)的新任務(wù),并使用Chroma/Weaviate來存儲和檢索上下文的任務(wù)結(jié)果。
BabyAGI通過運(yùn)行一個無限循環(huán)來工作,該循環(huán)執(zhí)行以下步驟:
- 從任務(wù)列表中提取第一個任務(wù)。
- 將任務(wù)發(fā)送給執(zhí)行代理,執(zhí)行代理使用OpenAI的API根據(jù)上下文完成任務(wù)。
- 豐富結(jié)果并將其存儲在 Chroma或者Weaviate(向量數(shù)據(jù)庫)。
- 創(chuàng)建新任務(wù)并根據(jù)目標(biāo)和上一任務(wù)的結(jié)果重新確定任務(wù)列表的優(yōu)先級。
4.ChatDev
源碼:https://github.com/OpenBMB/ChatDev
ChatDev是一個可以模擬整個軟件開發(fā)團(tuán)隊的開源對話平臺。由OpenBMB開發(fā),OpenBMB是一個旨在為AGI構(gòu)建基礎(chǔ)模型和系統(tǒng)的研究實(shí)驗室。
ChatDev是一個多代理人的組織結(jié)構(gòu),以“通過編程徹底改變數(shù)字世界”為使命,將代理們團(tuán)結(jié)在一起。ChatDev中的代理通過參加專門的功能研討會進(jìn)行協(xié)作,完成設(shè)計、編碼、測試和文檔編制等任務(wù)。
ChatDev的主要目標(biāo)是提供一個易于使用,高度可定制和可擴(kuò)展的框架,該框架基于大型語言模型(LLM),是一個研究集體智慧的理想場景。
ChatDev的功能包括:集成了版本控制的Git、用于交互式參與設(shè)計階段的Human-Agent-Interaction模式,以及用于生成軟件中使用到的圖像的藝術(shù)模式。
關(guān)于未來
在新技術(shù)發(fā)展顛覆的過程中,我們總是能聽到一句話:“我們往往太高估短期的作用,低估了未來的影響”??墒茿GI這場變革來得太快,以至于我們這種影響和作用在時間上都很是緊迫,甚至有時候有些焦慮。但其實(shí)未來已來,唯有積極擁抱。
AI Agent對整個社會能夠產(chǎn)生的影響多大,可能不好預(yù)測。但可以肯定的是:我們的生活和工作將在這個發(fā)展過程中改變。