ChatGPT火遍全网,写代码搞创作真能代替人吗?

3,146字
13–20 分钟
in

最近AI圈又炸了锅,什么ChatGPT五天收割一百万用户,比Facebook当年快了不知道多少倍。这玩意儿到底是个啥?简单说,就是个能跟人唠嗑的智能接口,像“嘿Siri”那种感觉,但更像个话痨学霸,扔进去一段话,它就能吐出像模像样的回复。除了聊天,它还有一帮亲戚:GitHub的Copilot专门帮写代码,Dall-E专门搞生成图片和艺术。有人说这是人类创意的终结,也有人觉得只是多了个新玩具。别急着站队,先看看这货到底能干点啥实事儿。

目录

初识AI帮手

ChatGPT这类工具的核心,说白了就是大规模语言模型。喂给它海量文本,它就能学会词语之间的套路,然后根据输入内容预测最可能的下文。这不是真正的思考,更像一个超级模仿秀选手。举个例子,问它“怎么用Python读取CSV文件”,它不会真的去查文档,而是根据训练数据里无数类似的问答,拼出一段看起来靠谱的代码。有时候这段代码能直接跑通,有时候会翻车,需要手动调一调。

跟这类AI打交道,有个关键点:提需求越具体,输出越靠谱。就像跟一个刚入行的实习生交代任务,只说“画个图”,对方大概率懵圈;但如果说明“画一个柱状图,X轴是月份,Y轴是销售额,标题用红色”,结果就接近预期。同样,让AI写代码,最好把环境、报错信息、期望的输出格式全甩给它。

生成插件

下面走一遍完整流程:用ChatGPT搓一个WordPress插件,功能是给文章末尾自动加一段版权声明。这事儿真有老哥干成过,第一次对话就生成一个能用的插件,绝了。

步骤拆解:

  1. 打开ChatGPT对话界面,在输入框里敲下需求。注意,描述要像点菜一样清楚:“写一个WordPress插件,能在每篇文章内容后面自动添加一行文字,内容为‘版权归本站所有,转载需授权’。插件要能通过WordPress后台的插件管理直接激活。” 顺带提一句,可以要求它加上必要的注释,方便后续修改。
  2. 等它吐代码。几秒钟后,会看到一段PHP代码,通常包含插件头信息、一个挂载到the_content钩子的函数,还有基本的防范直接访问的语句。例如: <?php /* Plugin Name: 文章版权小尾巴 Description: 在文章末尾追加版权文字 Version: 1.0 */ function add_copyright_footer($content) { if (is_single()) { $copyright_text = '<p>版权归本站所有,转载需授权</p>'; $content .= $copyright_text; } return $content; } add_filter('the_content', 'add_copyright_footer');
  3. 保存成文件。把这段代码复制到一个新建的文本文件里,文件名起成copyright-footer.php(注意扩展名必须是.php)。很多新手会栽在文件编码上,记得用UTF-8 without BOM格式,否则WordPress可能报“头部已发送”的错误。用Notepad++或者VS Code都能调这个选项。
  4. 上传到网站。有两种方式:一是把整个文件夹压缩成.zip,通过WordPress后台的“插件→安装插件→上传”来安装;二是直接用FTP或者主机文件管理器,把.php文件扔进/wp-content/plugins/copyright-footer/目录(没有这个目录就自己建一个)。
  5. 激活插件。在后台“插件”列表里找到“文章版权小尾巴”,点“启用”。然后打开一篇已有的文章看看效果,正文下方应该多出一行灰色小字。如果没显示,检查两处:当前主题的single.php里有没有调用the_content()函数;以及是否开启了缓存插件,清一下缓存再试。
  6. 微调翻车现场。第一次生成的代码有可能不完美,比如文字样式太突兀。可以直接接着聊:“把版权文字改成红色、斜体,并且只在文章长度超过500字时才显示。” AI会根据新需求修改代码,把$copyright_text包上<em style="color:red;">标签,再判断strlen($content)>500。这个过程可以反复迭代,直到满意为止。

整个过程走下来,半小时内就能从零搞出一个定制插件。当然,生产环境用的插件建议再手动审计一下,防止注入漏洞或者性能坑。

解复杂公式

另一个常见需求是搞数学公式,尤其像Notion里那种复杂表达式。Reddit上有个老哥就用ChatGPT整了一个。

案例场景: 需要在Notion的数据库里,根据“任务名称”和“截止日期”自动生成一个“优先级分数”。公式得包含:如果任务名称含“紧急”二字,分数+10;如果截止日期是今天,分数+20;否则基础分5。

操作流程:

  1. 把需求翻译成人话给AI:“写一个Notion的formula,字段叫‘任务名称’(文本类型)和‘截止日期’(日期类型)。规则:如果任务名称包含‘紧急’,则加10分;如果截止日期等于今天,加20分;其他情况给5分。最终输出数字。”
  2. 得到AI回复,可能长这样: if( contains(prop("任务名称"), "紧急"), 10, 0 ) + if( formatDate(prop("截止日期"), "YYYY-MM-DD") == formatDate(now(), "YYYY-MM-DD"), 20, 0 ) + 5 但注意,Notion的contains函数区分大小写,而且now()会精确到秒,导致比较失败。这属于典型的一知半解坑。
  3. 调试第一版。直接复制进去,大概率报错“类型不匹配”。需要告诉AI:“now()和日期字段比较时,必须用dateBetween或者先格式化。另外让关键词匹配忽略大小写。” AI会改成: (if( contains(lower(prop("任务名称")), "紧急"), 10, 0)) + (if( dateBetween(prop("截止日期"), now(), "days") == 0, 20, 0)) + 5 这回用lower()把名称转成小写,用dateBetween(..., now(), "days") == 0判断是否同一天。
  4. 粘贴到Notion。打开Notion数据库,点击属性列的“Edit property”,类型选“Formula”,把修改后的代码敲进去。如果公式栏下面没显示红色波浪线,就代表语法通过。测试几行数据:一行任务名“紧急发布”,截止日期今天,预期分数10+20+5=35;另一行普通任务明天截止,预期5分。结果对得上,搞定。

这里有个隐藏坑:Notion的公式编辑器不支持中文属性名,所以AI生成的代码里若出现中文“任务名称”,必须手动改成数据库里的英文ID(或者干脆一开始就让AI用英文写,比如prop("Task Name"))。另外,如果公式涉及多行文本或复选框,函数名可能不同,得去查Notion官方文档对照——AI有时会瞎编函数。

对比不同AI工具

工具名主要功能上手难度翻车高发区
ChatGPT对话生成文本代码数学逻辑瞎编
Copilot代码自动补全引入未定义变量
Dall-E文生图手指数量画不对

上面这个表简单总结了几个常见AI选手的脾气。拿Dall-E来说,想生成一张“程序员头炸了还在跟AI聊天”的图,描述得加上“头部爆炸特效”“聊天对话框悬浮”“风格为超现实”,否则出来的图可能只是一个人摸着脑袋发呆。

说回ChatGPT,它目前更像一个满嘴跑火车的学霸朋友——给个简单方程能算对,但一问到“1+1等于几”以外的逻辑推理,就开始一本正经地胡说八道。Stack Overflow甚至暂时封杀了用ChatGPT生成的回答,就是因为太多半瓶醋拿它灌水。所以别指望它直接替代人,把它当一个超级听话但偶尔犯二的实习生,给任务的时候多盯两眼,翻车了让它重来,才是正确打开方式。