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

相关推荐
凯禾瑞华养老实训室26 分钟前
人才教育导向下:老年生活照护实训室助力提升学生老年照护服务能力
人工智能
湫兮之风1 小时前
Opencv: cv::LUT()深入解析图像块快速查表变换
人工智能·opencv·计算机视觉
Christo32 小时前
TFS-2018《On the convergence of the sparse possibilistic c-means algorithm》
人工智能·算法·机器学习·数据挖掘
qq_508823402 小时前
金融量化指标--2Alpha 阿尔法
大数据·人工智能
黑金IT2 小时前
`.cursorrules` 与 `.cursorcontext`:Cursor AI 编程助手时代下的“双轨配置”指南
人工智能
dlraba8023 小时前
基于 OpenCV 的信用卡数字识别:从原理到实现
人工智能·opencv·计算机视觉
IMER SIMPLE3 小时前
人工智能-python-深度学习-经典神经网络AlexNet
人工智能·python·深度学习
RainbowSea5 小时前
8. LangChain4j + 提示词工程详细说明
langchain·llm·ai编程
RainbowSea5 小时前
7. LangChain4j + 记忆缓存详细说明
langchain·llm·ai编程
小憩-5 小时前
【机器学习】吴恩达机器学习笔记
人工智能·笔记·机器学习