Shell-AI:基于LLM实现自然语言理解的CLI工具

一、前言

随着AI技术的普及,部分技术领域的门槛逐步降低,比如非科班出身,非技术专业,甚至从未涉足技术领域,完全不懂服务器部署和运维,如今可以依托AI大模型非常轻松的掌握和使用相关技术,来解决一些实际问题。

比如在不同的操作系统中总会避免不了需要接触和使用CLI命令行界面,许多任务都需要使用命令行界面进行操作。而对于非技术专业人员来说,在完全没有学习Linux或Shell脚本命令的情况下可能会非常困难,甚至在没基础的情况下现学也会遇到很多问题,止步不前。为了解决这个问题,我们今天介绍一个名为 ++Shell-AI++ 的小工具,它是一个轻量级的CLI实用程序,可以将自然语言理解的能力带入您的命令行。

Shell-AI 只需要简单的自然语言输入,就可以为您提供单行命令建议,并帮助您实现您的意图。整个工程代码不到++200++行,使用非常方便,尤其对于非技术专业人员来说,避免了学习很多Linux或者Shell脚本命令,直接可以使用自然语言进行操作,同时对于专业技术或者运维人员,也会极大的提高日常工作的效率。在本篇文章中,我们将介绍如何使用Shell-AI工具,并探讨其在日常工作中的必要性。

二、Shell-AI 介绍

Shell-AI ( shai ) 是一个 CLI 实用程序,可为你的命令行带来自然语言理解的功能。只需用自然语言输入您想要执行的操作, shai 就会建议可实现您意图的单行命令。在幕后,Shell-AI 利用 LangChain 来实现 LLM 的使用,并以优秀的 InquirerPy 为基础构建交互式 CLI。

Shell-AI 具备以下特点:

  • 自然语言输入:用简单的英语(或其他支持的语言)描述您想要做什么。

  • 命令建议:获取可完成您要求的单行命令建议。

  • 跨平台:适用于 Linux、macOS 和 Windows。

  • Azure 兼容性:Shell-AI 现在支持 Azure OpenAI 部署。

三、Shell-AI 安装

首先需要确保已成功安装了Python环境,为了避免依赖冲突,建议还是创建虚拟环境来安装Shell-AI,具体安装在前面的文章中有介绍过多次,然后直接使用 pip 从 PyPI 安装 Shell-AI:

复制代码
pip install shell-ai

四、Shell-AI 使用

4.1、环境变量

OPENAI_API_KEY :必填。将此环境变量设置为您的 OpenAI API 密钥。您可以在 OpenAI 官网上找到它。

4.2、可选变量

  • OPENAI_MODEL :默认为 gpt-3.5-turbo 。如果需要,您可以将其设置为另一个 OpenAI 模型。

  • SHAI_SUGGESTION_COUNT :默认为 3。您可以设置它来指定要生成的建议数量。

  • OPENAI_API_BASE :默认为 https://api.openai.com/v1 。您可以将其设置为指定代理或服务模拟器。

  • OPENAI_ORGANIZATION :OpenAI 组织 ID

  • OPENAI_PROXY :OpenAI 代理

  • OPENAI_API_TYPE :如果您使用的是 Azure 部署,则设置为"azure"。

  • AZURE_DEPLOYMENT_NAME :您的 Azure 部署名称(如果使用 Azure,则为必需)。

  • AZURE_API_BASE :您的 Azure API 库(如果使用 Azure,则为必需)。

4.3、配置文件

我们也可以将这些变量存储在 JSON 配置文件中:

  • 对于 Linux/macOS:在 ~/.config/shell-ai/ 下创建一个名为 config.json 的文件,并使用 chmod 600 ~/.config/shell-ai/config.json 保护它。

  • 对于 Windows:在 %APPDATA%\shell-ai\ 下创建一个名为 config.json 的文件

示例 config.json

bash 复制代码
{
  "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"
}

应用程序将从该文件中读取(如果存在),并覆盖任何现有的环境变量。

设置这些配置后运行应用程序。

4.5、案例实战

安装完成后,就可以使用 shai 命令调用该实用程序。

五、总结

本文介绍了一个名为Shell-AI的小工具,它是一个轻量级的CLI实用程序,可以将自然语言理解的能力带入您的命令行。Shell-AI只需要简单的自然语言输入,就可以为您提供单行命令建议,并帮助您实现您的意图。整个工程代码不到200行,使用非常方便,尤其对于非技术专业人员来说,避免了学习很多Linux或者Shell脚本命令,直接可以使用自然语言进行操作。同时对于专业技术或者运维人员,也会极大地提高日常工作的效率。

六、References

https://github.com/ricklamers/shell-ai

相关推荐
飞睿科技16 分钟前
乐鑫代理商飞睿科技,2025年AI智能语音助手市场发展趋势与乐鑫芯片解决方案分析
人工智能
许泽宇的技术分享18 分钟前
从新闻到知识图谱:用大模型和知识工程“八步成诗”打造科技并购大脑
人工智能·科技·知识图谱
寻月隐君20 分钟前
保姆级教程:Zsh + Oh My Zsh 终极配置,让你的 Ubuntu 终端效率倍增
linux·后端·命令行
亚马逊云开发者28 分钟前
全景解读亚马逊云科技的 GenBI 解决方案:三大路径助力企业智能决策升级
sql·llm
坤坤爱学习2.032 分钟前
求医十年,病因不明,ChatGPT:你看起来有基因突变
人工智能·ai·chatgpt·程序员·大模型·ai编程·大模型学
蹦蹦跳跳真可爱5891 小时前
Python----循环神经网络(Transformer ----注意力机制)
人工智能·深度学习·nlp·transformer·循环神经网络
空中湖3 小时前
tensorflow武林志第二卷第九章:玄功九转
人工智能·python·tensorflow
lishaoan773 小时前
使用tensorflow的线性回归的例子(七)
人工智能·tensorflow·线性回归
千宇宙航6 小时前
闲庭信步使用SV搭建图像测试平台:第三十一课——基于神经网络的手写数字识别
图像处理·人工智能·深度学习·神经网络·计算机视觉·fpga开发
onceco7 小时前
领域LLM九讲——第5讲 为什么选择OpenManus而不是QwenAgent(附LLM免费api邀请码)
人工智能·python·深度学习·语言模型·自然语言处理·自动化