查看原文
其他

我单方面宣布,自己是 ChatGPT 程序员!

鱼皮 程序员鱼皮 2023-07-23

大家好,我是鱼 💨。

前几天刚刚给大家分享了我自己做的编程词典网站,这个网站收集了 30 个主流编程领域、900 多篇编程相关的术语文章:

指路:http://dict.code-nav.cn

值得一提的是,这个网站我竟然只花了不到一天就完成了!

有些同学是不相信的,毕竟 900 多篇文章,一天搞定了?复制粘贴都来不及吧。

要是在以前,我也不相信,不过这次其实我是使用了 ChatGPT 背后强大的 AI 能力来帮助我完成了这个网站,网站上的所有文章、包括分类,全部都是 AI 自动生成的!

就像下面这样:

不过细心的同学也发现了,网站上的文章太短、内容不够深、不如人写的质量高。

比如下面这个搜索引擎优化,这么大的 “坑” 用几段话就介绍完了:

这是一件好事,说明 AI 还取代不了人。

不过必须要说的是,这个网站只是我的一次尝试,其实我让 AI 生成的时候,有意限制了文章的长度和数量,理论上我让他生成 10000 篇万字的大长文、覆盖网上有的所有编程词汇,也是很简单的事情。

下面我就给大家揭秘一下:自己是如何利用 AI,轻松完成了这个网站。

希望对小伙伴们有帮助~

本文视频版:https://www.bilibili.com/video/BV12h411u7s1

编程词典网制作过程揭秘

要完成这样一个网站,需要解决 2 大问题:

  1. 网站怎么做?
  2. 内容从哪来?

网站怎么做?

首先,我们要明确需求。对于一个百科类网站,最核心的需求是能够让用户在网站上分类阅读文章,其他功能都是次要的。

所以我们没必要自己从 0 开发网站、自己写界面,可以直接使用现成的文档网站生成器,比如 Hexo、Hugo、Docsify、Docusaurus 等等。

那我这里选用的是 Vuepress,原因很简单:它简洁、易用、生态好。而且最关键的是,它会帮你把文章内容生成为静态页面,有利于 SEO,说人话就是大家更容易搜到你的网站。

大家平时应该看到过很多类似风格的网站,基本都是 VuePress 做的。

VuePress 的用法非常简单,我们只需要跟着官方文档的流程,先初始化一个 Vuepress 的项目:

然后创建 docs 目录用于存放文章,再随便新建一篇文章:

然后运行 npm 的 docs:dev 命令:

就可以在浏览器中看到文档网站了:

如果你要做的网站内容很多、并且还要对内容进行分类。那么你可以先根据分类名称去创建多个目录:

然后按照 Vuepress 文档中约定的规则,分别配置 navbar 顶部导航栏,以及 sidebar 侧边导航栏:

就可以得到一个分类展示文章的文档网站了,就像编程词典一样。

至此,开发网站的流程就跑通了。接下来你要做的,就是不断地丰富网站的内容。

内容从哪儿来?

那就引出了第二个问题,如果我想做一个包含几百篇、上千篇文章的词典百科类网站,内容从哪儿来?

自己写?这么多文章,不现实!

复制粘贴别人的?一方面复制上千篇文章也很麻烦,另一方面还会有版权风险吧。。。

所以,作为一个懒程序员,我肯定选择自己开发一个程序来自动获取文章,并且自动生成目录和导航栏配置,这才是最方便的。

感谢 AI 的发展,我们不仅不用去网上找别人的文章,而且还可以让它帮我们自动生成文章!

那接下来就介绍下怎么用 AI 生成文章。

第零步

你要先有一个 OpenAI 的开发者账号,才能利用 AI 的对话能力,还要有调用 AI 接口的代码。如果你不会写,可以从我的 yu-auto-reply 开源项目中扒下来。

开源项目:https://github.com/liyupi/yu-auto-reply

第一步

根据你的主题,给 AI 模型添加系统预设。

比如我想要编程领域的文章,就跟 AI 说:“你是一个编程领域的专家,我需要你配合我完成编程相关文章的编写”

它的回答如下:

第二步

用程序来跟 AI 对话(指调用 Open AI 接口),让它帮你生成领域下的热门分类。

比如:“请给我提供 30 个编程领域最热门的学习方向”

它会自动以列表的形式给我们生成主流的学习方向:


然后,我们就可以用程序来读取它回答中的分类信息(解析字符串),并且给每个分类创建一个单独的目录(文件读写)。

这里建议先把分类信息保存到一个临时文件中,用于后续处理。

第三步

使用循环,依次利用 AI 给每个分类生成词汇(也就是每篇文章的标题)。

比如:“请你帮我自动生成和 Web 开发相关的 30 个专业词汇”

它会自动以列表的形式给我们生成专业词汇:

然后,你就可以用程序读取到这些词汇了,本质上就是字符串解析。

建议先把这些词汇保存到一个临时文件中,用于后续处理。

第四步

再使用循环,依次利用 AI 给每个词汇生成详细的文章内容。

比如:“请你写一篇不小于 500 字的文章,来把 “前端开发” 这个专业词汇解释清楚”

它会自动给我们生成文章:

然后,你就可以用程序把它的回答写入到文档中,就是简单的文件读写操作。

如此循环往复,理论上你可以生成任意数量的文章。

第五步

最后,利用之前得到的分类文件、词汇文件,你就可以通过程序自动化地生成 Vuepress 的导航栏配置文件,比如下面这段:

sidebar.ts 文件

全部生成好之后,复制粘贴一把梭,网站就可以上线了。



整个流程就是这样,你学会了么?

不过要注意的是,以上的预设和指令只是我给大家的一些简单示例,如果你想得到更准确的内容,就要给它更准确的指令要求。建议大家自己多尝试、摸索一下。

以上只是 ChatGPT 的玩法之一,我自己也在摸索其他的 AI 玩法。不得不说,它真的是一个非常强大的工具,至少我是离不开它了,请允许我单方面称自己为 “ChatGPT 程序员” 哈哈。

后面有机会的话,我应该也会在自己的圈子中手把手直播带大家做做和 ChatGPT(Open AI)相关的项目。

最后推荐:


往期推荐

我的学习小圈子

我的新网站上线了!而且这次的制作方式有点不同。。。

字节面试体验拉满!

刚进公司就负责项目,把老弟整蒙了!

谁会拒绝一个免费的部署服务呢?

来一大波后台开发项目推荐!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存