毫无疑问,GPT是目前最火的人工智能方向,已经商用的有OpenAI公司原生的GPT3 和 ChatGPT ,以及微软公司的Azure OpenAI Service (暂时还没有包含ChatGPT)。关于他们的各种资料以及讨论(甚至争论),网上已经有很多了。我这里不准备重复。本文分享的一个是我自己为了方便使用GPT服务,编写的一个基于PowerShell的小工具。当前版本包含了对话机器人。

下面是一个简单的例子,可以看出虽然这个结果算不上完美,例如它其实以为是9月15日开学,而不是2月15日,但这种一本正经地胡说八道的蜜汁自信,还是让我很惊讶的。【这属于模型层面的不足,以及问法方面可以改进的部分,本文不过多展开】

使用这个工具,你不需要关注每次调用接口的繁琐细节。你只需要一次一次地输入提示,然后它会帮助你去查询并得到回复。

如果你已经有OpenAI 服务的访问权限,不妨试用一下这个工具。

首先,安装这个神奇的模块 (code365scripts.openai) ,如果你以前没有怎么使用过PowerShell,则可能遇到一些初始配置问题,你可以一次性执行下面三个语句即可。

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Set-PsRepository -InstallationPolicy Trusted -Name PSGallery
Install-Module code365scripts.openai -Scope CurrentUser

然后,我建议你将有关的密钥等信息设置到环境变量。

如果你是用OpenAI原生的GPT3 服务,则只需要提供api_key即可。请继续在PowerShell 命令行中执行下面的代码。

SETX OPENAI_API_KEY "你的密钥"
# 下面这个是可选的,如果不设置,则默认使用 text-davinci-003
SETX OPENAI_ENGINE "你的默认模型"

如果你是用Azure OpenAI的GPT3服务,则需要提供多几个环境变量。

SETX OPENAI_API_KEY_AZURE "你的密钥"
SETX OPENAI_ENGINE_AZURE "你的模型"
SETX OPENAI_ENDPOINT_AZURE "你的服务地址"

下图是我机器上面的情况,因为我同时在用OpenAI 原生的服务,和Azure OpenAI 服务,所以变量比较多。

OpenAI 原生服务的key,是以 sk 开头的。

请注意,关闭一下PowerShell窗口,然后重新打开,以便读取这些环境变量。

接下来,就可以通过 gpt 这个快捷命令开始对话了。如果调用OpenAI原生服务,最简单的用法就是只要输入 gpt 即可。

如果调用Azure OpenAI 服务,则可以用 gpt -azure 的方式。

当然,你只要愿意,也可以指定更多的参数来定制化这个对话机器人。

这个工具还支持从文件直接读取内容并提交给GPT,也支持多行输入文本。请输入 m 或 f 进行尝试吧。

可能是最简单的本地GPT3 对话机器人,支持OpenAI 和 Azure OpenAI的更多相关文章

  1. Java8简单的本地缓存实现

    原文出处:lukaseder         Java8简单的本地缓存实现 这里我将会给大家演示用ConcurrentHashMap类和lambda表达式实现一个本地缓存.因为Map有一个新的方法,在 ...

  2. mysql 5.7.29 在centos7.6下超简单的本地yum源安装与配置

    目录 生成yum源元数据 从网易镜像站下载MySQL 5.7 的 bundle包 创建文件 mysql-local.repo 执行yum install命令 生成yum源元数据 createrepo ...

  3. 【Azure 机器人】微软Azure Bot 编辑器系列(1) : 创建一个天气对话机器人(The Bot Framework Composer tutorials)

    欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...

  4. 打造一个window桌面应用:在线聊天对话机器人

    大家好,我是辰哥~~~ 本文目标:打造一个window桌面应用:在线聊天对话机器人. 今天辰哥教大家做一个在线聊天对话机器人桌面应用,已经打包成exe可执行文件,读者可以直接拿来使用, 先上演示图 聊 ...

  5. NSIS:简单按钮美化插件SkinButton,支持透明PNG图片。

    原文 NSIS:简单按钮美化插件SkinButton,支持透明PNG图片. 征得作者贾可的同意,特发布按钮美化插件SkinButton. 插件说明: 使用GDI+库写的一个简单按钮美化插件,支持透明P ...

  6. 【vue】本地开发mock数据支持

    项目离不开数据渲染的支持,为本地开发配置 数据  支持. (一)方式一:安装JSON Server搭建mock数据的服务器 json Server 是一个创建 伪RESTful服务器的工具. 配置流程 ...

  7. 树莓派打造对话机器人 Python(转)

    工具列表 1. **树莓派**(型号不要求,本人使用的是3B) 2. **usb麦克风**(某宝有卖,我就不打广告了) 用来录音 3. **音响或者喇叭**(某宝也有卖) 用来播放 以上就是需要的工具 ...

  8. Git-最简单的本地项目变成版本仓库,然后把内容推送到GitHub仓库

    (注:本文的前提是本地Git仓库和github仓库之间已经存在SSH key了,所以如果没有建立联系的小伙伴们请先建立联系) 具体操作: 一:把本地项目变成版本仓库 1.把本地的一个项目目录编程版本库 ...

  9. node搭建简单的本地服务器

    首先要安装node,方法很多,可以去网上找找,可以直接去官网下载安装,新版本的node是自带npm的: 安装好以后,新建一个js文件,名为server.js: let http = require(' ...

  10. 使用百度ai接口加图灵机器人完成简单web版语音对话

    app文件 from flask import Flask, request, render_template, jsonify, send_file from uuid import uuid4 i ...

随机推荐

  1. redis位图(bitmap)常用命令的解析

    描述   bitmap是redis封装的用于针对位(bit)的操作,其特点是计算效率高,占用空间少,常被用来统计用户签到.登录等场景 常用命令及解析 常用命令 setbit key offset va ...

  2. Perl读取Excel中的数据

    #!usr/bin/perl -W use strict; use Spreadsheet::ParseExcel;#PERL的Spreadsheet::ParseExcel模块支持Excel的读操作 ...

  3. C#多线程之高级篇(上)

    前言 抛开死锁不谈,只聊性能问题,尽管锁总能粗暴的满足同步需求,但一旦存在竞争关系,意味着一定会有线程被阻塞,竞争越激烈,被阻塞的线程越多,上下文切换次数越多,调度成本越大,显然在高并发的场景下会损害 ...

  4. vue3的学习笔记:MVC、Vue3概要、模板、数据绑定、用Vue3 + element ui、react框架实现购物车案例

    一.前端MVC概要 1.1.库与框架的区别 框架是一个软件的半成品,在全局范围内给了大的约束.库是工具,在单点上给我们提供功能.框架是依赖库的.Vue是框架而jQuery则是库. 1.2.MVC(Mo ...

  5. 网络yum源下载

    思路一: 按照本地网罗源,然后使用reposync直接将源同步下载到本地 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/re ...

  6. CPU体系(1):内存模型 & CPU Cache一致性 (待整理)

    C++中的 volatile, atomic, memory barrier 应用场景对比 -- volatile memory barrier atomic 抑制编译器重排 Yes Yes Yes ...

  7. xamarin.Android自动升级

    在写这边文章的时候参考了很多其他人的博客,在此感谢各位.也是给其他的伙伴做一个总结.对于我们新手来说存在的问题还是比较多的. 一.搭建iis服务器 首先我们需要搭建一个可以提供app下载最新版本的网站 ...

  8. vue cli2安装

    安装nodejs npm install -g npm npm自动更新到最新版本 node -v或者npm -v 查看nodejs是否安装成功   1 2 配置淘宝镜像 npm config set ...

  9. qtcreator配置cmake+mingw开发环境

    环境准备 cmake 添加到PATH环境变量. mingw: 这里我用的mingw是Qt自带的,我将其添加到PATH环境变量中. 在cmd中执行 mingw32-make.exe 和 cmake查看命 ...

  10. Android ViewPager2 + Fragment 联动

    Android ViewPager2 + Fragment 联动 本篇主要介绍一下 ViewPager2 + Fragment , 上篇中简单使用了ViewPager2 实现了一个图片的滑动效果, 那 ...