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

相关推荐
一战成名9962 分钟前
CANN 仓库揭秘:昇腾 AI 算子开发的宝藏之地
人工智能
hnult8 分钟前
2026 在线培训考试系统选型指南:核心功能拆解与选型逻辑
人工智能·笔记·课程设计
A小码哥8 分钟前
AI 设计时代的到来:从 PS 到 Pencil,一个人如何顶替一个团队
人工智能
AIGCmitutu14 分钟前
PS 物体底部阴影怎么做?3 步做出自然逼真的投影效果
人工智能·电子商务·photoshop·ps·美工
开源技术17 分钟前
Claude Opus 4.6 发布,100万上下文窗口,越贵越好用
人工智能·python
聆风吟º28 分钟前
CANN hccl 深度解析:异构计算集群通信库的跨节点通信与资源管控实现逻辑
人工智能·wpf·transformer·cann
狸奴算君35 分钟前
告别机械回复:三步微调AI模型,打造会“读心”的智能客服
人工智能
七夜zippoe36 分钟前
脉向AI|当豆包手机遭遇“全网封杀“:GUI Agent是通向AGI的必经之路吗?
人工智能·ai·智能手机·agent·gui
木非哲37 分钟前
机器学习--随机森林--从一棵树的直觉到一片林的哲学
人工智能·随机森林·机器学习
神的泪水41 分钟前
CANN 系列底层篇:基于 shmem 实现 NPU 设备内存的高效共享
人工智能