写作

怎样把网页真正交给 AI

URL 不是内容,复制粘贴也不是答案。要让网页成为 AI 可以使用的材料,中间还有一段很容易被忽略的路。

最近在做 Browser Extension 时,我一直遇到一个看起来很简单的问题:用户说“把这个网页交给 AI”,他到底交出了什么?

最直接的答案是 URL。但 URL 只是地址,不是内容。它告诉系统去哪里找,却没有告诉系统页面里什么真正重要。

另一个答案是复制粘贴。用户选中正文,复制到输入框,再告诉 AI 自己想做什么。这当然可以工作,但整个过程很笨。材料越长,复制越麻烦;页面越复杂,粘贴进来的内容越混乱。用户还需要反复在浏览器和 AI 产品之间切换。

如果我们希望 AI 真正成为工作的参与者,就不能一直要求用户手动搬运信息。

URL 不是 Context

一个网页在人眼里通常很清楚:标题在哪里、正文是什么、哪些是相关推荐、哪些只是导航与广告。

但系统拿到的是另一回事。页面里可能包含菜单、脚本、隐藏元素、评论、页脚、登录弹窗和大量重复链接。一篇几千字的文章,最后可能对应几万字符的页面内容。

把这些东西全部交给模型,并不等于模型拥有了更好的 Context。很多时候,它只是获得了更多噪声。

所以,从网页到 AI 之间至少需要一次转换:

Web page
  → extract
  → clean
  → preserve useful structure
  → store as material
  → send the relevant part to AI

这条路径看起来像是数据处理问题,但最后决定体验的仍然是产品判断:什么应该被保留,什么应该被丢掉,以及用户能不能理解系统最后拿走了什么。

整个页面,还是用户选中的部分

做 Extension 时,一个很自然的想法是提供两种能力:保存整个网页,或者只保存用户选中的内容。

整个网页拥有更完整的上下文,但通常也更脏。用户选中的段落更准确,却可能失去标题、作者和前后关系。

两者没有绝对正确的答案。

如果用户正在读一篇研究报告,他可能希望保存完整正文;如果只想解释其中一个概念,一段选中的文字已经足够;如果页面是一个视频、帖子或动态页面,真正有价值的内容甚至不一定存在于普通正文里。

这让我意识到,“抓取网页”并不是一个动作。它其实包含了用户对材料范围的判断。

Extension 最有价值的地方,也不只是少复制一次。它让用户可以在看到信息的时刻,直接决定哪些内容值得进入下一步工作。

网页需要先变成材料

复制到输入框里的内容通常只服务于当前一次对话。对话结束后,用户很难再找到它,也不知道未来的 AI 是否还会看到同一份材料。

我们开始尝试把网页保存成独立的资料,而不是一段临时 Prompt。

一份资料至少应该保留几个简单信息:

  • 它来自哪个页面;
  • 页面原来的标题是什么;
  • 用户保存的是全文还是选区;
  • 内容是什么时候被获取的;
  • 用户之后能否重新查看和使用它。

这些信息听起来很基础,却会改变产品的感觉。

当网页只是输入框里的一段文字,AI 对它做什么很难被追踪。当网页成为一份可以重新选择的材料,用户才开始拥有自己的资料集合,也可以在不同任务里再次使用它。

这比让 Prompt 更长更有意义。

清理内容比抓到内容更难

抓到网页 HTML 并不困难。真正麻烦的是把它变成稳定、可阅读、可以继续处理的内容。

不同网站的结构差异很大。有些页面正文清楚,有些大量依赖客户端渲染;有些是文章,有些是产品页面、视频或社交内容。即使是普通文本,也可能混着按钮名称、重复标题和无意义换行。

文件也有类似问题。Markdown、JSON、XML 与普通文本拥有完全不同的结构。如果简单按照固定长度切开,很容易在一个对象、一句话或一个段落中间断掉。内容虽然进入了系统,含义却被破坏了。

我们最近花了不少时间处理这些不够显眼的问题:如何减少无用页面元素,如何尽量保留标题与段落,如何让不同语言的材料仍然能够被找到,以及如何避免切分破坏原始结构。

这些工作不会像一个新模型那样令人兴奋,却直接决定 AI 最后读到的是一份材料,还是一堆碰巧来自同一 URL 的字符。

获取内容不是结束

即使网页已经被清理和保存,问题仍然没有结束。

用户可能积累几十或几百份资料。每一次都把全部内容交给 AI,既慢也没有必要。产品需要让用户选择,也需要帮助系统从已有材料中找到与当前问题真正相关的部分。

但这里很容易走到另一个极端:系统自动选择一切,用户却不知道回答基于哪些资料。

我现在更倾向于让这个关系保持可见。用户不必理解搜索或向量的实现,但应该能够知道:自己保存了什么,这次使用了什么,以及生成内容能不能回到原来的来源。

否则,AI 即使给出了正确答案,这项工作也很难继续。用户无法复查,也无法把好的材料重新组合成新的结果。

Extension 不是另一个入口

最开始,我们很容易把 Browser Extension 理解成产品的快捷入口:用户不用打开新页面,也可以使用 AI。

做了一段时间之后,我觉得它更像一座桥。

浏览器本来就是人获取信息的地方。文章、搜索结果、视频、社区讨论和各种在线工具都在这里发生。AI 产品如果只等待用户打开一个空白输入框,就等于要求用户先把自己正在做的事情翻译成一段 Prompt。

Extension 可以缩短这段距离:用户正在看的页面就是材料,选中的内容就是意图的一部分,保存动作则把临时浏览变成以后还能使用的东西。

这并不意味着 AI 应该读取用户看到的一切。相反,浏览器离真实工作越近,权限和范围就越需要清楚。什么内容被读取、什么时候被保存、是否只处理选区,都应该由用户明确决定。

便利不能建立在“不知道系统拿走了什么”之上。

真正交给 AI 的是什么

现在回头看,“把网页交给 AI”至少包含四件不同的事:

  1. 找到页面里真正有用的内容;
  2. 把内容整理成能够继续处理的形式;
  3. 保留它来自哪里,以及用户选择了什么;
  4. 在未来任务里重新找到和使用相关部分。

URL 只完成了第一步之前的定位。复制粘贴则把剩下的问题全部留给用户。

我还不知道 Browser Extension 最终会成为 AI 产品的主要入口,还是只是一种辅助工具。但有一点已经越来越清楚:AI 与真实工作之间缺少的,往往不是另一个更聪明的回答,而是一条让材料自然进入系统的路径。

真正交给 AI 的不应该只是一个链接。

应该是一份范围清楚、来源仍然可见,并且之后还能继续使用的材料。

文章数据

次阅读条评论

讨论

评论区

关于文章本身,也欢迎留下不同意见或补充。

留下评论

评论会立即公开,并可在当前浏览器中删除。

发布时会进行一次隐私友好的人机验证。