Jev Ultrafast:一个拥有动态索引动作空间的浏览器智能体

Hacker News Top 工具

摘要

Jev Ultrafast 是一个利用动态索引动作空间的浏览器智能体,以实现高效的AI驱动自动化,并通过快速的Google Flights搜索进行演示。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/09/17 06:07

browser-use/jev-ultrafast 来源:https://github.com/browser-use/jev-ultrafast

Jev Ultrafast ⚡

一个具有动态、索引化动作空间的浏览器代理。
给它一个目标。TypeSafe的Jev(https://docs.typesafe.ai/introduction)会选择一个操作和一个元素。仅当操作为TYPE_TEXT时,一个小型LLM才会生成文本。

从苏黎世到伦敦的Google航班搜索耗时7.1秒。
包含一个自然语言目标、实际文本生成以及加载等待时间。
观看MP4视频 · 性能数据 · 查看循环代码

动作空间

每个观察结果都会生成一个新的元素表:

text [1] button 更改票种 · 往返 [2] combobox 从哪里出发? · 旧金山 [3] combobox 去哪里? · 空 [4] textbox 出发日期 · 空 ...

操作包括 CLICK、TYPE_TEXT、SELECT、SCROLL_UP、SCROLL_DOWN、WAIT、DONE 和 BLOCKED。仅提供支持的操作和目标。

text one TypeSafe 请求
┌───────────────────────────┐
│ 页面 → 元素表 → 操作      │
│   │                       │
│   click_target            │
│   type_text_target        │
│   select_target(如果存在)│
└─────────────┬─────────────┘
              │ 使用匹配的目标
CLICK [7] ────┤──→ 浏览器
TYPE_TEXT [3] ─┘
              ↓
        小型LLM → 文本 → 浏览器

目标问题是推测性的。如果操作是 CLICK,则只有 click_target 可以执行。两次决策,一次网络往返。每个目标头仅包含兼容元素。原生下拉选项携带观察到的元素/选项索引。策略中没有特定网站的动作脚本或预置字段字符串。航班示例提供了一个目标并独立验证结果。截图渲染器在之后添加标签;它并不驱动浏览器。

尝试一下

git clone https://github.com/browser-use/jev-ultrafast.git
cd jev-ultrafast
uv sync
cp .env.example .env  # 添加 TYPESAFE_API_KEY 和 TEXT_MODEL_API_KEY
uv run jev

打开 http://127.0.0.1:8766 并点击 开始演示 → 自动运行。检查器会显示编号的元素、操作概率、目标概率和已执行的操作。选择下一步会在执行前暂停。Chrome 通过 Browser Harness(https://github.com/browser-use/browser-harness)连接,该工具由 uv sync 安装。如果需要连接,请运行 uv run browser-harness --doctor。在提示时允许 Chrome 进行远程调试。在示例配置中,TEXT_MODEL_API_KEY 是一个 OpenRouter 密钥。当前演示使用 inception/mercury-2.5,并禁用了推理功能。Gemini、GLM 和 DeepSeek 也可以使用 OpenAI 兼容的文本助手;请配置相应的模型、端点和推理设置。

使用该库

from jev_ultrafast import Agent

with Agent(
    "https://www.google.com/travel/flights?hl=en",
    "查找2026年9月20日从苏黎世到伦敦的单程经济舱航班,乘客为一名成人。当找到匹配的航班选项时停止。",
) as agent:
    for state in agent.run():
        print(state["elapsed_ms"], state["status"])

使用 uv run --env-file .env python your_script.py 运行。相同的策略可以运行不同的任务:

uv run --env-file .env python examples/run.py \
    --url https://en.wikipedia.org/wiki/Main_Page \
    --goal '查找并打开关于哥德尔不完备性定理的维基百科文章。'

uv run --env-file .env python examples/flights.py --keep-open 会执行航班搜索、检查实际路线/日期/结果,并保存其跟踪信息。它不会选择或预订航班。

它为何能快速移动

  • 每个决策周期只发起一次请求。 操作和目标头共享相同的观察状态。
  • 默认代理循环中不使用截图。 Jev 消费结构化状态。检查器可以选择使用截图;视频使用单独的连续录屏。
  • 每个快照只进行一次浏览器调用。 原子性地读取可见控件及其名称、值和文本。保留对实际 DOM 节点的引用。
  • 验证所选目标。 点击会检查文档、表单值、目标及附近上下文。仅动画不会强制进行另一次预测。在输入前解析当前几何结构并拒绝被覆盖的控件。
  • 等待有用的状态。 在组合框中键入后,等待可见的建议,上限为 200 毫秒。其他交互最多获得两个动画帧或 50 毫秒。这些读取发生在操作被记录之后。
  • 保持隐藏标签页渲染。 焦点模拟防止后台动画节流,而无需切换 Chrome 的可见标签页。
  • 发送可见文本。 不可视的文章正文和页脚不会填充模型上下文。
  • 重用被中断的文本请求。 生成的值仅在文本助手的整个输入保持不变时,才能在页面过时重试中存活。每个执行的目标都从观察到的节点解析。执行器会重新检查页面新鲜度和点击遮挡。模型输出永远不会成为选择器、坐标、shell 命令或可执行的 JavaScript。文本助手输出在键入前必须解析为小型 JSON 对象。

小到足以阅读

文件职责
agent.py完整的循环和文本助手交接
snapshot.js原子 DOM 快照、索引控件、新鲜度守护
browser.py浏览器连接、当前几何结构、执行
model.py动态操作/目标头和文本生成
questions.py模型指令
demo.py本地检查器

证据与局限性

当前的视频是一次耗时 7,073 毫秒 的 Google 航班搜索运行。计时从初始页面观察后开始,包括模型调用、生成的文本、浏览器工作、过时的决策和加载等待。一个新的独立检查验证了单程设置、苏黎世、伦敦、2026年9月20日和可见的航班选项。视频以1倍速播放,没有开头的停顿和0.5秒的最终定格。在六次使用相同模型和设置的交替运行中,两个版本都通过了 3/3。中位任务时间从 9.450 秒 → 7.092 秒,减少了 25%;中位浏览器协议调用从 1,092 → 101。这是在一个浏览器配置文件上对一个任务的三次重复,而不是通用的可靠性基准。相同的策略在 2.798 秒 内打开了请求的维基百科文章,并在 1.896 秒 内通过了一个本地酒店搜索/过滤任务。运行、失败、源代码哈希和测量边界在 performance.md 中。选择 DONE 仍然需要独立的结果验证。DOM 读取器处理常见的 HTML 和 ARIA 控件,但不是完整的可访问名称规范。影子根、框架、画布、上传、弹出标签页、嵌套滚动和任意键盘小部件仍在此 MVP 之外。受控标签页共享现有的 Chrome 配置文件。

开发

uv run ruff check .
uv run pytest
node --check jev_ultrafast/static/app.js
node --check jev_ultrafast/snapshot.js
uv build

测试是离线的。uv run python scripts/check_guards.py 在不进行模型调用的情况下检查本地浏览器中的真实控件。实时示例和录制脚本会进行付费 API 调用。scripts/record_flights.py 捕获原始浏览器时间戳;scripts/render_demo.py 以1倍速渲染该次经过验证的运行,并裁剪掉 Google 帐户条。凭据和原始跟踪信息保持忽略。


Browser Use (https://github.com/browser-use/browser-use) · Browser Harness (https://github.com/browser-use/browser-harness) · TypeSafe 推测性扇出 (https://docs.typesafe.ai/patterns/fan-out)

相似文章

体验Jev——一种有趣的AI代理方法

Reddit r/ArtificialInteligence

作者讨论了尝试使用Jev,这是一种专注于决策的AI代理工具,与使用大型语言模型处理所有任务相比,它声称在速度和成本上有显著优势。

@browser_use:Ultrafast 在 4 天内达到 15k。

X AI KOLs Timeline

Ultrafast 是一款开源浏览器代理,在四天内获得了 15,000 个 GitHub 星标,突显了其利用 LLMs 实现如航班搜索等任务的快速低成本自动化能力。