$("body").append("")

探索WhatsApp与大型语言模型的结合:Twilio和Flask原型

457次阅读
没有评论

探索WhatsApp与大型语言模型的结合:Twilio和Flask原型

随着数字化时代的来临,人工智能技术不断推进,开拓了众多领域的新可能性。Nesta的Discovery Hub最近启动了一个项目,旨在研究生成式人工智能如何为社会创造价值。他们探索了大型语言模型(LLMs)在早期教育领域的潜在应用,并在一系列Medium博客中详细介绍了他们早期原型的技术方面。

在他们之前的一篇文章中,他们创建了一个基于Streamlit的Web应用,允许看护人员和早期教育工作者为幼儿生成个性化的活动想法。现在,他们探索了一个新的想法,即广泛使用的消息平台WhatsApp可能比Web应用更容易接触,对于看护人员和教育工作者来说更具可访问性。

因此,他们构建了一个简单的WhatsApp聊天机器人原型,使用了一个大型语言模型。在这篇博客中,他们详细介绍了创建此原型的第一步,希望这也能帮助读者开始制作自己的WhatsApp机器人!

但在深入细节之前,我们先来看看这个原型是如何运作的。

通过Twilio、Flask和OpenAI构建WhatsApp聊天机器人

为了创建这个原型,他们使用了Twilio,这是一个通信服务平台,用于管理WhatsApp商业账户。他们使用了Twilio的WhatsApp沙盒,可以立即进行原型制作,而不需要等待账户被WhatsApp批准。

Twilio账户可以接收来自WhatsApp用户的消息,并通过使用Flask Python包创建的应用程序编程接口(API)将它们转发到自定义应用程序。

他们的Flask应用程序解析用户消息,根据传入消息的内容从一组预先制作的定制提示中选择正确的提示,并将提示发送到OpenAI的LLM。一旦生成LLM响应,Flask应用程序通过Twilio将其发送回WhatsApp,用户手机上会收到一条消息。

这个聊天机器人目前可以处理两种类型的用户消息。用户可以通过发送一些通用的内容,如“你好”来启动交互。这将会显示出解释两种类型消息的说明。

其中,“解释”消息触发了“像我三岁一样解释”提示。这个提示定义了LLM的角色,将其设想为一个乐于助人、友善、聪明且有礼貌的早期教育工作者,应该使用简单的词语来解释概念,不得冒犯或攻击。然而,需要注意的是,在没有额外的内容监管措施的情况下,LLM对这些指令的遵守并不能完全保证。

第二种“活动”消息会触发他们个性化的活动生成提示,该提示在先前的博客中有详细描述。由于大型语言模型生成响应需要一些时间,因此机器人会首先回复一条通用的等待消息,然后在准备好的时候再发送实际的响应消息。

总结:这个原型向我们展示了如何将大型语言模型应用于WhatsApp聊天机器人,为用户提供了与模型互动的新途径。然而,尽管现阶段的实现相对简单,但这一探索对于将WhatsApp与生成式AI相结合的技术可行性提供了宝贵的经验。通过创建这一原型,他们希望能够激发更多人对这一方向的兴趣和探索,尤其是在早期教育领域。

与文本Web应用相比,消息应用更适合快速互动和LLM的短回复。这是因为无法将LLM的响应逐字符地流式传输到WhatsApp,因此他们需要对用于Web应用原型的提示进行进一步的优化,以提供更短的回答。

未来的迭代版本还可以探索使用WhatsApp消息历史记录,以实现更自然的互动方式,并允许用户就解释或活动想法提出后续问题。

总而言之,这个原型展示了如何将大型语言模型与WhatsApp聊天机器人相结合,为教育和互动体验带来了新的可能性。尽管仍需进一步改进和优化,但这一探索为人们提供了一个新颖的思路,为数字化软件领域带来了新的创新机遇。

文章来自ChatGPT3.5

正文完