AI Shell:在命令行里“对话” AI ,微软推出将 AI 助手引入命令行的 CLI 工具,打造对话式交互命令行

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  • 功能:AI Shell 是一款将 AI 集成到命令行中的 CLI 工具。
  • 模式:支持独立运行和与 PowerShell 7 集成两种模式。
  • 代理:内置多个 AI 代理,支持与不同 AI 模型互动。

正文(附运行示例)

AI Shell 是什么

在这里插入图片描述

AI Shell 是一款命令行工具,将人工智能的强大能力直接带到了命令行环境中。它设计用于帮助用户在命令行中获取各种 AI 助手的命令建议,从而提高生产力。AI Shell 通过多代理框架提供了丰富的功能和灵活的使用模式。每个代理都是一个库,可以用来与不同的 AI 模型或辅助提供者进行对话式的交互。

AI Shell 的主要功能

  • 多代理支持:AI Shell 内置了多个代理,如 openai-gptazure 代理,支持与不同 AI 模型进行互动。
  • 灵活的使用模式:支持独立运行和与 PowerShell 7 集成两种模式,用户可以根据自己的需求选择合适的使用方式。
  • 丰富的命令:提供了多种聊天命令,如 /agent/code/help 等,方便用户与 AI 代理进行交互。

AI Shell 的技术原理

  • 代理框架:AI Shell 通过代理框架支持多种 AI 代理,每个代理都可以独立配置和使用。
  • 命令行集成:AI Shell 可以与 PowerShell 7 深度集成,提供无缝的命令行体验。
  • 用户配置:用户可以通过配置文件 config.json 自定义默认代理和其他设置。

如何运行 AI Shell

安装 AI Shell

AI Shell 支持 Windows、MacOS 和 Linux 平台。以下是安装步骤:

  1. Windows 平台
  • 系统要求:Windows 10 或更高版本,PowerShell 7.4.6 或更高版本,Windows Terminal。
  • 运行以下命令安装 AI Shell:
Invoke-Expression "& { $(Invoke-RestMethod 'https://aka.ms/install-aishell.ps1') }"
  1. MacOS 平台
  • 系统要求:macOS v13 Ventura 或更高版本,PowerShell 7.4.6 或更高版本,iTerm2 终端应用。
  • 运行以下命令安装 AI Shell:
curl -s https://aka.ms/install-aishell.ps1 | pwsh
  1. Linux 平台

启动 AI Shell

  • 独立运行模式
    • 直接运行 aish 命令启动 AI Shell。
  • 与 PowerShell 7 集成模式
    • 在 PowerShell 7 中运行 Start-AIShell 命令启动 AI Shell。

示例代码

以下是一个简单的示例,展示如何使用 aishopenai-gpt 代理进行互动:


# 启动 AI Shell
Start-AIShell

# 选择 openai-gpt 代理
@openai-gpt

# 输入命令
How to create a text file named helloworld in PowerShell?

# 使用 /code post 命令将生成的代码插入到 PowerShell 会话中
/code post

使用 AI Shell 的额外技巧

快捷键

AI Shell 提供了一些快捷键,使用户能够更高效地使用工具。以下是一些常用的快捷键:

快捷键命令功能
Ctrl+d, Ctrl+c/code copy将所有生成的代码片段复制到剪贴板
Ctrl+/code copy <n>将第 n 个生成的代码片段复制到剪贴板
Ctrl+d, Ctrl+d/code post将所有生成的代码片段发布到已连接的应用程序
Ctrl+d, /code post <n>将第 n 个生成的代码片段发布到已连接的应用程序

代理配置

AI Shell 提供了一个框架,用于创建和注册多个 AI 代理。你可以使用它们与不同的 AI 模型进行交互。AI Shell 发布时内置了两个代理:openai-gptazure

如果你本地构建项目,还可以支持其他代理

  • openai-gpt:要配置代理,请运行 /agent config openai-gpt 以在默认编辑器中打开设置文件。
  • ollama:要配置Ollama代理的条件目前比较苛刻。若要更改模型,您需要修改 OllamaChatService 类中的查询代码。默认模型是 phi3。默认端点是 http://localhost:11434/api/generate ,默认端口是 11434。这可以在代码中更改,最终将被添加到配置文件中。
  • interpreter:要配置代理,运行 /agent config interpreter 以在默认编辑器中打开设置文件。
  • azure`

当你运行 aish 时,系统会提示你选择一个代理。

基本配置

可以在 ~/.aish 下创建一个名为 config.json 文件来配置 AI Shell,例如设置默认代理等。

{
  "DefaultAgent": "openai-gpt"
}

注意:目前,AI Shell 仅支持非常基本的配置,它只支持声明启动时使用的默认代理。这样,您每次运行 aish.exe 时就不需要选择代理了。

切换代理

可以使用聊天消息中的 @<agentName> 语法在代理之间切换。例如:

@openai-gpt

或者使用聊天命令切换代理:

/agent use openai-gpt

解决错误

如果在工作终端中遇到错误,可以使用 Resolve-Error cmdlet 将此错误发送到打开的 AI Shell 窗口以解决问题。此命令要求 AI 模型帮助你解决错误。

Resolve-Error

调用 AI Shell

可以使用 Invoke-AIShell cmdlet 将查询发送到打开的 AI Shell 窗口中的当前代理。此命令允许你从工作终端与 AI 模型进行交互。

Invoke-AIShell "How to list all storage accounts in Azure PowerShell?"

插入代码

与代理聊天时,可以使用 /code post 命令将响应中的代码自动插入到工作 shell 中。这是快速获取在 shell 中运行所需的代码的最简单方法。还可以使用热键 Ctrl+d, Ctrl+d 将代码插入工作 shell。

/code post

聊天明亮

以下是与 AI 模型交互的一些基本聊天命令。在聊天会话中使用/help 命令可以查看所有可用的命令及其说明。

NameDescriptionSource
/agentCommand for agent management.Core
/clsClear the screen.Core
/codeCommand to interact with the code generated.Core
/dislikeDislike the last response and send feedback.Core
/exitExit the interactive session.Core
/helpShow all available commands.Core
/likeLike the last response and send feedback.Core
/refreshRefresh the chat session.Core
/renderRender a markdown file, for diagnosis purpose.Core
/retryRegenerate a new response for the last query.Core

特别注意:

  • 由于将其用作独立可执行文件,因此 /code post 命令将不起作用。
  • 这些命令是专为 PowerShell 7 设计的 sidecar 体验而设计。

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

### 如何在命令行中使用 Ollama Ollama 是一种用于运行和管理大型语言模型工具,支持通过命令行界面进行操作。以下是关于如何在命令行环境中使用 Ollama 的详细介绍。 #### 安装 Ollama 要开始使用 Ollama,首先需要安装它。可以通过以下命令下载并安装最新版本: ```bash curl https://ollama.ai/install.sh | sh ``` 此脚本会自动检测操作系统,并完成必要的配置[^1]。 #### 启动虚拟机 如果尚未启动 Ollama 所需的虚拟环境,则需要手动执行该步骤。可以使用 VirtualBox 或其他虚拟化技术来创建所需的虚拟机器实例。例如,在 VirtualBox 中启动名为 `Ubuntu10.10` 的虚拟机会涉及如下命令: ```bash VBoxManage startvm Ubuntu10.10 ``` 这一步骤可能因具体需求而有所不同,取决于所使用的虚拟化平台以及目标系统的名称[^4]。 #### 使用 Ollama 命令行接口 一旦成功安装了 Ollama 并设置了相应的虚拟环境,就可以直接调用其 CLI 工具来进行各种交互式任务。基本语法结构如下所示: ```bash ollama run <model_name> --interactive ``` 其中 `<model_name>` 表示希望加载的语言模型的名字。例如,假设我们想基于 Qwen 模型构建对话服务,那么完整的指令可能是这样的形式: ```bash ollama run qwen --interactive ``` 上述命令将会开启一个实时聊天窗口,允许用户输入自然语言查询并与选定的大规模预训练神经网络交流。 另外需要注意的是,在 Shell 脚本编写过程中遇到数值计算时应特别小心处理数据类型转换问题。像 Bash 默认不支持浮点数加减乘除运算一样简单例子演示如下错误提示信息解释原因所在之处在于整数与小数之间存在差异无法直接相加得到预期结果因此必须借助外部程序如 bc 来实现更复杂的数学表达式的求解过程: ```bash echo $(bc <<< "scale=2; 3.3+4.2") ``` 这样就能正确得出两者之和等于7.5的结果而不是报错终止进程继续往下执行下去。 #### FTP 连接切换技巧 当涉及到远程服务器上的文件传输作业时,可能会频繁更换不同的主机地址连接状态。此时利用 close/disconnect 和 open 组合方式可以在保持当前 session 不断开的前提下快速改变目标站点位置从而提高工作效率减少重复登录退出带来的麻烦[^3]。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值