写点什么

我的天,你还不会搭建 ChatGPT 微应用吗?| 社区征文

作者:三掌柜
  • 2023-03-08
    江苏
  • 本文字数:3527 字

    阅读完需:约 12 分钟

我的天,你还不会搭建ChatGPT微应用吗?| 社区征文

目录

  • 引言

  • 定义:何为 ChatGPT?

  • 背景:ChatGPT 敢为人先,打破全球僵局

  • 示例:基于 ChatGPT 微应用实现的条件及步骤

  • (1)整体框架

  • (2)搭建前的准备工作

  • (3)实际搭建步骤

  • (4)体验分析

  • 番外:ChatGPT 之初体验

  • 探讨:ChatGPT 是未来的 AIGC 吗?

  • 结语

  • 参考文献


引言

从去年 11 月份至今,刷爆全球技术圈的 AI 技术是什么?大家肯定会异口同声的说:ChatGPT。从 ChatGPT 诞生到现在,从刚开始短短一周时间注册用户就达到了 100 万,再到目前注册及使用人数已破亿,在短短的 3 个月时间里 ChatGPT 一直占据各大技术社区和平台的榜首,各种关于它的话题讨论也是层出不穷,ChatGPT 的热度“高烧不退”,说明了什么呢?原因不用多说,那是因为 ChatGPT 不仅可以写论文、写代码,还可以写情书、写邮件,甚至还可以写诗、当“翻译”、当“感情导师”。本文通过对 ChatGPT 相关内容的分享,结合笔者尝试通过搭建类似 ChatGPT 的微应用,来阐释一下 ChatGPT 所带来的美好体验和变化。

定义:ChatGPT 是什么?

ChatGPT(全名:Chat Generative Pre-trained Transformer),是由美国 OpenAI 研发的聊天机器人程序 ,在 2022 年 11 月 30 日发布。ChatGPT 是一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人类的语言来进行对话,还能根据实际聊天的上下文进行互动,真的可以像人一样来聊天交流,而且能完成撰写邮件、视频脚本、策划文案、翻译、写代码、写论文等任务,目前注册及使用人数已破亿。


背景:ChatGPT 敢为人先,打破全球僵局

目前非常热门的人工智能(AI)自然语言处理应用工具非 ChatGPT 莫属,它能够通过学习和理解人类的语言来进行对话,可广泛应用于客服聊天机器人、问答、虚拟助手等应用领域。它还被用于模仿人类生成多种格式的文本,包括对话、讲故事、写小说等。ChatGPT 因其能够理解自然语言,生成高质量、连贯的文本和有意义的响应而获得公众和研究界的赞誉褒奖。

 

ChatGPT 能够产出很出色的内容,一定程度上展现了 AI 能力发展新的里程碑,但也是分水岭,存在着一些局限性,比如它的准确性目前还难以完全满足实际要求,而且目前全球各大科技巨头纷纷在尝试入局 AIGC,ChatGPT 目前还未开源,商业模式也不太清晰,不仅能够给国内的 AI 科技公司留出一定的时间和空间,还能让 ChatGPT 在初期使用中引起的一些弊端展现出来,方便朝着正确的方法发展。虽然 ChatGPT 和 AICG,以及阿尔法狗都是人工智能发展到一定程度的必然产物,但是 ChatGPT 的诞生还是造成了颠覆认知的影响,尤其是随着 ChatGPT 不断地完善和进步,它真的可以取代人类的一些日常工作。

 

个人理解,ChatGPT 就是一个能“琴棋书画”的 AI 虚拟人,不仅会学着人类的思维在问答中互动,而且能够解决选择困难症的问题,更能解决比较专业的领域问题,是个百事通。接下来笔者通过搭建类似 ChatGPT 的微应用,来从技术实现层面分享一下 ChatGPT 的使用体验。

示例演示:基于 ChatGPT 微应用实现的条件及步骤

那么接下来,将演示使用无服务器计算产品构建一个无服务器的 Web 应用程序作为个人 AI 助手,即仿 ChatGPT 微应用。本示例演示中使用的所有服务都涵盖在 AWS 的相关产品内,调用的 Amazon Lambda 等 Serverless 相关产品,以及通过 Amazon S3 构建一个无服务器的 Web 应用程序来作为个人 AI 助手的核心技术。

(1)整体框架

  • 通过使用 Amazon S3 托管前端客户端的 Html、JS、CSS 文件;

  • 通过使用 Amazon API Gateway 将前端的请求从客户端路由再到后端服务的过程;

  • 通过使用 Amazon Lambda 部署后端服务 ,核心包含:API 鉴权、用户登录、处理来自客户端的聊天会话请求,以及调用 OpenAI SDK 从 OpenAI 服务器获取响应文本再返回给到客户端等流程。

(2)搭建前的准备工作

  • 通过自己的渠道自行创建一个 OpenAI 账户,并且去 OpenAI 管理后台创建一个 API 密钥(该密钥是调用 OpenAI 的 API 的时候会用到);

  • 注册一个亚马逊云科技平台的账户(后面在搭建的时候会一直用到);

  • 搭建好本地的运行环境,如 Nodejs、Visual Studio Code ;

  • 提前下载好 AWS 关于 OpenAI 的代码 demo,这里通过 github 上下载到本地,具体命令行:git clone https://github.com/aws-samples/aws-serverless-openai-chatbot-demo.git

  • 分别转到 server 文件夹下的各个 lambda 函数文件夹,安装依赖项并打包制作 . zip 文件,以上传到 Amazon Lambda。制作 zip 的命令如下所示:

cd server/lambda_chatnpm installzip -r lambda_chat.zip .
复制代码


(3)实际搭建步骤

1、打开并登录 AWS 的管理后台,创建一个 Lambda 函数用来处理会话聊天


2、把上面创建的 lambda_chat.zip 上传到 Lambda 代码源中。


3、从环境变量中,创建”OPENAI_API_KEY“的键,并把应用的 OpenAI API KEY 配置成值。



4、参照步骤 1,依次创建用于 Amazon API Gateway 请求鉴权的 Lambda 函数、用于处理用户登录请求的 Lambda 函数。需要注意的是,同样要设置对应的环境变量的键值,以及上传压缩好的 zip 文件。

5、创建 API Gateway,即创建一个名字为“chatbot”的 HTTP API



6、在 chatbot API 下面新创建两个 POST 请求方法的路由



7、给/chat 路由创建 Lambda 授权方,以及集成到 Lambda 函数中



8、给/login 路由创建 Lambda 集成



9、设置 API Gateway 的 CORS 配置



10、部署 Amazon S3 托管前端客户端的网站



11、编译网站的静态文件,替换上面创建的实际的 API gateway 端点



12、编译前端部分的静态文件,使用命令行:npm run build,然后把打包好的 build 内的文件部署到上面的 Amazon S3,上传命令行:

aws s3 sync ./build/ s3://bucket-name/



13、完成上面的所有操作步骤之后,可以在 PC 或者手机浏览器中访问 Amazon S3 网站,即可体验效果



以上就是本次关于搭建类 ChatGPT 微应用的大致步骤,通过 AWS 的相关产品构建一个无服务器 Web 的类 ChatGPT 微应用,整体操作流程很顺畅,值得体验一下。

(4)体验分析

虽然通过上面的关于 ChatGPT 功能的使用示例,没有涉及到 ChatGPT 核心的工作原理,但是通过体验使用 ChatGPT 也能略知一二。想必读者都知道 ChatGPT 是一款自然语言处理模型,它是基于深度学习技术,利用大量数据进行训练,从而生成高质量的文本内容。AWS 关于调用 OpenAI SDK 从 OpenAI 服务器获取响应文本再返回给到客户端的过程,OpenAI 的接口返回速度很快,体验流程无卡顿,最主要的点就是搜索的结果,完美的回答了测试问到的问题,而且答案也很精准,是期望的答案,非常不错。


番外:ChatGPT 之初体验

从去年 11 月底 ChatGPT 问世,笔者就在当年的 12 月份体验了 ChatGPT,首次体验 ChatGPT 的感觉是很惊叹的,当时能想到的就是 ChatGPT 的回答解决了常规的问答问题,尤其是传统搜索引擎不能满足精准回复的缺陷,通过传统收缩引擎获得的答案需要搜索者耗费大量时间去对比和验证才能得到自己想要的答案,毕竟搜索到的答案鱼龙混杂。但是 ChatGPT 的诞生解决了这个最大的痛点问题,打破了传统搜索引擎的通病,极大的提高了搜索用户的搜索效率,研发 ChatGPT 只是为了解决传统搜索的弊端,但是 ChatGPT 却实现了完美超越。分享一下使用 ChatGPT 的体验截图。



探索:ChatGPT 是未来的 AIGC 吗?

从 ChatGPT 的诞生以及在短期内的井喷热度,有人说是第四次技术革命,又有人说是挑战人类工作的竞争者,还有人说是整治科技圈的利器,不管怎么说 ChatGPT 的出现在短时间内掀起的高潮和热度是必然事件。因为人工智能近几年的快速发展以及技术沉淀,诞生 ChatGPT 是意料之中的事情。

 

而且我相信 ChatGPT 的出现是起点而不是终点,接下来肯定还会有类似 ChatGPT 的 ChatGPT2、ChatGPT3 的出现,同时我也相信国内的互联网企业能够紧追其上,早日推出国内版类 ChatGPT 的产品,也希望 ChatGPT 带来更多的是改变美好生活,而不是制造问题,期待着 ChatGPT 改变美好生活!

 

个人觉得,ChatGPT 带来的热度在短时间内不会消退,而且随着全球互联网企业的纷纷入手类 ChatGPT 应用,势必会继续让 ChatGPT 保持热度,也会有越来越多的类 ChatGPT 问世。无论是国外还是国内,ChatGPT 将成为新的风口,ChatGPT 的应用场景越来越多,同时会改变一些生活体验,也会改变一些工作方式。

结束语

作为技术开发人员,不仅仅只是体验使用 ChatGPT 的功能,更应该去了解 ChatGPT 的核心原理以及研发步骤,这样才能保持一个技术持续更新的状态,而且也能在技术研究中提升自身价值。ChatGPT 的出现,不仅提高了使用者的开发和学习效率,而且还促进了一些行业的变革,但是事物的出现都有两面性,有好的一面,必然有不好的一面;我们使用 ChatGPT 只取它的优点,要理性的使用 ChatGPT,而不是极度的依赖它,ChatGPT 可以是解决问题的一种很好的选项,但不是唯一的选择。未来一段时间内,ChatGPT 会不断地完善和优化,随着模型的性能和个性化的提升,ChatGPT 真的可以成为人类的专属 AI 助手,让我们一起期待那天的到来!

 

参考文献

亚马逊云科技官网--Lambda 入门:https://docs.aws.amazon.com/zh_cn/lambda/latest/dg/getting-started.html

发布于: 2023-03-08阅读数: 143
用户头像

三掌柜

关注

某某某技术有限责任公司架构师 2021-02-05 加入

一分耕耘,不一定有一分收获,但十分耕耘,一定会有一分收获!

评论 (22 条评论)

发布
用户头像
20 小时前 · 河南
回复
用户头像
牛逼
2023-03-08 22:05 · 上海
回复
用户头像
2023-03-08 19:35 · 湖北
回复
用户头像
666
2023-03-08 18:21 · 上海
回复
用户头像
很好,大大的赞!
2023-03-08 17:38 · 江苏
回复
谢谢大佬捧场
2023-03-08 18:08 · 江苏
回复
用户头像
不错,收藏了。
2023-03-08 16:19 · 河南
回复
用户头像
厉害厉害厉害👍
2023-03-08 16:11 · 北京
回复
用户头像
经典
2023-03-08 16:10 · 贵州
回复
用户头像
优秀
2023-03-08 16:00 · 河南
回复
用户头像
厉害了
2023-03-08 15:55 · 湖北
回复
用户头像
绝世大雕
2023-03-08 15:54 · 河南
回复
用户头像
真是好啊
2023-03-08 15:53 · 广东
回复
用户头像
冲冲冲!
2023-03-08 15:53 · 湖北
回复
用户头像
写的好
2023-03-08 15:49 · 上海
回复
用户头像
大腿。。。
2023-03-08 15:49 · 湖北
回复
用户头像
太好了,不错
2023-03-08 15:49 · 河南
回复
用户头像
牛逼
2023-03-08 15:49 · 广东
回复
用户头像
点赞
2023-03-08 15:34 · 广东
回复
用户头像
绝世好文!!!
2023-03-08 15:31 · 上海
回复
用户头像
好文必须点赞
2023-03-08 15:27 · 北京
回复
谢谢支持!
2023-03-08 15:30 · 江苏
回复
没有更多了
我的天,你还不会搭建ChatGPT微应用吗?| 社区征文_人工智能_三掌柜_InfoQ写作社区