可能是最简单的本地GPT3 对话机器人,支持OpenAI 和 Azure OpenAI
毫无疑问,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的更多相关文章
- Java8简单的本地缓存实现
原文出处:lukaseder Java8简单的本地缓存实现 这里我将会给大家演示用ConcurrentHashMap类和lambda表达式实现一个本地缓存.因为Map有一个新的方法,在 ...
- mysql 5.7.29 在centos7.6下超简单的本地yum源安装与配置
目录 生成yum源元数据 从网易镜像站下载MySQL 5.7 的 bundle包 创建文件 mysql-local.repo 执行yum install命令 生成yum源元数据 createrepo ...
- 【Azure 机器人】微软Azure Bot 编辑器系列(1) : 创建一个天气对话机器人(The Bot Framework Composer tutorials)
欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人. 在该系列文章中,每一篇都将通过添加更多的功能来构建机器人.当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather ...
- 打造一个window桌面应用:在线聊天对话机器人
大家好,我是辰哥~~~ 本文目标:打造一个window桌面应用:在线聊天对话机器人. 今天辰哥教大家做一个在线聊天对话机器人桌面应用,已经打包成exe可执行文件,读者可以直接拿来使用, 先上演示图 聊 ...
- NSIS:简单按钮美化插件SkinButton,支持透明PNG图片。
原文 NSIS:简单按钮美化插件SkinButton,支持透明PNG图片. 征得作者贾可的同意,特发布按钮美化插件SkinButton. 插件说明: 使用GDI+库写的一个简单按钮美化插件,支持透明P ...
- 【vue】本地开发mock数据支持
项目离不开数据渲染的支持,为本地开发配置 数据 支持. (一)方式一:安装JSON Server搭建mock数据的服务器 json Server 是一个创建 伪RESTful服务器的工具. 配置流程 ...
- 树莓派打造对话机器人 Python(转)
工具列表 1. **树莓派**(型号不要求,本人使用的是3B) 2. **usb麦克风**(某宝有卖,我就不打广告了) 用来录音 3. **音响或者喇叭**(某宝也有卖) 用来播放 以上就是需要的工具 ...
- Git-最简单的本地项目变成版本仓库,然后把内容推送到GitHub仓库
(注:本文的前提是本地Git仓库和github仓库之间已经存在SSH key了,所以如果没有建立联系的小伙伴们请先建立联系) 具体操作: 一:把本地项目变成版本仓库 1.把本地的一个项目目录编程版本库 ...
- node搭建简单的本地服务器
首先要安装node,方法很多,可以去网上找找,可以直接去官网下载安装,新版本的node是自带npm的: 安装好以后,新建一个js文件,名为server.js: let http = require(' ...
- 使用百度ai接口加图灵机器人完成简单web版语音对话
app文件 from flask import Flask, request, render_template, jsonify, send_file from uuid import uuid4 i ...
随机推荐
- 一个 MySQL 隐式转换的坑,差点把服务器整崩溃了
我是风筝,公众号「古时的风筝」,专注于 Java技术 及周边生态. 文章会收录在 JavaNewBee 中,更有 Java 后端知识图谱,从小白到大牛要走的路都在里面. 本来是一个平静而美好的下午,其 ...
- docker安装消息队列(rabbitmq)及数据库(mongo、mysql)
解决ipv6 访问问题 nohup socat TCP6-LISTEN:36001,reuseaddr,fork TCP4:127.0.0.1:36000 > /root/ip6to4.log ...
- centos8 telnet安装
1. 装包 yum -y install telnet telnet-server 2. 启服务 systemctl enable telnet.socket --now 3. 防火墙开放端口 fir ...
- 已经有 MESI 协议,为什么还需要 volatile 关键字?
本文已收录到 GitHub · AndroidFamily,有 Android 进阶知识体系,欢迎 Star.技术和职场问题,请关注公众号 [彭旭锐] 进 Android 面试交流群. 前言 大家好 ...
- 在CentOS编译Git源码
Git 是一个免费的开源分布式版本控制系统,旨在处理从小到小到的所有内容 具有速度和效率的超大型项目. Git易于学习,占用空间很小,性能快如闪电. 它超越了Subversion,CVS,Perfor ...
- C# Panel动态添加滚动条
/// <summary> /// panel控件的事件:在向该控件添加控件时发生 /// </summary> private void panel1_ControlAdde ...
- 数电第7周周结_by_yc
一.通用双向移位寄存器: 功能描述: 4位的双向移位寄存器,含控制输入端(ctrl).串行输入端(Dsl.Dsr).4个并行输入端和4个并行输出端,要求实现5种功能:异步置零.同步置数.左移.右移 ...
- 微信小程序实战,基于vue2实现瀑布流
1.什么是瀑布流呢? 瀑布流,又称瀑布流式布局.是比较流行的一种网站页面布局,视觉表现为参差不齐的多栏布局,随着页面滚动条向下滚动,这种布局还会不断加载数据块并附加至当前尾部. 瀑布流对于图片的展现, ...
- 通过GitHub和阿里云自定义域名实现https认证
在GitHub中的操作 登录GitHub, 点击"Your repositories",进入个人仓库页面: 点击"new",进入新建仓库页面: 仓库名称填写&l ...
- nuxt.js安装使用
首先要学会看文档,https://www.nuxtjs.cn/guide/configuration 一.创建项目,并运行 终端运行 npx create-nuxt-app <项目名> ( ...