前几天,我发现自己需要将散布在十二封不同邮件中的一些数值相加。
我并不想逐一复制粘贴所有的数字,所以我决定尝试一些不同的方法:我能否在浏览 Gmail 帐户时录制屏幕,然后使用 Google Gemini 从该视频中提取数字?
结果,这个方法效果非常好。
AI Studio 和 QuickTime
我使用 Mac 上的 QuickTime Player 录制视频:文件 -> 新屏幕录制
。我在屏幕上画了一个框,框住我的 Gmail 帐户部分,然后依次点击每封邮件,每封邮件停留几秒钟。
接着,我直接将录制的文件上传到 Google 的 AI Studio 工具中,并输入以下提示:
将其转换为一个 JSON 数组,每个项目包含 yyyy-mm-dd 格式的日期和该日期的浮点金额
……结果成功了。它输出了一个类似这样的 JSON 数组:
[
{
"date": "2023-01-01",
"amount": 2...
},
...
]
我想把它粘贴到 Numbers 中,于是我接着输入:
将其转换为可复制粘贴的 csv
它给了我相同数据的 CSV 格式。
你永远不应该完全信任这些工具不会出错,所以我重看了这个35秒的视频,并手动检查了所有的数字。它全部正确无误。
本来我打算使用 Gemini 1.5 Pro,也就是 Google 最好的模型……但结果发现我忘了选择模型,实际上我整个过程使用的是便宜得多的 Gemini 1.5 Flash 002。
花了多少钱?
根据 AI Studio 的统计,我使用了 11,018 个 Token,其中 10,326 个是用于视频的。
Gemini 1.5 Flash 收费标准 为 $0.075/每百万个 Token (价格在 8 月份下调)。
11018/1000000 = 0.011018
0.011018 * $0.075 = $0.00082635
因此,这整个过程的成本应当不到 1 美分的 1/10!
实际上,它是免费的。Google AI Studio 当前 在所有支持的区域即便设置了计费,也“仍然免费”。不过我相信这意味着他们可以训练你的数据,而这是他们的付费 API 不会做的事情。
其他替代方案其实并不那么好
让我们来看看这里的其他替代方案。
- 我可以一个个点击电子邮件并手动复制数据。这容易出错且相当无聊。处理 12 封电子邮件还可以,但处理 100 封将会非常痛苦。
- 以编程方式访问我的 Gmail 数据。每年这变得越来越难了——虽然现在仍然可以通过 IMAP 访问它,只要你设置了一个专用的应用密码,但对于一个临时的抓取任务来说,这仍然需要大量的工作。官方 API 根本不好用。
- 使用某种浏览器自动化工具(如 Playwright 或类似工具)来自动点击我的 Gmail 帐户。即便有大语言模型来帮助编写代码,这仍然需要更多的工作,而且它并不能解决电子邮件格式差异的问题——我还得单独解决邮件解析步骤。
- 使用某种更高级的现有 AI 工具访问我的电子邮件。另一个 Google 产品(也叫 Gemini)可以做到这一点,如果你授予它访问权限,但到目前为止,我对它的结果并不特别满意。AI 工具本质上不可预测。我也不愿意给任何工具完全访问我的电子邮件账户的权限,因为可能会有诸如提示注入之类的风险。
视频抓取技术非常强大
这项视频抓取技术的最大优势在于,它适用于你屏幕上看到的_任何东西_... 并且你可以完全掌控自己向 AI 模型暴露的内容。
没有任何网站身份验证或反抓取技术能够阻止我在点击浏览网页应用时录制屏幕视频。
我得到的结果完全取决于我如何精心规划屏幕捕捉区域以及点击操作。
这个过程完全没有设置成本——登录网站,点击记录,随意浏览,然后将视频丢入 Gemini 中即可。
成本低到我不得不三次重新计算,确保自己没有算错。
我预计我将在未来更多地使用这种技术。它在数据新闻领域也有应用,因为这些领域经常需要从不愿意被抓取的来源中抓取数据。
加分项:一个大语言模型的价格计算器
在写这篇实验报告时,我厌倦了手动计算 Token 价格。我通常会把这个工作外包给 ChatGPT 代码解释器,但我发现它在从美元转换为美分时出错了,所以我总是不得不反复检查其结果。
于是我让 Claude 3.5 Sonnet 用 Claude Artifacts 为我构建了这个价格计算器工具(源码在此):
你可以手动设置输入/输出 Token 的价格,或点击预设按钮来自动填入不同现有模型的价格(截至 2024 年 10 月 16 日——我不保证以后会及时更新它们!)
整个计算器由 Claude 编写。这里是完整的对话记录——我们通过 10 个不同版本反复迭代了 19 分钟。
我没有自己去寻找所有的价格,而是截取了每个模型提供商的定价页面,并直接把它们放到了与 Claude 的对话中: