ChatGPT驱动开发

最近公司在搞头脑风暴,研究如何将项目与AIGC结合起来。平常也经常使用New BingChatGPT做一些辅助开发,大部分是作为一个更智能点的搜索引擎,这次想做个更有意思的尝试,看看能不能通过ChatGPT完全独立地实现一个可用的前后端项目。

开发流程

第一版

没有什么特别明确地需求,也是灵光一闪,决定让ChatGPT写一个自己的套壳网站。

首先提了个很概括的需求,ChatGPT(3.5)回复的很详细,包含了python的后端和前端的代码,还额外提供了安装依赖、运行方式等。

我对Flask并不熟悉,运行直接报错,继续提问,根据回复添加了模板目录可以正常运行。

第一次运行结果如下图,可以正常调用openai API并在界面上显示:

界面优化

第一版界面太简单了,所以我提出了页面美化已经连续对话的需求,ChatGPT基本能够根据需求做一些调整,但也会遇到一些报错,比如引用过期的API、函数未定义等,通过不断询问也基本能够修复。

添加CSS后,界面如下:

界面做了一些调整,比如居中,按钮的颜色等。但还需要更精准的调整,提出的需求如下:

  • 聊天框占宽度屏幕的1/2,左右padding 80px,输入回车可发送消息
  • 激活聊天框 button显示为绿色,默认是灰色
  • 输入框和对话框对齐,高度和屏幕一致,显示内容包括用户名
  • 界面满屏,用户输出背景的是白色,gpt输出的是灰色
  • ...

调整UI的过程,非常痛苦,必须给出精确的描述,ChatGPT才有可能生成符合预期的代码,一些非常小的修改需要好几轮对话才能解决,最终效果如图:

功能增强

相对于UI修改,添加逻辑相对简单,也比较符合预期,需求如下:

  • Chatgpt web应用增加左边栏,显示对话列表,可以创建新对话,每个对话需要存储到浏览器
  • 实现点击New chat按钮,添加一个对话到侧边栏,多个对话时,最多只有一个对话的edit、delete按钮是激活的
  • conversationList 旁边显示编辑和删除按钮,可以编辑title,删除item
  • ...

多次调整后得到,还是比较符合预期的

总结

示例中生成的代码都放在了Github中,甚至项目中的ReadMe都是由ChatGPT生成的。

通过这次实验,我们确实可以通过ChatGPT来开发一些小型项目,不断地通过需求 -> 验证 -> 修改,虽然中间可能会出了不少小错误,但最终达到一个可用状态。

当然前提是需要一个明确地需求,或者说对于ChatGPT驱动开发我们唯一要做的就是写一个合适prompt。对于逻辑型的功能来说相对好描述,但是对于UI之类的,如果没有量化的数据,很难达到预期,但设想以后是不是可以通过一些原型工具一键生成代码了。

那么,有了类似ChatGPT的工具,我们离失业还有多远呢...

Explore more in qingwave.github.io

相关推荐
ToToBe9 小时前
L1G3000 提示工程(Prompt Engineering)
chatgpt·prompt
龙的爹23339 小时前
论文 | Legal Prompt Engineering for Multilingual Legal Judgement Prediction
人工智能·语言模型·自然语言处理·chatgpt·prompt
bytebeats11 小时前
我用 Spring AI 集成 OpenAI ChatGPT API 创建了一个 Spring Boot 小程序
spring boot·chatgpt·openai
&永恒的星河&14 小时前
Hunyuan-Large:推动AI技术进步的下一代语言模型
人工智能·语言模型·自然语言处理·chatgpt·moe·llms
我爱学Python!21 小时前
AI Prompt如何帮你提升论文中的逻辑推理部分?
人工智能·程序人生·自然语言处理·chatgpt·llm·prompt·提示词
Jet45051 天前
第100+31步 ChatGPT学习:概率校准 Quantile Calibration
学习·chatgpt·概率校准
开发者每周简报2 天前
ChatGPT o1与GPT-4o、Claude 3.5 Sonnet和Gemini 1.5 Pro的比较
人工智能·gpt·chatgpt
Topstip2 天前
在 Google Chrome 上查找并安装 SearchGPT 扩展
前端·人工智能·chrome·gpt·ai·chatgpt
科研小达人2 天前
Langchain调用模型使用FAISS
python·chatgpt·langchain·faiss
全域观察2 天前
两台手机如何提词呢,一台手机后置高清摄像一台手机前置提词+实时监测状态的解决方案来喽
大数据·人工智能·chatgpt·新媒体运营·程序员创富