大家好!我是韩老师。

不得不说,最近 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. php变量规范命名用了记得消除,保证唯一性

    PHP中的命名规则 类的命名  在为类(class )命名前首先要知道它是什么.如果通过类名的提供的线索,还是想不起这个类是什么的话,那么就说明设计存在问题. 超过三个词组成的混合名是容易造成系统各个 ...

  2. Chrome 103支持使用本地字体,纯前端导出PDF优化

    在前端导出PDF,解决中文乱码一直是一个头疼的问题.要解决这个问题,需要将ttf等字体文件内容注册到页面PDF生成器中.但是之前网页是没有权限直接获取客户机器字体文件,这时就需要从服务器下载字体文件或 ...

  3. Datawhale组队学习_Task04:详读西瓜书+南瓜书第5章

    第5章 神经网络 5.1 神经元模型 基本定义:神经网络是由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体所做出的交互反应. M-P神经元模型:   在此模型 ...

  4. 【Java Web】项目通用返回模块ServerResponse:枚举code状态码、泛型返回值、序列化注解限制数据

    一.枚举类编写ResponseCode package com.boulderaitech.common; /** * 编写枚举类的步骤 * (1)编写所需的变量 * (2)编写枚举类构造方法 * ( ...

  5. 【Spark】Day03-Spark SQL:DataFrame、DataSet、sql编程与转换、项目实战(区域热门商品)

    一.概述 1.介绍 将Spark SQL转换成RDD,然后提交到集群执行[对比hive] 提供2个编程抽象:DataFrame&DataSet 可以使用SQL和DatasetAPI与Spark ...

  6. 24V转5V降压芯片,24V转3.3V的稳压芯片,中文规格书

    一般说明PW2312 是一个高频,同步,整流,降压,开关模式转换器内部功率 MOSFET.它提供了一个非常紧凑的解决方案,以实现 1.5A 的峰值输出电流在广泛的输入电源范围内,具有优良的负载和线路调 ...

  7. 5V升压12.6V

    产品概述 PW4053 是一款 5V 输入,最大 1.2A 充电电流,支持三节锂离子电池的升压充电管理 IC.PW4053 集成功率 MOS,采用异步开关架构,使其在应用时仅需极少的外围器件,可有效减 ...

  8. http 缓存 笔记

    http 缓存,有时候静态资源没更新的情况下,不需要每次都去服务器获取,减少资源的请求. Http 报文中与缓存相关的首部字段 1. 通用首部字段(就是请求报文和响应报文都能用上的字段) 2. 请求首 ...

  9. 0停机迁移Nacos?Java字节码技术来帮忙

    摘要:本文介绍如何将Spring Cloud应用从开源Consul无缝迁移至华为云Nacos. 本文分享自华为云社区<0停机迁移Nacos?Java字节码技术来帮忙>,作者:华为云PaaS ...

  10. 【机器学习】李宏毅——Recurrent Neural Network(循环神经网络)

    假设我们当前要做一个人工智能客服系统,那该系统就需要对用户输入的话语进行辨认,例如用户输入: I want to arrive Taipei on November 2nd 那么该系统就能够辨认出来T ...