oc命令行工具实测:AI抓网页从17万token压到1900!

oc命令行工具实测:AI抓网页从17万token压到1900!

💡 原文中文,约5700字,阅读约需14分钟。
📝

内容提要

oc是一款为AI代理设计的命令行工具,能将网页转换为紧凑的编号视图,大幅降低Token消耗。实测显示,处理6个网页仅需1936个Token,而原始HTML需177,685个,效率提升近100倍。它无需适配器,支持多数静态网站,但无法处理依赖JavaScript的页面,且写操作有限。尽管优化显著,但AI代理运行开销仍可能高达对话的100万倍,优化效果存疑。

🔎

延伸解读

Token消耗的降维打击

oc通过将网页转换为带编号的紧凑视图,将6个网页的Token消耗从177,685降至1,936,效率提升近100倍。这种优化对依赖AI代理频繁浏览网页的场景尤为显著,能大幅降低API调用成本。但需注意,实际节省取决于页面复杂度和代理的调用频率。

适用边界与限制

oc主要适用于静态或服务端渲染的网站,对依赖JavaScript动态加载内容的页面无能为力。虽然它通过提取SSR HTML或内联数据支持了部分看似动态的网站,但遇到需要登录或高难度机器人挑战的站点时仍会失效。用户需评估目标网站的兼容性。

优化效果的相对性

尽管oc将网页浏览的Token消耗降低了约100倍,但文章指出,AI代理的整体运行开销可能高达对话的100万倍。这意味着,网页浏览只是Token消耗的一部分,其他工具调用和后台运行可能占据更大比例。因此,oc的优化效果在整体成本中可能有限,需结合其他优化手段。

Q&A

oc命令行工具是什么?它主要解决什么问题?

oc(only-cli)是一个为AI代理设计的命令行工具,能将任何网站转换成紧凑、可交互的命令行界面,主要解决AI代理浏览网页时因处理大量原始HTML而消耗过多Token的问题。

oc是如何将网页转换为命令行界面的?

oc通过提取网页中的关键元素(如链接、按钮、文本块)并给每个可交互元素编号,生成一个精简的带编号视图。AI代理可以通过命令(如oc do 1、oc read 2)与这些编号交互,而无需处理原始HTML。

oc在Token消耗上相比原始HTML抓取有多大的优化?

根据官方基准测试,在6个真实网页上,oc open仅消耗1,936个Token,而原始HTML抓取需要177,685个Token,效率提升近100倍。

oc支持哪些类型的网站?它有什么局限性?

oc支持大多数静态网站,如新闻、博客、文档、论坛和搜索引擎,甚至包括X(Twitter)、YouTube、Stack Overflow等看似需要登录或依赖JS的网站。但无法处理完全依赖JavaScript渲染的页面、需要登录的网站以及有高难度机器人挑战的网站。

oc的--budget参数有什么作用?

--budget参数用于控制每次渲染最多消耗的Token数,默认是500。如果页面内容超出预算,oc会提示还有内容未显示,用户可以用oc next继续加载。但预算不是硬上限,如果超出不多,oc会打印整个页面,因为多一次工具调用的开销比多输出几十个Token更贵。

oc与其他类似工具相比有什么独特设计?

oc不为特定网站编写适配器,而是使用通用方法将任何网站的HTML转换为带编号的交互视图,避免了适配器维护成本高、易失效的问题。它还在clis/目录下为一些主流网站提供快捷方式,但底层仍使用同一套通用渲染引擎。

oc在写操作方面支持哪些功能?

oc目前主要支持读操作,写操作有限。v0.2版本刚添加了fill和submit命令,可以填表和提交表单,但无法完成如电商下单、社交媒体发帖、网盘上传等更复杂的写操作。

oc的优化效果是否足够解决AI代理的Token消耗问题?

oc将网页浏览的Token消耗降低了100倍,但文章指出,AI代理本身的运行开销可能高达普通对话的1000倍,持续运行的代理甚至可达100万倍。因此,100倍的优化可能只是杯水车薪,整体Token消耗问题依然严峻。

🏷️

标签

➡️

继续阅读