chatgpt赋能powershell

最近chatgpt非常火爆,获得超高曝光度的同时,也让大家对ai和ai工具有了新的认识。关于chatgpt,可以参考这篇文章

今天主要推荐一个可以与powershell集成的ai工具,其后端也是openai的服务,可以有效提高工作效率。

PowerShellAI

安装

打开powershell,运行:

Install-Module -Name PowerShellAI

这里可能会遇到找不到模块提供者的问题:

Install-Package: Unable to find module providers (PowerShellGet).

可以参考这篇文章解决。

安装成功后,从 https://beta.openai.com/account/api-keys 创建和获取OpenAI API密钥,然后设置$env:OpenAIKey环境变量:

# 临时设置,仅对当前会话有效
$env:OpenAIKey="你的OpenAI API密钥"

# 永久设置
[Environment]::SetEnvironmentVariable('OpenAIKey', '你的OpenAI API密钥', 'User')

这样就可以愉快地玩耍了。

使用

目前支持以下命令:

  1. Disable-AIShortCutKey - 禁用生成文本的快捷键ctrl+g
  2. Enable-AIShortCutKey - 使能ctrl+g快捷键
  3. Get-GPT3Completion - 从OpenAI GPT-3 API获取自动生成的文本
  4. Get-DalleImage - 从OpenAI DALL-E API获取自动生成的图片
  5. ai - 实验性的可以用于管道的ai功能
  6. copilot - 生成代码提示,并询问是否运行
  7. Set-DalleImageAsWallpaper - 获取图片后设为壁纸

示例

Get-GPT3Completion可以使用别名gpt

快速演示:

New PowerShell Module: PowerShellAI

命令行中使用快捷键:

Using PowerShell with OpenAI GPT in the console with a shortcut key

ai命令:

PowerShell AI - new ai function

结对编程:

PowerShell AI - copilot at the command line

生成excel表格:

New-Spreadsheet - PowerShell + ChatGPT + Excel

  1. json格式列出行星名
❯ Get-GPT3Completion "list of planets only names as json"

[
    "Mercury",
    "Venus",
    "Earth",
    "Mars",
    "Jupiter",
    "Saturn",
    "Uranus",
    "Neptune"
]
  1. xml
❯ Get-GPT3Completion "list of planets only names as xml"


<?xml version="1.0" encoding="UTF-8"?>
<planets>
  <planet>Mercury</planet>
  <planet>Venus</planet>
  <planet>Earth</planet>
  <planet>Mars</planet>
  <planet>Jupiter</planet>
  <planet>Saturn</planet>
  <planet>Uranus</planet>
  <planet>Neptune</planet>
</planets>
  1. markdown

❯ Get-GPT3Completion "first 5 US presidents and terms as markdown table"


| President | Term |
|----------|------|
| George Washington | 1789-1797 |
| John Adams | 1797-1801 |
| Thomas Jefferson | 1801-1809 |
| James Madison | 1809-1817 |
| James Monroe | 1817-1825 |

复制到当前文章的效果:

PresidentTerm
George Washington1789-1797
John Adams1797-1801
Thomas Jefferson1801-1809
James Madison1809-1817
James Monroe1817-1825
  1. ai命令

ai命令支持piping和prompting,这对将不同命令串起来非常有用:

❯ ai "list of planets only names as json" | ai 'convert to  xml' | ai 'convert to  powershell'


[xml]$xml = @"
<?xml version="1.0" encoding="UTF-8"?>
<Planets>
    <Planet>Mercury</Planet>
    <Planet>Venus</Planet>
    <Planet>Earth</Planet>
    <Planet>Mars</Planet>
    <Planet>Jupiter</Planet>
    <Planet>Saturn</Planet>
    <Planet>Uranus</Planet>
    <Planet>Neptune</Planet>
</Planets>
"@

$xml.Planets.Planet

git一起使用:

❯ git status | ai "create a detailed git message"


Commit message:
Update posts related to STM32 and PowerShell, add two new posts about PowerShell and AI.

公众号 | FunIO
微信搜一搜 “funio”,发现更多精彩内容。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值