大家好!我是韩老师。

不得不说,最近 OpenAI/ChatGPT 真的是太火了。

前几天,微软宣布推出全新的 Bing 和 Edge,集成了 OpenAI/ChatGPT 相关的技术,带动股价大涨:

微软市值一夜飙涨 5450 亿

国内外各家大厂也是纷纷跟进,发布或者将要发布与 OpenAI/ChatGPT 对标的 AI 技术。

那么,各家大厂都在加大投入 OpenAI/ChatGPT 类似的 AI 技术。我们普通人是否能搭建一个属于我们自己的 ChatGPT 机器人呢?

答案是肯定的。

虽然 ChatGPT 没有开放官方的 API 或者 SDK,但是 OpenAI 提供了官方的 REST API 以及 Node.js 和 Python 的 SDK。

而且,OpenAI API 所提供的 text-davinci-003model,和 ChatGPT 相类似,也是 GPT-3.5 的 model。

如此一来,我们就可以站在巨人的肩膀上,打造自己的 ChatGPT 机器人!

Mircosot Teams 是一款全球知名的团队协作工具。韩老师就以 Teams 为例,带大家打造一款在 Teams 中运行的 OpenAI/ChatGPT 机器人!

运行后,你就可以在 Teams 与你自己的 ChatGPT 机器人互动啦!

再问问他知不知道疯狂星期四?

接下来,让我们一起看看如何快速地把 ChatGPT 机器人运行起来~

前置条件

1. 注册一个 OpenAI 的账号,然后申请一个 API key

https://beta.openai.com/account/api-keys

2. 安装 Node.js 18

https://nodejs.org/en/

3. 一个 M365 账号。如果没有 M365 账号的话,可以申请一个免费的 M365 开发者账号:

https://developer.microsoft.com/microsoft-365/dev-program

4. 安装 VS Code 和 Teams Toolkit 插件

https://marketplace.visualstudio.com/items?itemName=TeamsDevApp.ms-teams-vscode-extension

本地运行

1. 下载项目代码到本地

https://github.com/formulahendry/openai-teams-bot

2. 在 VS Code 中,打开 openai-teams-bot 项目

3. 在 bot 文件夹下,创建一个 .env.teamsfx.local 文件,然后设置 OPENAI_API_KEY

4. 点击 “F5” 来启动项目

5. 第一次启动时,会让你登录 M365 账号

6. 如果一切顺利,VS Code 会自动打开浏览器,然后添加这个应用即可。

接下来,就可以愉快地和你的 ChatGPT 机器人聊天了~

云端部署

除了在本地运行,是否能分享给更多人一起玩呢?

答案也是肯定的。

通过 Teams Toolkit,可以一键部署,轻松上云,把 ChatGPT 机器人运行在 Azure 上!

1. 登录到 Azure

如果没有 Azure 账号的话,可以创建一个免费的 Azure 账号:

https://azure.microsoft.com/free/

在 VS Code 左侧的边栏中,点击 Teams 的图标,然后点击 “Sign in to Azure”。

2. 创建云端资源

点击 “Provision in the cloud” 来创建 Azure 云资源。

3. 部署代码到云端

点击 “Deploy in the cloud” 把本地的代码部署到 Azure 云端。

4. 运行 ChatGPT 机器人

在 VS Code 左侧的边栏中,点击调试的图标,然后选择 Launch Remote (Edge) 或者 Launch Remote (Chrome),再点击绿色的运行按钮,就能启动浏览器运行 ChatGPT 机器人啦!

了解更多

如果你想要了解更多的内容,可以 star 一下本项目:

https://github.com/formulahendry/openai-teams-bot

项目代码完全是开源的~

一起来玩转 OpenAI/ChatGPT 机器人吧!

从零开始,打造属于你的 ChatGPT 机器人!的更多相关文章

  1. 2021 从零开始打造一个自己的 UI 组件库

    2021 从零开始打造一个自己的 UI 组件库 refs GUI https://github.com/xgqfrms/gui/ https://www.npmjs.com/package/@xgqf ...

  2. 在微信上搭建ChatGpt机器人

    在微信上搭建ChatGpt机器人 项目地址:https://gitee.com/shtml/wechatbot?_from=gitee_search 准备 一个服务器:Windos,Centos,Ub ...

  3. 人工智能不过尔尔,基于Python3深度学习库Keras/TensorFlow打造属于自己的聊天机器人(ChatRobot)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_178 聊天机器人(ChatRobot)的概念我们并不陌生,也许你曾经在百无聊赖之下和Siri打情骂俏过,亦或是闲暇之余与小爱同学谈 ...

  4. 企业微信集成openai实现ChatGPT机器人

    背景: 现在网上查资料,痛点太多了,什么广告,什么重复的,对于程序员的我来说,简直是无语 最近接触到ChatGpt,问了些技术问题,答的比某度好,甚至可以写代码,真的太棒了 因此想写个专门的机器人,给 ...

  5. 从零开始打造个人专属命令行工具集——yargs完全指南

    前言 使用命令行程序对程序员来说很常见,就算是前端工程师或者开发gui的,也需要使用命令行来编译程序或者打包程序 熟练使用命令行工具能极大的提高开发效率,linux自带的命令行工具都非常的有用,但是这 ...

  6. 使用nodejs + wecharty打造你的个人微信机器人

    开源地址:https://github.com/isnl/wechat-robot 注: 从2017年6月下旬开始,使用基于web版微信接入方案存在大概率的被限制登陆的可能性. 主要表现为:无法登陆W ...

  7. Android 从零开始打造异步处理框架

    转载请标明出处:http://www.cnblogs.com/zhaoyanjun/p/5995752.html 本文出自[赵彦军的博客] 概述 在Android中会使用异步任务来处理耗时操作,避免出 ...

  8. [js高手之路]从零开始打造一个javascript开源框架gdom与插件开发免费视频教程连载中

    百度网盘下载地址:https://pan.baidu.com/s/1kULNXOF 优酷土豆观看地址:http://v.youku.com/v_show/id_XMzAwNTY2MTE0MA==.ht ...

  9. 从零开始打造 Mock 平台 - 核心篇

    前言 最近一直在捣鼓毕设,准备做的是一个基于前后端开发的Mock平台,前期花了很多时间完成了功能模块的交互.现在进度推到如何设计核心功能,也就是Mock数据的解析. 根据之前的需求设定加上一些思考,用 ...

  10. 10分钟教你用Python打造微信天气预报机器人

    01 前言 最近武汉的天气越来越恶劣了.动不动就下雨,所以,拥有一款好的天气预报工具,对于我们大学生来说,还真是挺重要的了.好了,自己动手,丰衣足食,我们来用Python打造一个天气预报的微信机器人吧 ...

随机推荐

  1. 支持JDK19虚拟线程的web框架,之五(终篇):兴风作浪的ThreadLocal

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos <支持JDK19虚拟线程的web框架>系列 ...

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

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

  3. .NET刷算法

    BFS模板-宽度优先搜索(Breadth First Search) 1.模板 /// <summary> /// BFS遍历 /// </summary> /// <p ...

  4. 读 Clean Code,关于变量命名和可维护代码

    原文见 http://mindprod.com/jgloss/unmain.html 如何写出不能维护的代码 如何程序命名 容易输入的名字.比如:Fred,asdf 单字母的变量名.比如:a,b,c, ...

  5. HDLBits答案——Circuits

    1 Combinational Logic 1.1 Basic Gates 1.1.1 Exams/m2014 q4h module top_module ( input in, output out ...

  6. Cacheable VS Non-Cacheable

    1 基本概念 在嵌入式软件开发中,经常会碰到说某块内存是cache的,还是non-cache的,它们究竟是什么意思?分别用在什么场景?non-cache和cache的内存区域怎么配置?这篇博文将会围绕 ...

  7. Springboot2.6集成Email

    Springboot集成Email 老版本 这时候的JavaMailSender是受到Spring的托管的,我们只需要配置参数就行了 !如何判断是否是被Springboot托管的:以下代码IDEA会自 ...

  8. 关于linux上实现arp攻击截取密码

    前言 这几天简单的研究了一下arp攻击,有一些进展,记录一下 环境准备 这里我是利用arpspoof 这个软件简单实现arp攻击,这个命令是属于dsniff 软件包中的 所以首先安装软件 sudo a ...

  9. IDEA git配置

    必备:安装Idea \ git配置git坏境:在环境变量中添加git安装包bin目录即可 1.去git官网申请一个账号 https://github.com/ 创建一个新的项目 2.在快速启动栏或者g ...

  10. 漫谈计算机网络:网络层 ------ 重点:IP协议与互联网路由选择协议

    面试答不上?计网很枯燥? 听说你学习 计网 每次记了都会忘? 不妨抽时间和我一起多学学它 深入浅出,用你的空闲时间来探索计算机网络的硬核知识! 博主的上篇连载文章<初识图像处理技术> 图像 ...