WritingGPT: 基于ChatGPT和AutoGPT打造个人写作团队

文摘   2023-05-20 13:38   上海  

本文介绍了如何通过定义多个GPT角色,以自动化流水线的方式打造个人写作团队,让AI帮助我们完成文章写作、修改、SEO等所有流程。原文: How I Built WritingGPT, a Fully Automated AI Writing Team[1]

ChatGPT是AI内容创造领域的巨大飞跃,但当我们要求系统写一篇完整的文章时,它往往会输出一堆废话,或者围绕一些奇怪的主题绕来绕去。

作为一名拥有几个小众网站的专业作家,以及AI专业人士和OpenAI Beta测试人员,我在过去几年里一直在尝试AI写作。虽然ChatGPT很不错,但还是无法真正满足创建可读性强、有用的文章的需要。

然而,最近有两件事改变了这一点:

  • GPT-4 API的发布
  • AutoGPT的出现 —— 将AI系统以链的形式组合在一起的AI代理,通过让AI系统协同工作来提高产出

尝试的结果是一个新的Beta系统,我称之为WritingGPT。这是一个定制开发的Python程序,用OpenAI的GPT-4来模拟整个写作团队,仅根据提示和目标关键字制作高质量博客文章。

WritingGPT创建的文章提供了真正的见解,并能获得谷歌排名。下面介绍我是怎么做的。

AI与AI对话

就像Paul DelSignore[2]在最近关于生成式AI的文章中所说的那样,AutoGPT是生成式AI工具箱中一个强大的新工具。和HuggingGPT模型一样,AutoGPT通过一个AI系统(通常是ChatGPT)来指导其他AI系统的动作。

简而言之,AutoGPT是人工智能与人工智能之间的对话,通过使用一个AI系统的输出作为另一个AI系统的输入,开发者可以将多个AI连接在一起,增强整体能力。

AutoGPT和HuggingGPT可以在运行中实现这种能力。根据用户查询,它们可以编写新的代码并创建新的连接来尝试解决问题,从而实现更多功能,并通过创建新的连接来解决各种问题。不过我的目标是创建AI写作团队,因此并不需要那种程度的多功能性。

我的任务非常具体: 写一篇好的博客文章。实现这一任务的步骤有很好的定义,WritingGPT不需要编写代码或者将步骤动态连接。

相反,我们可以想象出各种各样的人工智能,以一种一致的、可预测的方式将它们连接在一起,以解决这一特定、有限的问题。

人类的灵感

在小众网站社区,尤其是在像Niche Pursuits[3]这样的播客中,网站所有者经常分享很多关于写作团队的细节。因此为了创建WritingGPT的结构,我采用了一个相对比较熟悉的流程。

这些团队具有相当一致的结构。一般来说,网站所有者会根据自己的知识和关键词研究来确定一个主题,然后把任务交给小编,后者会研究这一主题,并写一篇草稿。

编辑(通常是收入更高、经验更丰富的人)会审查草稿并提出建议。有时,专门的SEO人员会对关键词、结构和其他SEO因素提出建议。

小编根据收到的建议重写草稿。最后,发布编辑审查草稿、插入图片、添加链接、格式化并将其上传到Wordpress或其他内容管理系统。

网站所有者通常会查看最终版本并亲自编辑,以确保文章符合他们(或网站)的人设,基于个人经验进行处理后,发布文章。

可以看到,这是一个角色和步骤都很明确的流程。我就想,为什么不能用AI实现?

一个完整的硅基写作团队

这正是我决定要做的,具体来说,就是创建一个与OpenAI的GPT-4 API集成的Python脚本。

GPT-4是OpenAI大语言模型的最新版本,也是目前支持ChatGPT Plus的底层技术。这是一个了不起的模型,能够生成令人惊讶的模拟人类语言的文本。

作为初始输入,WritingGPT接受两项内容:

  • 写作想法。可以是简单的标题,也可以是复杂的标题或者关于文章应该包括什么的注释列表。
  • 以SEO为目的的文章目标关键字或短语。

然后通过一系列连续步骤将这些信息传递给GPT-4 API。

WritingGPT是围绕API的Chat Completion函数构建的。与ChatGPT非常相似,该函数接受提示并使用GPT-4进行响应。不过,与ChatGPT不同的是,该API包含了另一个有用的功能,用所谓的系统消息为GPT-4指定"角色"的能力。

基本上,角色是用户告诉GPT-4希望它成为什么样的实体。虽然ChatGPT被锁定为聊天机器人,但角色允许我们精确指定希望GPT-4具有的功能。

对于WritingGPT, GPT-4的角色允许我们创建一系列GPT-4实例,每个实例都像传统写作团队的成员一样。

当我向WritingGPT提供提示时,第一步是将提示交给GPT-4的一个版本,我已经指示它扮演小编角色。AI会解读提示,写出目标文章的初稿。

#Write initial draft
response = openai.ChatCompletion.create(
  model="gpt-4",
  messages=[
    {"role""system""content""You are a professional freelance copy writer"}, {"role""user""content""%s" % initial_directive}
  ]
)    
initial_draft = (response.choices[0].message.content)
print ("Initial draft", initial_draft)

当草稿完成后,AI将其发送给虚拟写作团队的下一个成员: 一个扮演经验丰富的编辑角色的GPT-4版本。

根据系统编写的文章类型,可以指定想要调用哪种类型的编辑。例如,如果让WritingGPT生成一篇技术文章,可以通过修改系统消息来召唤一个具有丰富技术出版物工作经验的AI编辑。

AI编辑会查看文案草稿,并提供一份反馈和建议列表。

AI编辑的输出

然后将草稿交给GPT-4创建的AI SEO专家,系统信息(定义了系统的角色)确保指定这个SEO专业人员有"10年以上经验",这样他们就有希望真正了解该做的工作!

与AI编辑一样,AI SEO专家会根据文案草稿和指定的目标关键字,为文案提供一系列建议。

然后,AI小编从AI编辑和AI SEO专家那里获得反馈,并将草稿重写为改进的最终版本。

一旦最终版本完成,AI小编将草稿提交给AI美工(同样以GPT-4角色创建),后者将会对文章中包含的图片提出建议。

最后,AI美工将草稿交给AI发布编辑,后者用HTML对草稿进行格式化,并添加文章中提到的任何企业或地点的网站链接,然后输出最终版本。

总结一下,以下是WritingGPT人工团队中的人工智能"人":

  • 小编
  • 有经验的编辑
  • SEO专家
  • 美工
  • 生产编辑

通过将多个定制的GPT-4实例连接在一起,WritingGPT可以用AI模拟整个写作团队。

至关重要的是,不需要训练每个AI"人"来执行他们的角色,只需要用不同的系统消息告诉GPT-4扮演哪个角色,它就可以很好的执行对应角色。

结果

WritingGPT在测试中可以很好的写出连贯的、SEO优化的文章。

接下来看看如何用WritingGPT为我的小众网站Life Tech Shorts写一篇文章,该网站主要涵盖家用科技产品。我们将写一篇文章来回答这个问题: "洗碗机是密封的吗?"

以下是我给WritingGPT的初始提示和目标关键字:

initial_directive = "Write a blog post answering the question Are Dishwashers Airtight?"   
target_keyword = 'are dishwashers airtight' 

大约1分钟后,小编就写出了回答这个问题的初稿,并交给了AI编辑。初稿基本上就是从ChatGPT中直接得到的东西。

以下是AI编辑对改进草稿的看法:

标题建议: "密封性之争: 探索洗碗机密封的真相。" 这种改头换面的标题引发了好奇心,并添加了更吸引人的语气。

-修改引言: 在引言中加入吸引人的钩子来吸引读者注意力,比如,"洗碗机 —— 拯救了无数个花在争论该轮到谁来洗盘子的时间。" 但是你有没有想过这个聪明的设备是如何保证封闭水和空气的?”

-简化和重组句子以提高清晰度和可读性,例如,将"由于该过程涉及用水和产生蒸汽……"改为"洗碗机在运行过程中用水并产生蒸汽……"

-把长段落分成更短、更容易理解的段落,让读者更容易理解。

-增加统计数据或研究,展示洗碗机的效率或洗碗机技术多年来的进步,激发读者的兴趣。

-考虑用副标题来分割文本,使读者更容易理解。例如,使用"气密 vs. 水密: 理解两者的区别" 作为副标题。

-用对话式语气吸引读者注意力,例如,把"注意到……很重要"换成"记住……很重要"。

-包含现实生活中的例子或轶事,使文章更具相关性,例如处理洗碗机问题的个人经历或与洗碗机有关的著名事件。

-修改结论: 通过总结要点,为读者提供最终想法或要点来加强结论。例如,"最终,洗碗机在水密和半气密密封之间的复杂平衡被证明是其有效性背后的秘密。"下次当你把那些脏盘子装进去的时候,就能欣赏到那些让这个厨房帮手变得如此不可或缺的智能工程和设计。"

这么多反馈啊!AI SEO专家也参与了进来:

SEO编辑

  1. 通过加入目标关键词来优化标题: 考虑将标题修改为"洗碗机是密闭的吗? 你需要知道的关于洗碗机密封机制的一切",以直接点出目标关键字并吸引用户查询。

  2. 在副标题中添加目标关键字和相关关键字: 使用包含目标关键字和相关关键字的副标题,例如"洗碗机是气密还是水密?"和"了解洗碗机的气密和水密设计"。

  3. 包含相关内外部链接: 添加与洗碗机或电器相关的其他文章的内部链接,以及讨论洗碗机机械、法规或能源效率的权威来源的外部链接。

  4. 添加带有优化标签的图像: 合并相关图像,例如洗碗机组件或密封件的图表或照片,并包含包含重点关键词的图像标签。

  5. 用符号或编号增强可读性: 将洗碗机设计、蒸汽通风口和干燥周期的关键点分解成符号或编号列表,使读者更容易消化信息。

  6. 加强EAT(Expertise, Authoritativeness, Trustworthiness)元素: 为了建立专业知识、权威性和可信度,添加作者简历,包括在电器或家庭维护方面的证书和专业知识。此外,考虑包含引用、推荐,或来自该领域专业人士的专家意见。

  7. 应用LSI(Latent Semantic Indexing)关键字: 加入潜在语义索引(LSI)关键字,这些关键字是经常与目标关键字一起出现的术语,如"洗碗机门密封"、"防水电器"和"洗碗机蒸汽出口"。

  8. 优化元描述: 写一个引人注目的元描述,包括目标和相关关键字,以更好的告知潜在读者博客文章的内容,并吸引他们点击。

  9. 更新和重新利用内容: 定期回顾和更新有关洗碗机设计和功能的最新信息、趋势和技术文章。此外,考虑将内容转换为不同格式,例如信息图表或视频,以吸引更广泛的受众。

  10. 监控和维护关键字排名: 跟踪关键字排名和网站流量,以确保文章有效针对主要关键字及其变体。准备好对内容进行调整,以维持或提高排名表现。

WritingGPT的AI小编随后接受了两组反馈,并将草稿重写为最终版本。在这一过程中,AI小编接受了编辑的部分建议(尤其是关于引言的建议),而忽略了其他建议,就像人类作家一样!

随后,AI美工建议将一些照片整合到草稿中,发布编辑添加了相关的H2s和其他标题来构建文章。

发布编辑还提供了一个可靠的标题:"洗碗机是密封的吗? 理解你的厨房英雄的机制"

下面是加载到网站Wordpress后端的一部分文章:

GPT-4(目前)还不能生成照片,所以没有实际添加照片,而是指示WritingGPT提供包含照片提示的文本,然后我就可以在现实世界中拍摄了。

我是一名专业摄影师,所以独特的照片是我的小众网站的一大卖点,制作原创照片有助于使WritingGPT的输出对读者来说更加独特和有用。AI美工给了我照片简介,就像真正的美工/编辑一样,而我负责制作和添加照片!

在今后的迭代中,我可能会与DALL-E API集成以添加自定义插图,但就目前而言,我喜欢添加真实世界的照片。

添加照片后,我查看了草稿,并对WritingGPT的输出进行了事实核查,然后添加一些我自己的经历,并确保文章的每个部分都引人注目且有意义。这与我在处理人类作家或写作团队的草稿时使用的流程相同,基于这个流程大概需要花费5分钟完成一篇文章。

这是我发表在博客上的最终结果: Are Dishwashers Airtight? Understanding the Mechanics of Your Kitchen Hero[4]

这篇文章通过了AI独创性检查,99%都是原创的。

这篇文章的抄袭率是0%。

从SEO角度来看,它做的怎么样?这篇文章在Surfer上得了40分,并不完美,但考虑到竞争对手的平均得分在52分左右,也不算差。

主要问题是这篇文章很短,只有大约500字。对于更复杂的主题,WritingGPT会写更长的文章,通常就意味着更高的Surfer分数。

但无论SEO得分如何,正如老话说的,要用结果来证明。在WritingGPT发布文章后的6个小时,它在谷歌目标关键词中排名第二,再过几天可能排第一名。

当然,这是一个长尾关键词。但是,在几个小时内排名这么高是个很好的迹象,表明谷歌喜欢这些内容,并且知道它对受众有价值。我猜WritingGPT的虚拟SEO顾问很擅长这份工作!

限制和未来的工作

尽管我发现WritingGPT对于各种博客文章类型来说都是个有用的工具,但也有一些限制。与任何生成式AI系统一样,WritingGPT偶尔会"产生幻觉"或瞎编乱造。

如果说有什么不同的话,那就是多位作者和编辑似乎给系统的输出带来了更多"幻觉"(以及更准确和独特的见解)。似乎AI小编有时会将AI编辑所说的内容当成事实,如果这些内容是AI编辑编造的,就会出现错误。

这个系统很擅长不假装成人类(部分原因是我设置了护栏,比如告诉WritingGPT不要执行信息不足的任务),但有时还是会出错。

这就是为什么仔细检查系统的结果很有必要,不能只是获取输出并点击发布。当然,如果雇佣人类作家为网站写作,也应该检查他们的工作!

WritingGPT的使用成本也比ChatGPT高。由于该系统不断将冗长的草稿和大块的文本来回处理,并且由于GPT-4 API比其早期版本昂贵得多,因此使用该系统撰写文章并不是免费的。

不过还是很便宜,根据账单数据,用WritingGPT写1000字似乎要花费大约1美元。另外,WritingGPT比较慢,写一篇完整的文章大约需要10分钟。

该系统可以编写各种类型的博客文章,给它提供一些独特的信息(比如去当地餐馆的笔记)有助于产生真正有趣和独特的内容,输入的细节越多,结果就越好,越不像AI。

WritingGPT的另一个优点是系统是模块化的,可以随时轻松添加其他具有新角色的"团队成员"。

例如,可以添加一个AI事实核查员,或者AI评论家,他会讨论小编文章中的观点,帮助小编把文章写得更好。这有点像生成对抗网络的非正式版本,用于生成人工角色。

或者,一旦GPT-4的浏览功能被添加到API中,就可以添加一个AI研究助理,用于实时访问网站,为WritingGPT提供最新数据。

我对WritingGPT的计划

目前我不打算发布WritingGPT供其他人使用,我用它为自己的内部小网站和一些客户服务。

不过,该系统背后的基本理念几乎任何人都可以应用于几乎任何行业。将AI实体(通过GPT-4注入智能并分配不同的角色)结合在一起,让它们相互交流,共同努力提高产出,是一个广泛适用的强大流程。

我们可以看到AI生成的法律团队帮助构建法律案件,识别并发现需要寻找的文件,起草投诉,以及以其他方式进行合作。还可以看到AI生成的医疗团队通过利用不同的人工智能来扮演不同的专家、护士和供应商角色,为病人"巡诊"。

AutoGPT功能强大,但很难控制。WritingGPT背后的"团队GPT"方法利用了多个AI相互交谈的能力,但也确保他们的工作遵循明确的操作流程,从而产生有用、一致的输出。

基于团队的AI也是一种超越构建更大语言模型军备竞赛的方法。WritingGPT更聪明,而不是更大或更强,它用现有系统(以及源自现实世界的流程)来改进工作。

事实证明,GPT-4只要从(虚拟)朋友那里得到一点帮助,就可以做出惊人的事情。


你好,我是俞凡,在Motorola做过研发,现在在Mavenir做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。微信公众号:DeepNoMind

参考资料

[1]

How I Built WritingGPT, a Fully Automated AI Writing Team: https://medium.com/the-generator/how-i-built-writinggpt-a-fully-automated-ai-writing-team-a8fdf0255586

[2]

Paul DelSignore: https://medium.com/@pdelsignore

[3]

Niche Pursuits: https://www.nichepursuits.com/category/podcasts

[4]

Are Dishwashers Airtight? Understanding the Mechanics of Your Kitchen Hero: https://lifetechshorts.com/2023/04/17/are-dishwashers-airtight-understanding-the-mechanics-of-your-kitchen-hero

- END -


DeepNoMind
你好,我是俞凡,在Motorola做过研发,现在在Mavenir做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。