我們之前已經寫了幾篇如何安裝AutoGPT的文章,但是,因為有些比較複雜的題目需要電腦思考很久、跑很多步。如果是在筆電上面跑AutoGPT,因為目前AutoGPT在電腦睡眠之後並沒有辦法很正常的回復,往往在電腦喚醒之後就當掉了,因此,AutoGPT過去思考的所有步驟都要重來,真是讓人很崩潰!
有沒有辦法不卡住我們的電腦,偶爾去檢查一下,就可以讓AutoGPT自主跑起來的方法呢?當然有,而且還是幾乎免費的!這裡的教學採用Azure試用期12個月免費提供的 Standard B1s虛擬機器伺服器來跑AutoGPT,就可以跑得很順。另外,由於Microsoft提供免費的200美元額度讓新註冊的使用者使用,所以其實也可以在額度內升級使用比較高速的機器,跑起來更加順暢。
本文教您如何在Windows上面安裝WSL並且利用Docker將AutoGPT跑起來,如果還不知道如何取得OpenAI API Key,請看這篇的說明:
AutoGPT安裝指南:OpenAI 帳號註冊 API key生成
AutoGPT安裝指南:Windows WSL Docker安裝法
什麼是Microsoft Azure、怎麼唸?以及如何註冊?
Microsoft Azure是微軟提供的雲平台。就像Google 有提供GCP(Google Computing Platform)、Amazon的AWS(Amazon Web Services)。Microsoft Azure雲平台裡功能繁多,如果有需要使用虛擬伺服器,算是很好的選擇。
但是許多朋友不太會念Azure這個字,一開始筆者也常常唸錯。
這裡有個標準念法:https://youtu.be/7CXiPVpa6B8
用中文字來拼音的話,會唸起來有點像 「A~~9」,A發音之後要拖長一點,再接「9」的發音。
註冊Azure一點都不難,請連上 Azure註冊網頁 並且點選「開始免費使用」。
▲註冊Azure的免費帳戶就可以開始架設伺服器了。
Microsoft Azure也有免費服務
為了推廣雲服務,微軟算是不遺餘力,雖然沒有GCP給的300美元兇猛,但是200美元的免費額度,加上12個月的好多種免費服務,真的是很有誠意了。
這裡列出微軟Azure的各種12個月免費服務,有免費的B1S虛擬機器、64GB x 2 SSD磁碟儲存+1GB快照+200M IO、5GB的Blog儲存、100GB的檔案儲存、100GB的頻寬、VPN閘道、750小時或15GB的負載平衡器、各種資料庫、AI相關服務如臉部、表單辨識、機器學習等等等等。可以說是應有盡有。如果說不是需要很大的負載,只是個人使用的話,基本上靠著這些已經可以建設好幾個AutoGPT,讓他們同時運作,同時解決不同的問題了。
如果你問題真的很多的話。XD
▲Microsoft Azure提供許多免費服務,這些服務提供12個月的免費服務,作為AutoGPT使用絕對夠用。
Azure的安裝原理說明
第一次使用虛擬機器安裝服務的朋友,可能會稍微有點混淆,不太能理解雲端計算的邏輯。我們這裡稍微說明,幫助大家理解。
為了方便管理,第一個要設置的是一個「訂用帳戶」(Subscription),這個東西是一個用來管理帳單的資源群組,把它想像成一個機架好了。假設我是IT主管的話,應該會幫忙A部門架設一群伺服器,B部門也架設一群伺服器。未來要分別跟兩個部門主管請款的時候,如果兩群伺服器混雜在一起,恐怕就會難以分出帳單。這就是訂用帳戶主要的功能。這跟我們後面要談的資源群組概念不太一樣。當然,如果公司比較小,也不是跨國企業的話,用資源群組也能達成相同功能。
再來,就像是組裝一台PC,你已經有機殼和電源,接下來需要CPU等內部零件才能組成一個基本的工作單元。至於Azure伺服器呢?你需要的有虛擬機器、網路及虛擬網路卡、IP位址、用來登入的SSH金鑰,以及一個「磁碟」才能組成最基本的運作單元。如果你需要第二個AutoGPT,就會需要再設定一群零件模組。管理上就會變得很麻煩,是吧?這時,我們可以利用「資源群組」把這些零件裝進機殼,日後管理這些零件時,就是一整組的伺服器,而不在是一群散落的零件模組了。
當然啦,這是最粗淺的說法,Subscription訂用帳戶和Resource Group資源群組還有很多使用方法。在這裡我們就先不贅述。
▲因為要讓零件模組好管理,我們一般會用「資源群組」把他們裝起來,暫時可以先把「資源群組」想像成機殼,裡面的模組當作是PC內的CPU、RAM、顯卡、硬碟等零件。
設定資源群組及基本伺服器零組件
要設定AutoGPT所需要的零組件,首先我們需要先從創造「資源群組」開始。請連到 https://portal.azure.com/ 並且點選「資源群組」-「建立」。
然後在「資源群組」裡寫上自己喜歡的名字,筆者這裡是寫「AutoGPT001」,因為未來還有可能要創造AutoGPT002, 003, 004, 005…etc. 反正要用才開起來收費,平常關機擺著的時候幾乎零成本。可以說是想開幾個就開幾個。
另外,區域的話,目前比較靠近台灣的是(Asia Pacific) East Asia,台灣北部短期內也會建一個Region,可以期待。都選好之後點選「標籤」方便管理,或是直接點選「檢閱 + 建立」-「建立」。
接下來,請點選「AutoGPT001」,並且點選「建立」。
下一個畫面裡,可以安裝的VM虛擬機器非常多種。過去由於筆者曾經在Canonical工作過,也考過目前已經絕跡的「UCP: Ubuntu Certified Professionals」,所以對這個套件比較熟悉。如果您有比較喜歡的Linux套件,可以自由選擇。否則的話,可以選擇筆者推薦的「Ubuntu Server 22.04LTS」。至於Minimal版本就不是很建議,因為還要安裝很多東西才能使用,安裝這些都還需要額外的網路頻寬,有點浪費時間。
在繼續設定下去之前,您需要在電腦上設定好SSH,Windows系統的話建議使用WSL,可以參考我們之前寫的文章:AutoGPT安裝指南:Windows WSL Docker安裝法
設定好之後,您需要設定一組SSH金鑰,用來登入遠端的伺服器。請先打開 CMD 並且在終端機內輸入:
bash
ssh-keygen -t
** 然後連續按3次「Enter」鍵,設定 .ssh/id_rsa 的金鑰,並且不設定金鑰的密碼。
cat .ssh/id_rsa.pub
您會拿到一組非常長的公開金鑰。這個先留下來等等要貼到設定裡。
接下來,要進入比較複雜的工作了。要為了這個虛擬機器做些設定。讀者如果沒有特別偏好,請按照筆者的建議沿路設定下去。不需要設定的留預設值,筆者列出的就是要修改的部份。
資源群組:選擇「AutoGPT001」
虛擬機器名稱:輸入「AG001」
影像:「Ubuntu Server 22.04 LTS - x64 第 2 代」
SSH公開金鑰來源:「使用現有的公開金鑰」
SSH公開金鑰:貼上公開金鑰 「ssh-rsa ******************************** user@aero13」
接下來有些要考慮的,例如「磁碟」,筆者測試好一陣子,發現根本不需要太大的磁碟空間。30GB足夠,所以不須設定,網路、管理等標籤如果不需要特別設定就可以跳過。接下來點選「檢閱 + 建立」- 「建立」來建立虛擬機器,這個步驟大約需要幾分鐘。
▲要設定AutoGPT所需要的零組件,首先我們需要先從創造「資源群組」開始。請連到 https://portal.azure.com/
▲點選「資源群組」-「建立」。
▲「資源群組」這裡筆者是寫「AutoGPT001」,目前比較靠近台灣的是(Asia Pacific) East Asia
▲接下來點選「建立」完成資源群組的建立。
▲資源群組內點選「+ 建立 」開始建立虛擬機器。
▲沒有特別偏好的話,建議Ubuntu Server 22.04 LTS
▲選取「AutoGPT001」資源群組、輸入「AG001」作為虛擬機器名稱、選取「Standard_B1s」 大小或其他你喜歡的虛擬機器。
▲虛擬機器有非常多種,以我們的需求來說,最便宜的B1s即可。
▲設定SSH金鑰,用來登入Azure上的虛擬機器。
▲全部設定完就可以點選「建立」。
▲幾分鐘之後,一台伺服器就這麼裝好了。這時您可以點選「AG001」看一下公用IP為何。
設定安裝AutoGPT
要設定AutoGPT所需要的零組件,首先我們需要先從創造「資源群組」開始。請連到 「AG001」,看一下公用IP為何。筆者這次建立的伺服器IP為「20.187.118.125」。請用以下命令連線:
ssh azureuser@「虛擬機器的IP」
範例 ssh azureuser@20.199.199.255 (請不要照貼,這個IP保證連不上任何東西)
登入Azure虛擬機器之後,接下來的操作非常接近WSL安裝法,請先貼上以下命令:
sudo apt update ; sudo apt install -y docker docker-compose unzip
接下來,請從 AutoGPT穩定版本下載頁面 取得目前最新的AutoGPT,截稿日為止,目前的版本是0.3.1。
請在終端機裡面貼上以下指令:
wget https://github.com/Significant-Gravitas/Auto-GPT/archive/refs/tags/v0.3.1.zip ; unzip v0.3.1.zip
cd Auto-GPT-0.3.1/ ; cp .env.template .env ; nano .env
接下來會進入編輯器,找到 OPENAI_API_KEY 這裡,並且把我們之前教學的openAI金鑰貼在這裡變成
OPENAI_API_KEY=sk**********************
設定 USE_AZURE=True,改好之後按「CTRL」+「X」-「Y」-「Enter」儲存。
.env 設定檔儲存之後,再將以下指令複製貼上至終端機內:
sudo docker-compose build auto-gpt
開始執行也非常簡單,如果沒有打算另外安裝外掛的話,可以直接複製貼上以下命令至終端機內:
sudo docker-compose run --rm auto-gpt
大功告成。接下來你可以開始問問題了。
▲如果前一步設定ssh金鑰沒有問題的話,這個步驟可以直接利用 ssh 登入Azure虛擬機器。
▲設定安裝 autoGPT 其實非常簡單。一行命令就搞定安裝。
▲設定這裡填入openAI的金鑰即可完成設定。
▲安裝完成,可以開始指揮AutoGPT了。