一、前言
隨著AI技術(shù)的普及,部分技術(shù)領(lǐng)域的門檻逐步降低,比如非科班出身,非技術(shù)專業(yè),甚至從未涉足技術(shù)領(lǐng)域,完全不懂服務(wù)器部署和運(yùn)維,如今可以依托AI大模型非常輕松的掌握和使用相關(guān)技術(shù),來解決一些實(shí)際問題。
比如在不同的操作系統(tǒng)中總會(huì)避免不了需要接觸和使用CLI命令行界面,許多任務(wù)都需要使用命令行界面進(jìn)行操作。而對于非技術(shù)專業(yè)人員來說,在完全沒有學(xué)習(xí)Linux或Shell腳本命令的情況下可能會(huì)非常困難,甚至在沒基礎(chǔ)的情況下現(xiàn)學(xué)也會(huì)遇到很多問題,止步不前。為了解決這個(gè)問題,我們今天介紹一個(gè)名為 Shell-AI 的小工具,它是一個(gè)輕量級(jí)的CLI實(shí)用程序,可以將自然語言理解的能力帶入您的命令行。
Shell-AI 只需要簡單的自然語言輸入,就可以為您提供單行命令建議,并幫助您實(shí)現(xiàn)您的意圖。整個(gè)工程代碼不到200行,使用非常方便,尤其對于非技術(shù)專業(yè)人員來說,避免了學(xué)習(xí)很多Linux或者Shell腳本命令,直接可以使用自然語言進(jìn)行操作,同時(shí)對于專業(yè)技術(shù)或者運(yùn)維人員,也會(huì)極大的提高日常工作的效率。在本篇文章中,我們將介紹如何使用Shell-AI工具,并探討其在日常工作中的必要性。
二、Shell-AI 介紹
Shell-AI ( shai
) 是一個(gè) CLI 實(shí)用程序,可為你的命令行帶來自然語言理解的功能。只需用自然語言輸入您想要執(zhí)行的操作, shai
就會(huì)建議可實(shí)現(xiàn)您意圖的單行命令。在幕后,Shell-AI 利用 LangChain 來實(shí)現(xiàn) LLM 的使用,并以優(yōu)秀的 InquirerPy 為基礎(chǔ)構(gòu)建交互式 CLI。
Shell-AI 具備以下特點(diǎn):
-
自然語言輸入:用簡單的英語(或其他支持的語言)描述您想要做什么。
-
命令建議:獲取可完成您要求的單行命令建議。
-
跨平臺(tái):適用于 Linux、macOS 和 Windows。
-
Azure 兼容性:Shell-AI 現(xiàn)在支持 Azure OpenAI 部署。
三、Shell-AI 安裝
首先需要確保已成功安裝了Python環(huán)境,為了避免依賴沖突,建議還是創(chuàng)建虛擬環(huán)境來安裝Shell-AI,具體安裝在前面的文章中有介紹過多次,然后直接使用 pip 從 PyPI 安裝 Shell-AI:
pip install shell-ai
四、Shell-AI 使用
4.1、環(huán)境變量
OPENAI_API_KEY :必填。將此環(huán)境變量設(shè)置為您的 OpenAI API 密鑰。您可以在 OpenAI 官網(wǎng)上找到它。
4.2、可選變量
-
OPENAI_MODEL
:默認(rèn)為gpt-3.5-turbo
。如果需要,您可以將其設(shè)置為另一個(gè) OpenAI 模型。 -
SHAI_SUGGESTION_COUNT
:默認(rèn)為 3。您可以設(shè)置它來指定要生成的建議數(shù)量。 -
OPENAI_API_BASE
:默認(rèn)為https://api.openai.com/v1
。您可以將其設(shè)置為指定代理或服務(wù)模擬器。 -
OPENAI_ORGANIZATION
:OpenAI 組織 ID -
OPENAI_PROXY
:OpenAI 代理 -
OPENAI_API_TYPE
:如果您使用的是 Azure 部署,則設(shè)置為“azure”。 -
AZURE_DEPLOYMENT_NAME
:您的 Azure 部署名稱(如果使用 Azure,則為必需)。 -
AZURE_API_BASE
:您的 Azure API 庫(如果使用 Azure,則為必需)。
4.3、配置文件
我們也可以將這些變量存儲(chǔ)在 JSON 配置文件中:
-
對于 Linux/macOS:在
~/.config/shell-ai/
下創(chuàng)建一個(gè)名為config.json
的文件,并使用chmod 600 ~/.config/shell-ai/config.json
保護(hù)它。 -
對于 Windows:在
%APPDATA%\shell-ai\
下創(chuàng)建一個(gè)名為config.json
的文件
示例 config.json
:
{
"OPENAI_API_KEY": "your_openai_api_key_here",
"OPENAI_MODEL": "gpt-3.5-turbo-0613",
"SHAI_SUGGESTION_COUNT": "3",
"OPENAI_API_BASE":"your_open_ai_proxy_url"
}
應(yīng)用程序?qū)脑撐募凶x?。ㄈ绻嬖冢?,并覆蓋任何現(xiàn)有的環(huán)境變量。
設(shè)置這些配置后運(yùn)行應(yīng)用程序。
4.5、案例實(shí)戰(zhàn)
安裝完成后,就可以使用 shai
命令調(diào)用該實(shí)用程序。
五、總結(jié)
本文介紹了一個(gè)名為Shell-AI的小工具,它是一個(gè)輕量級(jí)的CLI實(shí)用程序,可以將自然語言理解的能力帶入您的命令行。Shell-AI只需要簡單的自然語言輸入,就可以為您提供單行命令建議,并幫助您實(shí)現(xiàn)您的意圖。整個(gè)工程代碼不到200行,使用非常方便,尤其對于非技術(shù)專業(yè)人員來說,避免了學(xué)習(xí)很多Linux或者Shell腳本命令,直接可以使用自然語言進(jìn)行操作。同時(shí)對于專業(yè)技術(shù)或者運(yùn)維人員,也會(huì)極大地提高日常工作的效率。文章來源:http://www.zghlxwxcb.cn/news/detail-703721.html
六、References
https://github.com/ricklamers/shell-ai文章來源地址http://www.zghlxwxcb.cn/news/detail-703721.html
到了這里,關(guān)于Shell-AI:基于LLM實(shí)現(xiàn)自然語言理解的CLI工具的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!