ChatGPT软件技术栈解密

article/2024/9/19 9:56:37

ChatGPT 点燃了通用AI浪潮,继农业革命、工业革命、计算机技术革命后,也将可能掀起 AI 技术革命。

业界对 ChatGPT 的 AI 算法关注得比较多,但是 OpenAI 已经演变为服务数亿用户的平台服务。近3个月 ChatGPT 的 SLA 大约99%,也就是说平均每天大约有15分钟不可用,整体技术架构和可靠性也备受关注。

OpenAI 网站近90天状态图

 

OpenAI 网站近90天状态图(绿色表示可用,其它表示异常)

ChatGPT 没有对外正式分享他们的技术架构,所以很难100%准确知道架构大图,本文尝试从以下几个方面:

  • 互联网公开信息(twitter、linkedIn等)
  • OpenAI 最新招聘岗位要求
  • OpenAI 几次故障报告
  • Github 代码

绘制了 ChatGPT 的主要软件技术栈大图。

ChatGPT软件技术栈大图

 

1、云服务

OpenAI 是云时代的 AI 创业公司,所有业务都是架设在公有云上,在创业初期得到 AWS 的支持,下面这个对话是 OpenAI 截止2021年公开信息的回答:

OpenAI 使用了AWS云服务

 

OpenAI 截止2021年公开信息显示使用了AWS云服务

 

上面这段话来自 OpenAI 的官网早期文章介绍,可以看到曾使用了大量 AWS 服务。

近两年又得到微软巨额投资,并且明确了要由 Azure 提供服务。可以肯定 ChatGPT 是在转向以 Azure 为主的多云方案,AWS 服务会逐渐减少。

另外使用了 Terraform 多云管理服务来做云资源的管理。

2、数据库

 

首先问 ChatGPT 自己,基本上都没有明确的答案。不过从官网职位和故障报告可以得到比较准确的信息:

ChatGPT 的核心业务数据保存在关系型数据库 PostgreSQL 中,这个在官方网站有介绍,数亿用户的账号、AK和对话等信息都保存在这里。

2023.2.20号的故障报告也说明了主数据库 PostgreSQL 发生问题。并且提到使用了PgBouncer的连接池服务。

同时使用了 Redis 集群作为缓存服务,在2023.3.20 ChatGPT 爆出了安全漏洞,部分用户可以看到其他人的聊天记录,就是因为踩了 Redis-py 在连接取消状态下会话错乱的 bug,CEO Sam Altman 也在 twitter 出来道歉。

 另外还在招聘中希望懂 CosmosDB,这个目前还不确认用在什么场景,CosmosDB 是 Azure 推出的多模数据库,支持 MongoDB、Cassandra、PostgreSQL、Gremlin 等兼容性接口,是微软在 NoSQL 领域的旗舰产品。

之前 Patrick-McFadin (Cassandra Committer)在 LinkedIn 上提到 OpenAI 使用了 Cassandra,但最终讨论下来是 ChatGPT 自己胡说的,还不能确认是否真的使用了 Cassandra 或者是在 CosmosDB 中使用了 Cassandra 的 API。

另外CosmosDB也通过收购过来的Citus提供的分布式PostgreSQL的接口。不确认是否使用了Citus来完成分布式数据库架构。

ChatGPT 使用了 Snowflake 这个新一代的云原生数据仓库,并且使用了 Tableau 来做数据分析。支持多云部署的 Snowflake 对于业务从 AWS 到 Azure的跨云迁移是非常有利的。

3、前端

在Web前端方面,比较明确的是使用了 TypeScript 语言和 React 框架。

移动端目前 ChatGPT 还没有正式的 APP 发布,不过已经在招聘 iOS 和 Android 工程师,应该快了。

4、应用与服务编程语言

作为以 AI 为基础的科技公司,OpenAI 选择 Python 为核心语言,不管是 AI 岗位还是平台软件工程师岗位,都是需要精通 Python 语言。

平台服务选择 Python,使用了 Python 里比较流行的 Flask 框架,并使用了 OpenAPI 等组件。

5、AI 技术框架

AI 技术框架核心是 Pytorch,可能也使用了 Tensorflow。

OpenAI 自己研发了面向 GPU 的算法框架 Triton,并且在 github 上开源了(
https://github.com/openai/triton),用于代替 NVIDIA 的 CUDA,目标是能更高效的开发机器学习算法。Triton 的编程语言使用了 c++和 python。

关于更细节的 AI 训练和部署服务架构还待挖掘。下图是来自网上陈巍博士分享的一张大模型典型架构图,供参考:

来源:https://zhuanlan.zhihu.com/p/611464068

6、应用部署与监控运维

容器服务:Kubernetes

监控与运维:Prometheues(招聘运维开发工程师提到需要懂PromQL)

日志服务:Splunk

编程语言:Golang、Python

7、参考文档

1. ChatGPT软件工程师岗位描述:

https://openai.com/careers/software-engineer-chatgpt

2. OpenAI 2023.2.20 故障分析报告:

https://status.openai.com/incidents/mq5jgswy45fr

3. OpenAI开源Triton的Github地址:

https://github.com/openai/triton

4. Patrick McFadin在Linkin上讨论ChatGPT是否使用了Cassandra:

https://www.linkedin.com/posts/patrick-mcfadin-53a8046_this-isnt-your-regular-chatgpt-post-so-activity-7031372446536515584-P8fg/?utm_source=share&utm_medium=member_desktop

8、最后

本文作者:叶正盛,NineData 程序员,玖章算术CEO,原阿里云资深技术专家。

NineData 官网:www.ninedata.cloud,提供企业级数据库 SQL 开发工具,数据复制、对比、备份等产品,并提供了类似ChatGPT的SQL服务(SQL AI Copilot),免费使用,无需下载。

欢迎大家留言或者转载!


http://chatgpt.dhexx.cn/article/LfRrqSge.shtml

相关文章

OpenAI模式开发ChatGPT软件

hatGPT是由OpenAI开发的语言模型,其开发模式主要基于以下几个方面: 数据收集和预处理:ChatGPT需要大量的语料库来进行训练和学习,因此需要先收集和处理与应用场景相关的数据。 神经网络架构设计:ChatGPT使用了…

超级模型ChatGPT软件开发

要开发一个超级模型ChatGPT软件,您需要考虑以下几个方面: 训练数据:您需要收集和整理大量的语言数据,以用于训练模型。这些数据可以是文本、音频或视频数据。 模型架构:您需要设计一个适合您的数据集和应用场景…

chatgpt软件批量写作软件-文章改编软件

文章改编软件 文章改编软件是一种能够将原有的文本进行复制粘贴后,通过一定算法进行改写和改编的工具。其主要应用领域在于将一些内容复制到网站或博客等平台上时,避免因为重复内容而被识别为“抄袭”,从而提高文章的独特性和可读性。 然而…

chatgpt软件代开发系统

ChatGPT软件代开发系统可以按照以下步骤进行: 分析客户需求:根据客户需求,明确软件开发的目标和范围,确定项目需求和开发方案。 设计系统架构:根据需求分析结果,设计软件代开发系统的整体架构和技术…

ChatGPT聊天软件开发

ChatGPT聊天软件是一款基于OpenAI技术训练的智能AI对话软件,具有自然语言处理、问答系统、语音交互等多种功能。用户可以通过输入文字或语音与ChatGPT进行互动,询问问题,获取信息以及进行娱乐和休闲。ChatGPT聊天软件支持多语言,为…

chatgpt软件 - chatbox

文章目录 打开github 进入chatgpt官方要记得登录!!点击头像将key命名:安装chatbox下面就可以开始使用啦!! 打开github https://github.com/Bin-Huang/chatbox 特性: 更自由、更强大的 Prompt 能力数据存储…

思码逸任晶磊:ChatGPT 时代的软件研发数据与效能提升

思码逸创始人 & CEO 任晶磊在 2023年3月4日于上海举办的 LeaTech 全球 CTO 领导力峰会上作为演讲嘉宾分享了主题为《ChatGPT 时代的软件研发数据与效能提升》的演讲。 💡文字为分享内容的提炼,您可以在文末获取演讲 PPT。 我在清华大学获得博士学位后…

开发者福利chatGPT软件Build Software. Fast.

目录 1、软件简介 2、安装教程 3、使用教程 (1)CTRLK(生成代码) (2)CTRLL(对话功能) 1、软件简介 Build Software. Fast.是一款可以在编辑器中使用 openAI GPT-4 模型编写的软件 官网地址:https://www.cursor.so…

chatGPT软件智能开发系统

ChatGPT是由OpenAI开发的人工智能语言模型,可以实现自然语言处理、对话生成等功能。要开发一个类似ChatGPT的软件智能开发系统,可以遵循以下步骤: 确定应用场景:确定软件智能开发系统要解决的问题和应用场景,例如智…

uTools 效率工具 - chatGPT

uTools 效率工具-chatGPT插件 今天分享一个可以免费使用chatGPT免费版的一个软件,更是一个插件!! 里面包含大量插件,是一个插件市场!! 一、简介 什么是uTools? uTools是一款插件化&#xff0…

介绍5款热门的Chat GPT应用,总有适合你的一款

从2022年12月初刚上线至今,不到半年时间 ChatGPT月活就超过了1亿用户!可谓火的一塌糊涂, 比尔盖茨都称:ChatGPT的历史意义重大,不亚于PC或互联网诞生! 以至于ChatGPT官网长期都处于满负荷运转的状态&…

16款ChatGPT工具,太炸裂了,收藏!

因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享 点击关注#互联网架构师公众号,领取架构师全套资料 都在这里 0、2T架构师学习资料干货分 上一篇:ChatGPT研究框架(80页PPT,附下载)…

OpenAI发布新作:ChatGPT聊天机器人

近日,人工智能研究和部署公司OpenAI 发布一款新的人工智能聊天程序ChatGPT。一经发布,短短5天内,就吸引了数百万用户。在官方描述中,称其是一个“可以连续回答问题、承认自己的错误、挑战不正确的前提并拒绝不适当的要求”的对话模…

【ChatGLM vs ChatGPT】怎样实现机器人自动写代码?不少于3000字。

图:a robot is writing code, by Stable Diffusion 禅与计算机程序设计艺术: 总体来看,ChatGLM(6B)和 ChatGPT(175B)在技术领域的问答情况表现都很出色,考虑到模型参数和成本,整体看在这方面的表现 ChatGLM 优于 ChatGPT。 目录 怎样实现机器人自动写代码?不少于30…

Google Bard VS ChatGPT:哪个是更好的AI聊天机器人?

文章目录 前言一、Bard和ChatGPT的宏观对比二、应用场景不同三、知识的时效性四、未来的归宿总结 前言 自从 OpenAI 向公众发布ChatGPT以来的过去几个月里,我们都见证了围绕 ChatGPT 的各种测评,并为它带来的效果感到惊艳。 昨晚Google开放了自家研发的…

ChatGPT提示词工程(七):Chatbot聊天机器人

目录 一、说明二、安装环境1. 辅助函数:get_completion2. 辅助函数:get_completion_from_messages 三、聊天机器人(Chatbot)1. 一般聊天机器人1.1 简单的例子1.2 多轮对话 2. 订单机器人 一、说明 这是吴恩达 《ChatGPT Prompt E…

借助ChatGPT学习ROS2机器人编程

很好用,很方便。 简单发布和订阅代码直接能跑的。如下: 学习效率指数提升,果然数字生产力之神! 空洞的问题和回复: 如何在一个月时间内掌握ROS2机器人操作系统的全部核心内容? 要在一个月时间内掌握ROS2机器…

ChatGPT不仅仅只是聊天机器人

从聊天机器人到大规模语言模型,再到 ChatGPT,人工智能已经不仅仅是一个研究领域,而是融入了我们的生活。ChatGPT在首次亮相的前五天内就风靡互联网,用户人数达到100万,围绕ChatGPT的很大一部分关注点是,它可…

与机器人chatGPT聊聊软件测试的热门话题

之前我和chatGPT有过一次对话, 那只是问一些有趣的、时髦的大众话题。 上周末在家,想考一考chatGPT的软件测试专业水平,确定它是否算得上一名测试专家?通过一系列有难度的提问,感觉有时它答的精妙与全面,但…