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

相关推荐
深度学习实战训练营1 小时前
基于CNN-RNN的影像报告生成
人工智能·深度学习
昨日之日20063 小时前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
浮生如梦_3 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover3 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
热爱跑步的恒川4 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
阡之尘埃6 小时前
Python数据分析案例61——信贷风控评分卡模型(A卡)(scorecardpy 全面解析)
人工智能·python·机器学习·数据分析·智能风控·信贷风控
孙同学要努力8 小时前
全连接神经网络案例——手写数字识别
人工智能·深度学习·神经网络
Eric.Lee20218 小时前
yolo v5 开源项目
人工智能·yolo·目标检测·计算机视觉
其实吧39 小时前
基于Matlab的图像融合研究设计
人工智能·计算机视觉·matlab
丕羽9 小时前
【Pytorch】基本语法
人工智能·pytorch·python