首頁  >  文章  >  科技週邊  >  擁有自我意識的AI:AutoGPT

擁有自我意識的AI:AutoGPT

WBOY
WBOY轉載
2023-05-25 10:28:201947瀏覽

1、引言

ChatGPT在当下已经风靡一时,作为自然语言处理模型的佼佼者,ChatGPT的优势在于其能够生成流畅、连贯的对话,同时还能够理解上下文并根据上下文进行回答。针对不同的应用场景可以进行快速定制,例如,在客服、教育、娱乐等领域中,ChatGPT可以作为智能助手为用户提供便捷的服务和娱乐体验。

从GPT-3到GPT-4,我们可以看到在高级推理,输入设置,微调行为和理解更长的上下文信息等方面,ChatGPT在不断的优化训练中已经取得了显著的进展。

但是针对于这种交互式的GPT模型,我们更希望看到能像电影里的人工智能,拥有自我意识,可以进行自我学习和进化。不需要通过频繁的引导和交互,我们只需要简单提出一个目标,AI就能自主的完成所有的执行规划和逻辑处理,并不断进行自我论证和优化,最后完成我们提出的目标。

那么今天它来了,它就是ChatGPT的进化版本:AutoGPT。

2、什么是AutoGPT?

AutoGPT 是一个实验性开源应用程序,它利用 OpenAI 的GPT-4语言模型来创建完全自主和可定制的 AI 代理。它于 2023 年 3 月 30 日由 Toran Bruce Richards 发行。

游戏开发者Toran创立了一家名为Significant Gravitas的游戏公司。

在短短的一个多月时间里,AutoGPT的Git项目已经获得了超过120万的star,作为 GPT-4 完全自主运行的首批示例之一,AutoGPT 突破了 AI 的可能性界限。

擁有自我意識的AI:AutoGPT

与其他 AI 工具相比,AutoGPT 是独一无二的,因为它独立运行,这意味着你不再需要操纵模型来满足你的需求。相反,你只需要写下你的目标,然后 AI 会为你完成剩下的工作。因此,AutoGPT 从根本上改变了 AI 与人类之间的交互方式,人类不再需要发挥积极作用,同时仍然保持与 ChatGPT 等其他 AI 应用程序相同或更好的结果质量。

3、AutoGPT 如何工作?

AutoGPT 基于自主 AI 机制工作,其中 AI 系统创建不同的 AI 代理来满足特定任务,其中包括:

  • 任务创建代理:当你在 AutoGPT 上输入目标时,第一个与任务创建代理交互的 AI 代理。根据你的目标,它将创建一个任务列表以及实现这些目标的步骤,并将其发送给优先级代理。
  • 任务优先级代理:收到任务列表后,优先级 AI 代理会确保顺序正确且符合逻辑,然后再将其发送给执行代理。
  • 任务执行代理:完成优先级排序后,执行代理将一个接一个地完成任务。这涉及利用 GPT-4、互联网和其他资源来获得结果。

擁有自我意識的AI:AutoGPT

上述代理之间相互通信。所以当执行代理完成所有任务,结果不理想时,它可以与任务创建代理通信,创建新的任务列表。三个代理之间的迭代循环,直到完成所有用户定义的目标。

AI 代理的行为也显示在用户界面上,将它们分为四组:思想、推理、计划、评判。

  • 思想(THOUGHTS):AI 代理分享它对目标的想法。
  • 推理(REASONING):AI 代理推理如何开展并实现它的想法。
  • 计划(PLAN):AI代理通过分析,列举了所要完成任务的计划。
  • 评判(CRITICISM):AI进行自我评判,纠正错误并克服任何限制问题。

通过共享此计算流程,AutoGPT 可以进行反复尝试论证,并进行针对性的优化处理,可以在没有任何用户干预的情况下克服所遇到的所有问题。

4、AutoGPT和ChatGPT的对比?

虽然底层的 LLM 模型是相同的,但是 AutoGPT 和 ChatGPT 之间还是有不少区别。

4.1  即時洞察

ChatGPT 使用的最新GPT-4 模型是在與GPT-3.5 相同的數據上訓練的,該數據僅到2021 年9 月,你無法使用ChatGPT 獲得實時數據信息,因為你無法訪問網站和線上平台來獲取資訊和提取資訊。

相較之下,AutoGPT 可以上網。它不僅可以上網衝浪,還可以驗證來源是否合法。此外,AutoGPT 可以存取任何平台來執行任務。例如,如果你要求 AI 研究銷售產品的前景並發送外部電子郵件,它會直接使用你的 Gmail 帳戶起草並發送電子郵件。

4.2  記憶體管理

上下文視窗對於語言模型給出準確答案非常重要。但在像 GPT-4 這樣的 LLM 中,視窗有 4000 到 8000 個令牌的限制。因此,如果要求超出限制,模型可能無法正確遵循所有指令,或者可能偏離正切並提供不可靠的輸出。

相較之下,AutoGPT 擅長短期和長期記憶體管理。透過使用資料庫,本地Cache和Redis進行記憶體管理,可以儲存大量情境資訊或先前的經驗,讓AI模型做出更好的決策。

4.3  影像產生

AutoGPT 能夠產生影像,因為它可以使用多種影像產生引擎,預設使用DALL-E 。如果你想為你的 AI 代理啟用圖像生成功能,你需要存取 DALL-E 的 API。儘管是多模式輸入方式,但此功能目前在 ChatGPT-4 中不可用。

3.4  文字轉語音

你可以透過在命令列中鍵入python -m autogpt --speak在 AutoGPT 上啟用文字到語音轉換。但每次與 AutoGPT 互動時都必須輸入指令。你也可以透過將 AutoGPT 連接到多功能 AI 語音軟體 Eleven Labs,為語音添加不同的聲音。

5、AutoGPT 的限制

毫無疑問,自主性為AI系統增加了一個新的維度。同時,我們也不能忽視AutoGPT的限制和風險。下面列出了你必須知道的一些關鍵限制。

5.1  成本高昂

雖然功能令人驚嘆,但 AutoGPT 的實用性可能會讓你失望。由於 AutoGPT 使用昂貴的 GPT-4 模型,因此即使是小任務,完成每個任務的成本也可能很高。這主要是因為 AutoGPT 在特定任務的步驟中會多次使用 GPT-4。

5.2  經常陷入循環

用戶在使用 AutoGPT 時面臨的最常見問題是它陷入循環。如果這種情況持續超過幾分鐘,則可能意味著你必須重新啟動這個過程。發生這種情況是因為 AutoGPT 依賴 GPT-4 來正確定義和分解任務。因此,如果底層LLM回傳結果不足以讓 AutoGPT 採取任何行動就會出現反覆嘗試的問題。

5.3  資料安全性

由於AutoGPT經過充分授權,能自主運作並存取你的系統和互聯網,例如使用你的twitter帳號,登入gi​​thub,使用搜尋引擎等,因此你的資料可能會外洩。 AutoGPT沒有安全代理,所以你在使用 AutoGPT 時必須小心,如果沒有給出正確的說明和安全指南,你不能讓模型繼續運作。

5、如何安裝 AutoGPT?

與其他人工智慧工具不同,AutoGPT 沒有簡單的註冊程式來存取其平台和功能。在開始使用 AutoGPT 之前,你必須下載各種軟體以滿足要求。以下是詳細的步驟要求:

第一步:下載必備軟體

首先你需要有一個Git帳號,同時需要安裝Python3.1.0或更高版本,此外你必須還能熟練使用常用的shell指令或有Docker容器進行專案啟動與設定。

第二步:設定你的OpenAI API 金鑰

如果你還沒有,請建立一個OpenAI 帳戶(當然如果你在國內想要建立帳號不是一件簡單的事情,你可以參考網路上其他文章進行帳號申請)。開啟OpenAI帳號後,開啟USER - API keys前往 API 金鑰標籤。你將看到一個用於建立密鑰的選項。單擊它,然後複製密鑰。

擁有自我意識的AI:AutoGPT

第三個步驟:複製最新版本的AutoGPT

(1)clone專案

#開啟命令列工具透過指令git clone https://github.com/Torantulino/Auto-GPT.git 將專案clone到本地

擁有自我意識的AI:AutoGPT

(2)執行安裝

透過指令cd Auto-GPT && ls -al進入目錄後,可以看到有很多的文件,其中一個檔案是 requirements.txt。在此文件中,你將看到運行 AutoGPT 所需的模組。

擁有自我意識的AI:AutoGPT

要安裝這些模組,可以使用指令pip install -r requirements.txt 進行下載安裝。

擁有自我意識的AI:AutoGPT

(3)修改設定

#透過指令vim .env.template your-openai-api-key),設定完成後執行mv .env.template .env 使配置生效

擁有自我意識的AI:AutoGPT

#其他相關的配置可以參考表格按需進行

#LLM PROVIDER

可以設定OPENAI_API_KEY,是否使用AZURE

#LLM MODEL SETTINGS

#可以設定openAI提供的token限制,避免過度呼叫成本浪費,預設4000-8000

LLM MODELS

LLM 底層語言模型,預設可以選擇GPT-4或gpt-3.5-turbo

#MEMORY

記憶體管理,可以設定local,redis,PINECONE,MILVUS等

#IMAGE GENERATION PROVIDER

影像生成,可以設定影像大小和影像產生引擎:dalle,HUGGINGFACE,STABLE DIFFUSION WEBUI

#AUDIO TO TEXT PROVIDER

語音轉文字,可以設定HUGGINGFACE

GIT Provider for repository actions

#github配置,透過配置github api key用於存取和管理github

WEB BROWSING

#搜尋引擎管理,可以設定不同的瀏覽器:firefox,chrome,safari,搜尋引擎:google等授權open api用於存取網際網路取得資訊和管理存取深度

#TTS PROVIDER

可以使用MAC OS、 STREAMELEMENTS和ELEVENLABS來進行文字轉語音的配置

TWITTER API

twitter帳號管理,管理配置你的twitter帳號,設定token用於存取對應的api

#AUTO-GPT - GENERAL SETTINGS

AutoGPT的一些預設配置,例如存放目錄,開關,user Agent ,AI settings等

#

(4)開始使用

在完成以上配置以後,就已經完成了AutoGPT的基本配置,這時候就可以透過指令python -m autogpt 開啟你的AutoGPT之旅 !

擁有自我意識的AI:AutoGPT

從上圖可以看出,AutoGPT需要你為AI取一個名字[Name],一個角色定位[Role],同時你可以為它設定目標[Goals](最多5個目標,如果你只有一個目標就直接回車)。

在你設定完成目標以後,AutoGPT會進行自主思考並分析你的目標[THOUGHTS],思考完成後開始理解並推理如何去完成這個目標[REASONING],然後開始自主拆解成具體的計劃[PLAN],最後會提出評判[CRITICISM] 用以保證AI 代理糾正錯誤並作出正確的決斷。

完成以上的行為規劃後,AutoGPT會提示它將要作出的指令和動作[NEXT ACTION], 裡麵包含具體執行的命令[COMMAND]和參數[ARGUMENTS],使用者可以在此時可以對風險指令進行識別,避免資料外洩等預期外的風險,這裡可以透過y或n進行授權或拒絕AutoGPT接下來的指令動作。

擁有自我意識的AI:AutoGPT

AutoGPT會經過上述步驟,進行多次循環,由於AutoGPT可以儲存上下文和歷史經驗,所以每次都會根據回饋結果進行更深入的思考,制定出更優的方案,最後列舉他要執行的計劃,反覆嘗試和補充,直到達到你預期的目標。

AutoGPT會通過上述步驟,進行多次循環,由於AutoGPT可以儲存上下文和歷史經驗,所以每次都會根據回饋結果進行更深入的思考,制定出更優的方案,最後列舉他要執行的計劃,反覆嘗試和補充,直到達到你預期的目標。

(5)Docker使用

當然,你也可以使用docker運行:

<code>// 最简单的方式就是通过docker-composedocker-compose build auto-gptdocker-compose run --rm auto-gpt// 使用docker命令构建docker build -t auto-gpt .docker run -it --env-file=.env -v $PWD:/app auto-gpt</code>

你可以傳遞額外的參數,例如,運行方式--gpt3only和-- continuous模式:

<code>// docker-composedocker-compose run --rm auto-gpt --gpt3only --continuous// docker docker run -it --env-file=.env -v $PWD:/app --rm auto-gpt --gpt3only --continuous</code>

6、總結

與傳統的文本生成技術相比,我們發現AutoGPT的能力進化令人震驚,它可以透過分析你的目標,自動拆解成它需要執行的任務,並在執行的過程中根據已有的經驗和決策不斷優化完善和總結,同時AutoGPT獲取信息的手段也非常豐富,它能通過搜索引擎搜索,github,網頁工具等渠道下載和提煉所需的訊息,透過本地緩存,語音轉化,圖像生成等插件能力,最終完成你所設立的目標。這種自我意識,自我迭代和更新的形態已經非常接近電影《流浪地球》裡的moss這種人工智慧!

最後問題來了,這篇文章是AutoGPT自動產生的嗎?

以上是擁有自我意識的AI:AutoGPT的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除