【ChatGPT】ChatGPT生成软件架构和代码,20年架构师惊呆了!

最近几周,OpenAI对ChatGPT产生了很多兴趣,出现了各种有趣的用例。

在许多方面,这是与架构师白板相当的AI,但它有很多用途,而不仅仅是绘制线条和方框。在这篇文章中,我想使用这项创新技术来演示启动软件架构过程的另一个用例。

就像在白板上画画一样,这个过程有点混乱,因为典型的相互作用会导致不断修改以找到最佳答案。本文旨在演示我在ChatGPT中成功使用的一些提问技巧,这些技巧产生了真正有价值的结果。

ChatGPT的一个警告是它仍在学习,所以不要期望一致性。在另一天问同样的问题可能会产生不同的结果。

设置ChatGPT帐户本身很简单,可以按照以下地址的说明进行操作:https://openai.com/blog/chatgpt/

用户故事

因此,让我们先让ChatGPT对用户故事做出回应。

052388a180f0928d8c6d4ae55dd94e8a.png

正如你所看到的,这个用户故事是我所在行业特有的。ChatGPT拥有庞大的知识库,因此需要进行实验来了解ChatGPT的知识深度——它知道什么?

第一个问题的关键是非常明确关键细节,以获得最佳结果。通过这种方式,ChatGPT可以得到一组不错的结果,例如:

6d47ec76b463141acac4584a6f8000da.png

如果您的结果与上述类似,那么您知道ChatGPT已经找到了线索,并将基于您提出的进一步问题。要记住的关键是,以下所有结果都将基于这个初始上下文,因此,为什么值得花时间好好定义第一次交互。

所以现在我们可以做一些非常了不起的事情。建立一个数据库!

让我们制作一个数据库

…这就是ChatGPT的响应方式:

5c33acbf1c42ed208fddf23c325abc96.png

但我们不要就此止步。让我们继续…

a95ad3dc226375be5fe47bce919bfa3b.png

CREATE TABLE Surveyors (id INT NOT NULL AUTO_INCREMENT,name VARCHAR(255) NOT NULL,email VARCHAR(255) NOT NULL,password VARCHAR(255) NOT NULL,PRIMARY KEY (id)
);CREATE TABLE Buildings (id INT NOT NULL AUTO_INCREMENT,type_id INT NOT NULL,coordinates VARCHAR(255) NOT NULL,notes TEXT,surveyor_id INT NOT NULL,PRIMARY KEY (id),FOREIGN KEY (type_id) REFERENCES BuildingTypes(id),FOREIGN KEY (surveyor_id) REFERENCES Surveyors(id)
);CREATE TABLE BuildingTypes (id INT NOT NULL AUTO_INCREMENT,type VARCHAR(255) NOT NULL,PRIMARY KEY (id)
);

…ChatGPT以完全可接受的SQL响应,SQL数据库创建时不会有问题。然而,让我们不要再止步于此…

创建图表

d52897b8f6d36faf6227ca22a3c39126.png

<script src="https://cdn.jsdelivr.net/npm/mermaid@8.6.0/dist/mermaid.min.js"></script>
<script>mermaid.initialize({startOnLoad:true});</script><div class="mermaid">
classDiagram
class Surveyors {
+id: int
+name: string
+email: string
+password: string
}
class Buildings {
+id: int
+type_id: int
+coordinates: string
+notes: string
+surveyor_id: int
}
class BuildingTypes {
+id: int
+type: string
}
Surveyors --> Buildings
Buildings --> BuildingTypes
</div>

ChatGPT生成的图表如下…

357825350ba1875ccc4eb1005b7a4e53.png

ChatGPT充满惊喜:

1236c1a259d545819e42795049f69b06.png

42fedd89514d34ef6c6b7064ac843977.png

ChatGPT不会显示图表,而是在Mermaid脚本中生成代码,该脚本将创建图表。ChatGPT完全熟悉美人鱼脚本,因此它可以生成这种脚本语言所允许的图表。

编程

正如我们已经建立的那样,ChatGPT已经学会了编码,因此您可以继续要求ChatGPT编写JavaScript、CSS和HTML,通过简单的请求将一个工作的原型放在一起。ChatGPT经过培训,可以用许多流行的编程语言生成代码。

如果有足够的时间,这是一个熟练的人可以做的事情。但这不是生产就绪代码;要使代码达到这样的质量和实用性,需要做更多的工作。但ChatGPT没有理由在做这件事时袖手旁观。

因此,让我们尝试使用ChatGPT提高代码质量:

1c339e3b81716b79b4dfc7ef8001f279.png

ChatGPT是这样回应的:

public class Surveyor
{private readonly string _name;private readonly string _email;private readonly List<ISurvey> _surveys;private readonly IDatabaseAccess _databaseAccess;public Surveyor(string name, string email, IDatabaseAccess databaseAccess){_name = name;_email = email;_databaseAccess = databaseAccess;_surveys = new List<ISurvey>();}public void AddSurvey(ISurvey survey){try{_surveys.Add(survey);_databaseAccess.SaveSurvey(survey);}catch (Exception ex){// Log the error}}public void RemoveSurvey(ISurvey survey){try{_surveys.Remove(survey);_databaseAccess.DeleteSurvey(survey);}catch (Exception ex){// Log the error}}public List<ISurvey> GetSurveys(){try{return _databaseAccess.GetSurveys();}catch (Exception ex){// Log the errorreturn new List<ISurvey>();}}
}public interface IDatabaseAccess
{void SaveSurvey(ISurvey survey);void DeleteSurvey(ISurvey survey);List<ISurvey> GetSurveys();
}public class DatabaseAccess : IDatabaseAccess
{public void SaveSurvey(ISurvey survey){// Implementation for saving the survey to a database}public void DeleteSurvey(ISurvey survey){// Implementation for deleting the survey from the database}public List<ISurvey> GetSurveys(){// Implementation for retrieving a list of surveys from the database}
}public interface ISurvey
{decimal Latitude { get; set; }decimal Longitude { get; set; }string BuildingType { get; set; }Dictionary<string, string> BuildingCharacteristics { get; set; }
}public class Survey : ISurvey
{public decimal Latitude { get; set; }public decimal Longitude { get; set; }public string BuildingType { get; set; }public Dictionary<string, string> BuildingCharacteristics { get; set; }public Survey(decimal latitude, decimal longitude, string buildingType, Dictionary<string, string> buildingCharacteristics){Latitude = latitude;Longitude = longitude;BuildingType = buildingType;BuildingCharacteristics = buildingCharacteristics;}
}

……作为一套开始上课的课程,这多少有些令人尊敬。

我让ChatGPT做的下一个任务是为基于REST的API创建Swagger。ChatGPT再次做出了值得尊敬的努力,足以开始开发。

84da645c764c1816945765969a767e31.png

结论

ChatGPT可以开始开发,因为它具有广泛的功能,但尚未显示其深度。每次转弯时,我都必须让ChatGPT来完成任务;那里没有主动权,我已经开始并推动下一步行动。

然而,开发一组你知道的标准问题会促使ChatGPT提供一个好的结果,这可能很简单。在sprint计划中,这可能足以以多种方式开始开发。

这项技术现在就在这里,我们不妨完全接受它并继续实验,这样我们就可以进一步了解这种先进的自动化可以继续提供什么价值。

本文 :https://architect.pub/chatgpt-and-software-architecture
讨论:知识星球【首席架构师圈】或者加微信小号【ca_cto】或者加QQ群【792862318】
公众号

【jiagoushipro】
【超级架构师】
精彩图文详解架构方法论,架构实践,技术原理,技术趋势。
我们在等你,赶快扫描关注吧。
d0a6d4721332f051ddd29f5c738f9a30.jpeg
微信小号

【ca_cea】
50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化.

580fa67770142d24f03027a47942bf96.jpeg

QQ群

【792862318】深度交流企业架构,业务架构,应用架构,数据架构,技术架构,集成架构,安全架构。以及大数据,云计算,物联网,人工智能等各种新兴技术。
加QQ群,有珍贵的报告和干货资料分享。

7ba9654e081d7d9efa8fb55d6e821d48.jpeg

视频号【超级架构师】
1分钟快速了解架构相关的基本概念,模型,方法,经验。
每天1分钟,架构心中熟。

edbcca617aa375168a14d945a0ac8bff.jpeg

知识星球【首席架构师圈】向大咖提问,近距离接触,或者获得私密资料分享。

8cd23d753ef61ff83413d083e858bd38.jpeg

喜马拉雅【超级架构师】路上或者车上了解最新黑科技资讯,架构心得。【智能时刻,架构君和你聊黑科技】
知识星球认识更多朋友,职场和技术闲聊。知识星球【职场和技术】
微博【超级架构师】智能时刻
哔哩哔哩【超级架构师】

7ec51d2a71ccfdae6efbb10e25fa8236.jpeg

抖音【cea_cio】超级架构师

eeee88d4c6489df7d2599b2cf78bfef8.jpeg

快手【cea_cio_cto】超级架构师

5bf9509f52796381e324c5d3fc483b4d.jpeg

小红书【cea_csa_cto】超级架构师

f6f0e30642cacec26ef9d8de3f38680b.jpeg

网站CIO(首席信息官)https://cio.ceo
网站CIO,CTO和CDOhttps://cioctocdo.com
网站应用开发和开发平台https://apaas.dev
网站开发信息网https://xinxi.dev
网站首席架构师社区https://jiagoushi.pro
网站超级架构师https://jiagou.dev
网站企业技术培训https://peixun.dev
网站程序员宝典https://pgmr.pub    
网站程序员云开发分享https://pgmr.cloud
网站开发者闲谈https://blog.developer.chat
网站CPO宝典https://cpo.work
网站架构师实战分享https://architect.pub    ‍
网站首席安全官https://cso.pub    ‍
网站CIO酷https://cio.cool
网站CDO信息https://cdo.fyi
网站CXO信息https://cxo.pub

谢谢大家关注,转发,点赞和点在看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/3614.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT+Word的智能化文字生成和应用

在Word中引入OpenAI代码需要使用VBA编辑器。以下是在Word中引入OpenAI代码的步骤&#xff1a; 打开Word文档&#xff0c;按下Alt F11键打开VBA编辑器。 在VBA编辑器中&#xff0c;选择“插入”菜单&#xff0c;然后选择“模块”。 在新建的模块中&#xff0c;将OpenAI代码粘…

李宏毅chatgpt,生成式ai

ChatGPT原理剖析 李宏毅_哔哩哔哩_bilibiliChatGPT原理剖析 李宏毅共计18条视频&#xff0c;包括&#xff1a;1/3 对 ChatGPT 的常见误解、2/3 预训练 Pretrain、3/3 ChatGPT 所带来的研究问题等&#xff0c;UP主更多精彩视频&#xff0c;请关注UP账号。https://www.bilibili.c…

亲测有效,如何用ChatGPT 生成高质量原创视频

尽管ChatGPT目前缺乏视频生成的能力&#xff0c;但我们可以借助插件实现视频生成&#xff0c;特别是对于那些从事Tiktok海外运营的用户而言&#xff0c;Visla和HeyGen是我目前测试的两款可生成视频的插件。 首先登陆您的ChatGPT帐号&#xff0c;并单击邮箱&#xff0c;勾选设置…

「ChatGPT」爆火背后的大语言模型到底是什么?

点击上方关注 “终端研发部” 设为“星标”&#xff0c;和你一起掌握更多数据库知识 本文首发于我的知乎&#xff0c;终端研发部&#xff01; 链接&#xff1a;https://www.zhihu.com/question/585248111/answer/2903130554 说起chatGPT&#xff0c;我们都知道非常的火爆&#…

ChatGPT 还没达到“基础模型”状态,国产大模型“速胜论”不靠谱!

整理 | 梦依丹 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; 在经历寒冬、雾霾&#xff0c;甚至大家纷纷看不到希望之际&#xff0c;ChatGPT 犹如一场春雨&#xff0c;给做 AI 甚至 NLP 等研究的人带来了新的希望。 3 月 11 日&#xff0c;由中国人工智能…

ChatGLM-6B 类似ChatGPT功能型对话大模型 部署实践

好难为了看到这个页面 ChatGLM-6B 简介 ChatGLM-6B 是基于清华大学 KEG 实验室和智谱 AI 公司于 2023 年共同训练的语言模型开发的一个开源的类 ChatGPT 模型, ChatGLM&#xff08;alpha内测版&#xff1a;QAGLM&#xff09;是一个初具问答和对话功能的中英双语模型&#xff0c…

【ChatGPT】各大互联网企业开发的类ChatGPT大模型

各大互联网企业开发的类ChatGPT大模型 国际互联网公司国内互联网公司 ChatGPT是由开放人工智能公司OpenAI开发的一款基于人工智能技术的聊天机器人&#xff0c;采用了大规模Transformer网络&#xff0c;可以实现对话的生成和理解。其可以进行多轮对话&#xff0c;并具备一定的语…

技术科普与解读:ChatGPT 大模型硬核解读!(三)GPT-4的多模态架构

本文选自《GPT-4核心技术分析报告》的第2章的简写版&#xff08;无公式版&#xff09;。前两节从GPT家族的发展历史开始&#xff0c;讲解GPT-4的多模态架构和GPT-4中的关键技术。 作者陈巍博士为AI/存算一体专家&#xff0c;曾担任华为系自然语言处理企业的首席科学家。 技术科…

从ChatGPT出发:大模型与自然语言模型

目录 引言基石故事的开始&#xff1a;Transformer异姓兄弟&#xff1a;GPT、Bert与GPT-2GPTBertGPT-2 大力出奇迹&#xff1a;GPT3模型的进化&#xff1a;InstructGPT ChatGPT代码库TransformerGPT-2GPT-3InstructGPT 未来的工作安全性&有效性算力与标注代价的平衡 参考文献…

ChatGPT的各项超能力从哪儿来?万字拆解追溯技术路线图来了

作者&#xff1a;符****尧、彭昊、Tushar Khot、郭志江等**** 符尧&#xff08;yao.fued.ac.uk&#xff09;&#xff0c;爱丁堡大学 (University of Edinburgh) 博士生&#xff0c;本科毕业于北京大学。他与彭昊、Tushar Khot在艾伦人工智能研究院 (Allen Institute for AI) 共…

ChatGPT从入门到精通学习路线

课程名称适应人群 ChatGPT从入门到精通&#xff0c;一站式掌握办公自动化/爬虫/数据分析和可视 点击上述名称&#xff0c;学习完整视频 全面AI时代就在转角&#xff0c;道路已经铺好了“局外人”or“先行者”就在此刻等你决定 1、对ChatGPT感兴趣并希望有人手把手教学的新手 …

ChatGPT常用的指令(prompts)系列九——生活教练、评论员、魔术师

系列文章目录 内容翻译自&#xff1a;https://github.com/f/awesome-chatgpt-prompts&#xff0c;并加入自己的实践内容 1、 ChatGPT常用的提示语&#xff08;prompts&#xff09;系列一 2、 ChatGPT常用的提示语&#xff08;prompts&#xff09;系列二 3、 ChatGPT常用的提示语…

ChatGPT黑化版来了!拉踩TikTok用户智商、写暴力故事等为所欲为,bug只因3个字母...

杨净 羿阁 发自 凹非寺量子位 | 公众号 QbitAI ChatGPT“越狱”后&#xff0c;彻底放飞自我了。 直接无视掉OpenAI给它在安全、伦理上限定的条条框框—— 写暴力故事、拉踩用户智商、随意预测未来……简直无恶不作&#xff01; 而这一切背后竟然只靠一位Reddit用户实现&#xf…

Visual chatgpt多模态大模型的前菜

刚开始感觉这就是一篇工程类文章&#xff0c;把各种的模型做了整合&#xff0c;把最近很热的两个方向chatgpt和文本生成图、图文提问整合在一起。看完文章发现自己太自傲了&#xff0c;绝对轻视了微软亚研院大佬们的实力。 表面看起来这是一个用chatgpt做意图理解、对话管理&am…

2023最新ChatGPT3.5网站源码+支持用户开通会员赚取收益功能

正文: 第一步-配置APIKEY:在"index.php"最顶部配置自己的APIKEY&#xff0c;不然网站无法使用&#xff01; 第一步-配置数据库:lib/config.php 第三步-导入数据库 第四步-PHP选择:7.3 第五步-访问网页即可&#xff01; 程序: wweoeg.lanzouw.com/ifvgL0t6yxzi…

ChatGPT常用的提示语(prompts)系列二

系列文章目录 内容翻译自&#xff1a;https://github.com/f/awesome-chatgpt-prompts&#xff0c;并加入自己的实践内容 1、 ChatGPT常用的提示语&#xff08;prompts&#xff09;系列一 文章目录 系列文章目录5、作为一个Excel工作表&#xff08;Act as an Excel Sheet&#x…

ChatGPT提示词,汇聚全网提示词,chatgpt提示词大全

免费chatgpt&#xff1a;http://chat.bctweb.cnhttp://chat.bctweb.cn 提示词使用教程&#xff1a; 将提示词发给chatgpt 后面再问的时候他会你按照提示词上的提示给你发送内容 加入用户交流群&#xff0c;了解或分享更多玩法 点击链接加入群聊【ChatAi】&#xff1a;6023542…

ChatGPT提示语编写指南

ChatGPT AI 对话模型自 2022 年 11 月下旬开始可用&#xff0c;此后用户一直在探索聊天机器人的局限性和功能。 然而&#xff0c;OpenAI 也在不断地进行调整&#xff0c;因此 ChatGPT 处于不断变化的状态。 但是我们在这个小指南中描述的提示应该是永恒的。 要获得想要的结果&…

ChatGPT提示词技巧

自计算机问世以来&#xff0c;人类与计算机之间的交互方式已经经历过几个重要的阶段&#xff1a; 指令式交互&#xff08;Command-based Interaction&#xff09; 早期的计算机系统主要采用了指令式交互方式&#xff0c;用户需要输入特定的命令或代码来完成各种任务。这种交…

玩转ChatGPT提示词 持续更新·······

导语&#xff1a; 众所周知&#xff0c;在AI的世界里&#xff0c;提示词就是和AI沟通语言的桥梁&#xff0c;提示关键词常用于AI对话及AI绘画等相关场景&#xff0c;通过准确的使用关键词&#xff0c;你就能更好的让AI辅助自己的工作&#xff0c;其中的成分重要性不言而喻&…