爆款來襲!刷屏的Auto-GPT與ChatGPT區別,GPT成為AI領域最受關注的技術,你還在等什麼?(狂飆 啊。。。Github 80k star了)。

最近全網火爆刷屏的熱門詞auto-gpt,在全網站頻頻出現:

"ChatGPT 過時了,Auto-GPT才是未來"

"它所具備的能力主打的就是一個『自主』,完全不用人類插手的那種!"

到底什麼是auto-gpt?

1、Auto-GPT和ChatGPT有什麼區別

Torantulino/Auto-GPT和ChatGPT都是基於GPT模型的神經網路模型,但它們之間有一些本質上的區別:

  • 目標不同:Auto-GPT的目標是使用自動化搜索算法尋找最優的預訓練神經網路結構,以提高語言建模任務的性能。而ChatGPT的目標是針對聊天場景進行微調,從而生成更加自然流暢的對話。
  • 數據集不同:Auto-GPT使用了大量的通用文本語料庫來進行預訓練,而ChatGPT則使用了專門針對聊天對話收集的語料庫來進行微調訓練。
  • 超參數設置不同:Auto-GPT使用了較大的模型規模和更加復雜的搜索算法,需要更多的計算資源和時間來進行訓練。而ChatGPT的模型規模相對較小,可以在一般的計算機上進行訓練。
  • 開發者不同:Torantulino/Auto-GPT是由社區開發的Python包,而ChatGPT是由OpenAI開發的神經網路模型。
  • 因此,Torantulino/Auto-GPT和ChatGPT雖然都是基於GPT模型的變體,但它們的應用場景、數據集、訓練方法和超參數等方面有很大差異,需要根據具體需求來選擇合適的模型。

    總的來說

    就是chatgpt是聊天形式的AI,auto-gpt是自主形式(多了自動做出推理、計劃和執行)的AI。你可以給定一個角色及目標

    給定好後,它會定一個計劃出來

    然後調用google查詢

    分析出結果

    例如一位網友就要求AutoGPT開發一個網站,結果不到3分鐘,AI自己就用React和Tailwind CSS『唰唰唰』地搞定了。

    2、github相關項目

    4月13日消息,近日,代碼托管平臺GitHub上線了一個新的基於GPT-4的開源應用項目AutoGPT,憑借超51k的Star數在開發者圈爆火。

    項目源代碼地址:

    github.com/Torantulino…

    3、搭建

    我們來體驗一下auto-gpt的搭建吧

    要求:

    • Python 3.8或更高版本

    • OpenAI API密鑰

    安裝步驟

    要安裝Auto-GPT,請執行以下步驟:

  • 確保你有以上所有的要求,如果沒有,安裝他們。
  • 克隆存儲庫: 在這一步中,你需要安裝Git,但是你可以點擊頁面頂部的按鈕下載zip文件 ☝️
  • git clone github.com/Torantulino…
  • 導航到項目目錄:(Type你的目標是在CMD窗口中導航到你剛剛下載的存儲庫》
  • cd Auto-GPT
  • 安裝所需的依賴項:
  • pip install -r requirements.txt
  • 將 .env.template重命名為.env並填寫OPENAI_API_KEY。如果您計劃使用語音模式,請同時填寫ELEVEN_LABS_API_KEY。
    • 從以下地址獲取OpenAI API密鑰:https://http://platform.openai.com/account/api-keys.
    • #.env.template .env為隱藏文件,ll ls看不到,不過它存在 cp .env.template .env

    然後把自己的openai key填上去,保存。

  • 啟動,在 main.py 終端中運行Python腳本:
  • python scripts/main.py
  • 此時就安裝完成了可以體驗一下了:

    開始會讓你輸入外名稱和角色,隨便整個就好,然後就出現Input:讓你輸入了

    輸入問題後就會出現Thinking…

    上面就是它的回答了。

    如果安裝後,啟動報這個錯:

    Low priority: ARGUMENTS = 'dict' object has no attribute 'replace' 🙂 #1085

    可以在代碼main.py的第372行(不同版本的代碼行數有差別),加上以下代碼,注意python代碼的**縮進。**保存重新啟動就可以了。

    try: json.loads(assistant_reply)except ValueError as e: if assistant_reply.count('{') == assistant_reply.count('}') == 0: # remove " and ' assistant_reply = assistant_reply.replace('"','').replace("'",'') assistant_reply = '{' \ '"thoughts": {' \ '"text": "' + assistant_reply + '",' \ '"reasoning": "",' \ '"plan": "",' \ '"criticism": "",' \ '"speak": ""' \ '},' \ '"command": {' \ '"name": "do_nothing","args": {}' \ '}' \ '}' elif assistant_reply.count('{') == assistant_reply.count('}'): # remove everything before the first { and after the last } assistant_reply = assistant_reply[assistant_reply.find('{'):assistant_reply.rfind('}') + 1] else: while assistant_reply.count('{') != assistant_reply.count('}'): if assistant_reply.count('{') > assistant_reply.count('}'): # add a } to the end assistant_reply = assistant_reply + '}' else: # add a { to the beginning assistant_reply = '{' + assistant_reply復制代碼