撇開 NFT 和元宇宙的熱潮不談,人工智慧已成為科技領域的新寵。諸如 ChatGPT 及其替代品正在網路上蓬勃發展,協助使用者輕鬆處理日常事務。先前,我們發布過關於如何建立您自己的類似 ChatGPT 的聊天機器人、如何在任何瀏覽器中使用 Bing AI 等相關指南。然而,如果你是 Linux 用戶,並希望將這種人工智慧聊天機器人的智慧帶入你的系統,該怎麼辦?這正是 ShellGPT 的用武之地。它將 ChatGPT 的強大功能帶入你的 Linux 終端。ShellGPT 提供解答、智慧建議,甚至為你編寫指令和程式碼,幫助你高效地在命令列中操作。本文中,我們將向你展示如何在 Linux 命令列中安裝 ShellGPT 命令列工具,並使用類似 ChatGPT 的人工智慧機器人。
2023 年在 Linux 終端中運行 ChatGPT
什麼是 Linux 版 ShellGPT?
圖片來源:Farkhod Sadykov(Github)
ShellGPT 由 Farkhod Sadykov(以及其他兩位貢獻者,Eric 和 Loïc Coyle)開發,是 ChatGPT 的命令列版本,讓使用者可以在 Linux 終端中與人工智慧聊天機器人互動。它基於 OpenAI 的 GPT 大型語言模型(在此處閱讀有關 OpenAI 新 GPT-4 模型的更多資訊)。
ShellGPT 可以提供智慧建議和建議,甚至可以根據你的文字輸入執行 shell 指令。它還會從你的互動中學習,並隨著時間的推移變得更加準確。通過將此 ChatGPT 工具整合到命令列中,使用者無需鍵入冗長的指令或記住複雜的 Linux 終端命令。他們可以節省寶貴的時間,同時最大限度地減少錯誤,讓 ChatGPT 為他們執行一些瑣碎的工作。
在 Linux CLI 中安裝 ChatGPT 的先決條件
以下是在 Linux 系統上安裝 ShellGPT 之前需要滿足的一些先決條件。這些都不是太複雜的工具,可以使用一些簡單的指令安裝。
安裝 Python
Python 是一個不可或缺的工具,就像許多其他的 Linux 工具和程式庫一樣,ShellGPT(ChatGPT 的命令列版本)也是基於 Python 建構的。事實上,ChatGPT 也是使用 Python 和其他語言建構的。通常,大多數最新的 Linux 發行版都預裝了 Python。首先,使用以下指令檢查 Linux 電腦上安裝的 Python 版本:
python3 –版本
如果上述指令輸出任何錯誤,則表示尚未安裝 Python 或系統上安裝了已過時的 Python 2.7。然後,你可以使用我們的指南了解如何在 Linux 中安裝 Python。
安裝 Pip 套件管理員
Pip 是 Python 的跨平台套件管理員。它有助於管理將 ChatGPT 引入 Linux 所需的各種 Python 套件和程式庫。您可以使用單個指令安裝、升級和解除安裝所需的套件。在大多數 Linux 發行版中,它通常與 Python 一起預裝,但如果未安裝,您可以使用以下指令安裝它:
sudo apt-get -y 安裝 python3-pip
安裝完成後,您可以使用以下指令檢查 Linux 中安裝的 Pip 版本:
pip3 –版本
安裝 Venv 模組
這個模組對於 ShellGPT 或 ChatGPT 不是必須的,但我們建議您安裝它,以便在 Linux 中建立一個隔離的虛擬環境,以防止與其他程式庫發生任何衝突。安裝任何程式庫或套件都會安裝許多可能干擾其他程式庫的後台依賴項。要為項目建立虛擬環境,您需要 “venv” 模組,您可以使用以下指令安裝它:
sudo apt 安裝 python3-venv
設定 ShellGPT 以在 Linux 終端中使用 ChatGPT
我們將在您的 Linux 電腦上安裝 ShellGPT 的說明分為四個不同的部分,以便您更容易理解。讓我們從設定環境開始,然後獲取 OpenAI API 金鑰,最後在終端中安裝聊天機器人。
設定環境
現在你已經涵蓋了依賴項,讓我們通過以下步驟建立一個可以從 Linux 終端存取 ChatGPT 的環境:
1. 首先,從應用程式選單打開終端,或使用 “Ctrl + Alt + T” 鍵盤快捷鍵。
2. 現在,使用下面的指令建立一個新目錄,並組織所有檔案。
mkdir <你的目錄名稱>
例如,我們使用以下指令建立了一個名為 “commandline-chatgpt” 的新目錄:
mkdir 命令行-chatgpt
3. 然後,切換到您剛使用 “變更目錄” 指令建立的新目錄:
cd <新目錄名稱>
在下面的示例中,我們已經移至 commandline-chatgpt 目錄,我們將在其中建立一個在 Linux 終端中使用 ChatGPT 的環境:
cd 命令行-chatgpt
4. 現在,使用以下指令建立一個具有 venv 模組的虛擬環境。我們為虛擬環境使用了 “chatgpt_cli” 名稱。
python3 -m venv <虛擬環境名稱>
例如:python3 -m venv chatgpt_cli
5. 剛建立的虛擬環境預設為停用。要啟用該環境,請使用以下指令:
來源 <virtual_environment_name>/bin/activate
執行上述指令後,Shell 提示符現在將在括號中顯示虛擬環境的名稱,如下所示:
( <虛擬環境名稱> ) <用戶名>@<系統名稱>
如下圖所示,預設的 Linux Shell 提示符已變更為 (chatgpt_cli) [email protected] 運行上述指令後。
獲取您的 OpenAI API 金鑰
為了在 Linux 中使用 ChatGPT 的服務,你需要一個 OpenAI API 金鑰。目前,OpenAI 提供 5 美元的試用額度。用完額度後,您需要為存取 API 付費。也就是說,您可以透過以下方式取得此命令列 ChatGPT 聊天機器人的 OpenAI API 金鑰:
1. 瀏覽至 OpenAI 的網站(訪問),並建立一個新的 OpenAI 帳戶。如果你已經有一個帳戶,只需登入並前往下一步。
2. 接下來,點擊右上角的個人資料圖片,然後從下拉式選單中選擇 “檢視 API 金鑰”。
3. 在這裡,您將看到所有先前產生的 API 金鑰(如果有)。要產生新的 API 金鑰,請點擊 “建立新金鑰” 按鈕。
4. 將打開一個包含您的 API 金鑰的新彈出視窗。不要與任何人共享此 API 金鑰,或公開分享。將您的 API 金鑰複製到安全檔案或位置,因為您只能檢視一次。點擊此處的 “確定” 後,您將無法再複製 API 金鑰。
5. 現在,使用以下指令為此 API 金鑰建立一個環境變數。在 Linux 中,您可以使用 “export” 指令建立環境變數。將 <your_OpenAI_API_key_here> 佔位符替換為您產生的實際 API 金鑰,以便在 Linux 終端中使用 ChatGPT。
export OPENAI_API_KEY=<your_OpenAI_API_key_here>
6. 透過使用 env 指令列出環境變數來驗證環境變數:
env
7. 此變數僅在當前會話中臨時儲存。要永久儲存 API 金鑰,請在您選擇的文字編輯器中開啟 .bashrc 檔案,並在檔案末尾新增變數。
export OPENAI_API_KEY=<your_OpenAI_API_key_here>
8. 新增 OpenAI API 金鑰後,儲存檔案並退出文字編輯器。現在,執行此指令以使變更生效:
source .bashrc
9. 最後,使用 env 指令驗證變更:
env
安裝 ShellGPT 以使用 ChatGPT
完成環境設定後,您現在可以繼續在 Linux 中安裝命令列版本的 ChatGPT。您可以使用以下指令在您的電腦上安裝 ShellGPT:
pip3 安裝 shell-gpt –用戶
ShellGPT:語法和選項
現在你已經安裝了 ShellGPT,你一定迫不及待地想要使用它來完成各種任務。但在那之前,讓我們檢查一下我們可以使用的語法和一些選項,使輸出更有趣。由於其簡單的語法,將 ShellGPT 用於多項任務很容易:
sgpt <選項> <輸入查詢>
您可以使用 ShellGPT (sgpt) 聊天機器人的一些選項是:
選項 | 描述 |
–temperature | 變更輸出的隨機性 |
–top-probablity | 限制為僅最高可能的標記或詞 |
–chat | 用於以唯一名稱進行對話 |
–shell | 用於獲取 shell 指令作為輸出 |
–execute | 執行接收到的指令作為 –shell 選項的輸出 |
–code | 用於獲取程式碼作為輸出 |
如何在 Linux 終端中使用 ChatGPT(範例)
1. 使用 ShellGPT 進行查詢
您可以將 ShellGPT 用作任何類型查詢的搜尋引擎。因為它是一個人工智慧聊天機器人,所以你會得到更像人類答案的結果,而不是像大多數搜尋引擎那樣的一系列排名網頁。使用 ShellGPT 取得問題答案的語法是:
sgpt “<你的查詢>”
例如,如果您需要知道太陽的質量,請使用以下指令:
sgpt “大量太陽”
當 ShellGPT 嘗試取得回應時,您會在終端中看到一個漂亮的動畫。我們收到的回覆在下方突出顯示。根據模型的訓練方式,您可能會得到類似的回覆:
太陽的質量約為 1.989 x 10^30 公斤。
2. ChatGPT 聊天機器人模式
如果你用過 ChatGPT 聊天,你一定覺得它的反應不亞於人類。現在借助 ShellGPT,您甚至可以直接從 Linux 終端使用 ChatGPT。只需使用 –chat 選項,後面跟上唯一的會話名稱和提示。
sgpt –chat <unique_chat_session_name> <input_prompt>
例如,如果你想讓 ChatGPT 跟你說個笑話,請使用這個指令:
sgpt –chat joke “你能給我講個笑話嗎?”
執行上述指令後,您將獲得以下結果作為輸出:
Sure, here's one: Why couldn't the bicycle stand up by itself? Because it was two-tired!
3. 產生程式碼
您甚至可以使用基於 CLI 的 ChatGPT 工具來解決程式碼問題或產生程式碼片段。只需使用 –code 標誌為您的提示產生程式碼,如下所示:
sgpt –code “<input_prompt>”
例如,如果你想使用 Python 解決經典的 Fizz Buzz 問題,請使用以下提示:
sgpt –code “使用 Python 解決經典的 Fizz Buzz 問題”
ChatGPT 將快速為您提供輸出,然後您可以將其貼到程式碼編輯器中並進行測試:
for i in range(1, 101): if i % 3 == 0 and i % 5 == 0: print("FizzBuzz") elif i % 3 == 0: print("Fizz") elif i % 5 == 0: print("Buzz") else: print(i)
4. 產生 Shell 指令
雖然終端可以是執行複雜指令和自動執行任務的強大工具,但新手使用者有時可能難以記住各種終端的語法和選項 Linux 指令。在命令列中使用 ChatGPT,您不僅可以獲得 Linux 指令的語法,還可以獲得具有所需參數和選項的精確指令。只需將 –shell 標誌用作:
sgpt –shell “<input_prompt>”
例如,如果需要對目前目錄下的所有檔案設定唯讀權限,請使用指令:
sgpt –shell “將目前目錄下的所有檔案設為唯讀”
正如預期的那樣,ChatGPT 將其作為輸出傳遞並傳回:
chmod -R a-w .
此外,如果同時使用 –execute 和 –shell 標誌,您甚至可以直接執行產生的 shell 指令。至於上面的例子,語法如下:
sgpt –shell –execute “將目前目錄下的所有檔案設為唯讀”
您將獲得以下輸出:
chmod -R a-w . Execute shell command? [y/N]: y
在 Linux 命令列中使用 ChatGPT
是的,ShellGPT 將 ChatGPT 的強大功能帶入您的 Linux 終端。它不僅使初學者和經驗豐富的使用者都可以輕鬆使用命令列,而且還為您帶來了其他功能。正如我們上面提到的,隨著時間的推移,它會變得更有用,因為它的目的是向使用者學習。但請切記不要與任何類型的人工智慧模型共享任何敏感資訊或資料,尤其是貴公司的專有程式碼。也就是說,請在下面的評論中告訴我們您對這個人工智慧命令列工具的看法。