构建我自己的个人 AI 助理:编年史,第 2 部分

构建个人人工智能助理很少是单一的、整体的工作。在这篇文章中,我将介绍我最新添加的内容:一个任务分解模块,它将复杂的目标分解为结构化的、可操作的步骤,以及为什么这个单一组件改变了我对人工智能驱动的生产力的看法。构建我自己的个人人工智能助理:编年史,第 2 部分首先出现在《走向数据科学》上。

来源:走向数据科学

这是我构建个人 AI 代理 Fernão 之旅的第一部分。现在是时候继续这个故事了,让我们深入到第二部分!

在这篇文章中,我将带您了解 Fernão 的最新改进,完善现有功能并向代理添加新功能。让我们从发生了什么变化开始。

还记得通过 ICS(通用日历格式)获取日历并提取我的日历任务的函数吗?

该功能一团糟,反映出糟糕的架构决策。 ICS 日历不支持本机过滤,这意味着每个请求都需要从日历中提取所有事件,然后进行过滤。实际上,费尔南下载了我的整个日程表,只是为了提取一些相关的会议。

这就像把整个图书馆带回家只是为了查找一本书中的单个句子。

我越是尝试优化该功能,就越无法取得成功,因为我需要一个新的系统解决方案。我需要改变系统获取日历的方式,但我永远无法通过 ICS 绕过这个瓶颈。

所以我更深入地挖掘,发现 Google 通过支持本机过滤的 API 提供日历访问。Fernão 现在只检索它实际需要的事件。这改进了时间表的生成,从近五分钟缩短到约二十秒。

有了这个新的管道,我还重构了周围的逻辑。整个功能现在明显更干净、更快。我们现在有一个通过 API 获取日历事件的漂亮方法:

.. 这是我们的 API 获取:

除了后端改进之外,我还为助手添加了新功能。

在日程视图中,我现在可以将任务标记为已完成。最酷的是,当我这样做时,它们会自动与 Microsoft 待办事项应用程序同步。

太棒了!

借助 Schedule Maker 中的这一新功能,我继续根据一位读者的建议为 Fernão 实现了另一项功能。

介绍:任务破坏者。

太棒了 x2!

完美。