大家好!我是韩老师。

不得不说,最近 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 机器人吧!

最新文章

  1. 关于Stock Quant与生产内容的理解
  2. 未能导入activex控件,请确保它正确注册
  3. hdu 5087 Revenge of LIS II
  4. BZOJ 2015: [Usaco2010 Feb]Chocolate Giving( 最短路 )
  5. 浅谈敏捷组织中PMO的角色
  6. Android Studio 修改主题
  7. Yii2.0源码阅读-一次请求的完整过程
  8. PetaPoco批量插入数据
  9. C++笔记007:易犯错误模型——类中为什么需要成员函数
  10. 接口调用(发送http请求)
  11. class和style属性
  12. 用abp vNext快速开发Quartz.NET定时任务管理界面
  13. 小程序开发--移动端分辨率与rpx
  14. webpack教程(一)——初体验
  15. SaltStack 数据系统 Grains Pillar
  16. jira发送邮件报错
  17. 提供PPT嵌入Winform/WPF解决方案,Winform/WPF 中嵌入 office ppt 解决方案
  18. SQLSERVER 分区表实战
  19. TSQL update 简单应用小总结
  20. 栈的应用实例——计算后缀表达式

热门文章

  1. Git配置和使用?Git你真的会用么?Git与SVN的主要区别
  2. 【题解】CF1215C Swap Letters
  3. C++ 中指针常量、指向常量的指针、引用类型的常量
  4. 我的Python基础(二)
  5. python3获取列表逆序的五种方式
  6. day33 过滤器filter & 监听器listener & 利用反射创建BaseServlet实现调用自定义业务方法
  7. mingw+CLion环境下在Windows下编译配置并使用opencv
  8. Linux通过脚本实现多台主机统一部署
  9. ArcObjects SDK开发 013 MapFrame
  10. 粘包、struct模块、进程并行与并发