webllama

GitHub
1.4k 104 较难 1 次阅读 今天MIT语言模型Agent
AI 解读 由 AI 自动生成,仅供参考

WebLlama 是一款基于 Meta Llama 3 打造的开源智能体项目,旨在构建能够理解人类指令、通过对话协作并完成网页浏览任务的 AI 助手。它的核心目标并非取代用户,而是作为强大的副手,帮助用户自动执行复杂的网页导航操作,如点击链接、填写表单或提交信息,从而解决传统自动化脚本灵活性差、难以应对动态网页交互的痛点。

该项目特别适合 AI 研究人员、开发者以及希望探索大模型在真实网络环境中应用的技术爱好者。WebLlama 的独特亮点在于其首个模型 Llama-3-8B-Web,该模型在包含超过 2.4 万条专家标注交互数据的数据集上进行了微调。在 WebLINX 1.0 基准测试中,它表现出色,甚至在零样本设置下超越 GPT-4V 达 18%,尤其在链接选择准确性和对话响应自然度上优势明显。此外,项目提供了完整的训练脚本、优化配置及评估基准,并支持与 Playwright、Selenium 等主流浏览器自动化框架无缝集成,方便用户快速部署和二次开发,是推动“以人为中心”的网页智能体发展的重要开源成果。

使用场景

一位市场分析师需要跨多个新闻网站和论坛,实时收集并整理关于“最新 AI 监管政策”的分散信息以撰写日报。

没有 webllama 时

  • 人工遍历效率低:分析师必须手动打开十几个网页,逐个点击“下一页”或展开折叠内容,耗时数小时才能完成基础信息搜集。
  • 多轮交互易中断:在复杂网站(如需登录或处理弹窗)中,传统脚本一旦遇到未预设的页面结构就会报错停止,无法像人类一样灵活调整策略。
  • 信息整合困难:从不同来源复制粘贴的数据格式混乱,需要额外花费大量时间进行清洗和对齐,难以直接形成连贯的分析结论。
  • 缺乏对话式引导:无法通过自然语言指令让工具“只关注负面评价”或“对比三家观点”,只能机械地抓取所有文本,噪音极大。

使用 webllama 后

  • 自主导航提速度:webllama 能理解“查找最近三天的相关政策新闻”这类指令,自动在浏览器中点击、滚动和翻页,将数小时的工作压缩至几分钟。
  • 动态适应强鲁棒:基于 Llama-3 的微调模型能像真人一样处理多轮对话和突发弹窗,即使面对未见过的网站布局也能自主决策下一步操作,确保持续运行。
  • 结构化输出省心:工具直接在浏览过程中提取关键要素并按指定格式汇总,生成整洁的对比表格或摘要,省去了后续繁琐的数据清洗环节。
  • 意图对齐更精准:用户可随时通过对话修正方向,例如告诉 webllama“忽略官方博客,只看第三方评论”,它能立即调整搜索策略,精准锁定高价值信息。

webllama 将原本枯燥的“人肉爬虫”工作转化为高效的“对话式协作”,让开发者能专注于洞察分析而非机械操作。

运行环境要求

GPU

未说明(基于 Llama-3-8B 模型,通常推理需显存 6GB+,训练需更高)

内存

未说明

依赖
notesREADME 未明确列出具体的系统版本、Python 版本或硬件最低要求。项目依赖 Hugging Face 生态库进行模型加载与评估,并支持集成 Playwright、Selenium 和 BrowserGym 等浏览器自动化工具。核心模型为微调后的 Meta-Llama-3-8B-Instruct,使用时需确保本地环境能运行该量级的 Transformer 模型。评估部分包含 Streamlit 可视化应用。
python未说明
transformers
datasets
huggingface_hub
streamlit
playwright
selenium
browsergym
webllama hero image

快速开始

🖥️ WebLlama🦙

构建能够根据指令浏览网页并与您对话的智能体

💻 GitHub 🏠 主页 🤗 Llama-3-8B-Web
WebLlama 帮助您构建由 Meta Llama 3 提供支持的强大智能体,以代表您浏览网页 我们的首个模型 Llama-3-8B-WebWebLINX 1.0 上的表现比 GPT-4V(零样本)高出 18%
基于 Meta Llama 3 构建 与 GPT-4V 的对比

关于项目

WebLlama 我们项目的目标是构建高效、以人为本的网页浏览智能体。我们并不想取代用户,而是为他们配备强大的助手。
建模 我们基于最先进的库来训练 Llama 智能体完成网页导航任务。我们将提供训练脚本、优化配置以及训练前沿 Llama 模型的指导说明。
评估 用于测试 Llama 模型在真实世界网页浏览中表现的基准。这包括通过对话进行的以人为本的浏览(WebLINX 1.0),我们还将很快增加更多用于自动网页导航的基准(例如 Mind2Web)。
数据 我们的第一个模型是在超过 2.4 万条网页交互实例上进行微调的,其中包括点击、文本输入、提交以及对话行为。我们希望持续整理、汇编并发布用于训练更优秀智能体的数据集。
部署 我们希望让 Llama 模型与现有部署平台(如 Playwright、Selenium 和 BrowserGym)的集成变得简单易行。目前我们正致力于将这一目标变为现实。
点击以显示引用

如果您在研究中使用了 WebLlama,可以引用最初用于训练和评估的 ICML 2024 论文,并将其添加到您的 bibtex 文件中:

@misc{lu_2024_weblinx,
      title={WebLINX: Real-World Website Navigation with Multi-Turn Dialogue}, 
      author={Xing Han Lù and Zdeněk Kasner and Siva Reddy},
      year={2024},
      eprint={2402.05930},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

示例用法(在 LaTeX 中):

我们使用 WebLlama 库,该库建立在 WebLINX 的基础上 \citep{lu_2024_weblinx}。
我们使用 Llama-3-8B-Web 模型,该模型是在 WebLINX 示范数据上微调的 \citep{lu_2024_weblinx}。

建模

[!NOTE] 该模型已在 🤗 Hugging Face Model Hub 上发布,名称为 McGill-NLP/Llama-3-8B-Web。训练和评估数据则可在 Hugging Face Hub 上找到,数据集名为 McGill-NLP/WebLINX

我们的首个智能体是一个基于 Meta-Llama-3-8B-Instruct 微调的模型,该模型最近由 Meta GenAI 团队发布。我们在此基础上使用了 WebLINX 1.0 数据集进行微调,该数据集包含超过 10 万个网页导航和对话实例,每一条都由专业标注人员收集并验证。我们从中选取了 2.4 万个精心筛选的子集用于训练。

Llama-3-Web、GPT-4V、GPT-3.5 和 MindAct 的对比

*它在 WebLINX 1.0 基准测试中,比 GPT-4V(零样本 )高出 18% 以上,在域外测试划分上的综合得分达到 28.8%,而 GPT-4V 仅为 10.5%。它会选择更有用的链接(34.1% 对 18.9% 的 seg-F1),点击更相关的元素(27.1% 对 13.6% 的 IoU),并生成更贴合需求的响应(37.5% 对 3.1% 的 chr-F1)。

使用 Hugging Face 的 transformersdatasetshub 库来运行该模型非常简单:

from datasets import load_dataset
from huggingface_hub import snapshot_download
from transformers import pipeline

# 我们使用验证数据,但您也可以使用自己的数据
valid = load_dataset("McGill-NLP/WebLINX", split="validation")
snapshot_download("McGill-NLP/WebLINX", repo_type="dataset", allow_patterns="templates/*")
template = open('templates/llama.txt').read()

# 在单个状态(文本表示)上运行智能体并获取行动
state = template.format(**valid[0])
agent = pipeline("McGill-NLP/Llama-3-8b-Web")
out = agent(state, return_full_text=False)[0]
print("Action:", out['generated_text'])

# 接下来,您可以将预测结果应用于 playwright 或 browsergym 等平台
action = process_pred(out['generated_text'])  # 根据您的平台实现
env.step(action)  # 在您的环境中执行该动作

评估

我们认为,仅仅通过简短的演示视频来展示智能体的表现,并不足以对其作出准确判断。简而言之,如果没有完善的基准测试,我们就无法确定自己是否拥有一个优秀的智能体。 我们需要系统地评估智能体在各种任务上的表现,从简单的遵循指令的网页导航,到复杂的对话引导式浏览。

这就是我们选择 WebLINX 作为首个基准的原因。除了训练划分之外,该基准还包含 4 个真实世界的划分,旨在测试智能体在多个维度上的泛化能力:新的网站、新的域名、未见过的地理位置,以及“用户无法看到屏幕而完全依赖对话”的场景。它还涵盖了 150 个网站,涉及预订、购物、写作、知识查询,甚至像操作电子表格这样复杂的任务。在这个基准上进行评估非常简单:

cd modeling/

# 安装好依赖项、下载数据集并训练/评估完您的模型后,即可进行评估:
python -m weblinx.eval # 自动查找所有 `results.jsonl` 并生成 `aggregated_results.json` 文件

# 使用我们的应用可视化您的结果:
cd ..
streamlit run app/Results.py

👷‍♀️ 下一步计划
我们计划在更多基准上评估我们的模型,包括用于自动网页导航的 Mind2Web 基准。我们认为,一个优秀的智能体应该既能通过对话导航网页,也能自主导航,并且可能具备更广泛的技能,以应对真实世界的网页浏览需求。

数据

尽管来自 WebLINX 1.0 的 24K 个训练示例为训练一个功能强大的智能体提供了一个良好的起点,但我们认为,要训练出能够泛化到各种网络导航任务的智能体,还需要更多的数据。虽然该模型已经在 150 个网站上进行了训练和评估,但仍有数以百万计的网站是模型从未见过的,而且每天都有新网站不断涌现。

这促使我们持续地收集、整理并发布用于训练更好智能体的数据集。 作为下一步,我们将把 Mind2Web 的训练数据纳入其中,这些数据同样涵盖了超过 100 个网站。

[!NOTE] WebLINX 现已通过 BrowserGym 作为一个基准测试平台提供,您可以像使用 WebArenaMiniWoB 这样的网络智能体环境一样,访问演示步骤。同时,您也可以运行来自 Agentlab 库中的智能体,其中包括利用 Claude-3.5-Sonnet 实现 SOTA 性能的智能体。为了实现这一集成,我们在 PyPi 上发布了 BrowserGym 的 weblinx-browsergym 扩展,以及在 Huggingface 上发布的基于 WebLINX 的新数据集 WebLINX 1.1 (链接)。在 WebLINX 1.1 中,经过处理后移除了少量演示,但未添加新的演示。评估步骤有了重大变化,加入了标签页操作。请在您的工作中将结果标注为“WebLINX-1.1”、“WebLINX-BrowserGym”或“WebLINX-BG”,以区别于 WebLINX 初始版本 (1.0)

部署

我们正在努力使您能够轻松地将 Llama 网络智能体部署到网络上。我们希望将 WebLlama 与现有的部署平台集成,包括 Microsoft 的 Playwright、ServiceNow Research 的 BrowserGym 以及其他合作伙伴。

目前,我们提供以下集成:

代码

用于微调模型并在 WebLINX 1.0 基准上对其进行评估的代码现已公开。

  • 建模: 您可以在 modeling 中找到详细的说明,了解如何在 WebLINX 1.0 数据集上训练 Llama-3-8B-Web
  • 示例: 我们提供了一些使用 webllama API 和模型的示例,包括网页 API、端到端流程以及与 BrowserGym 的集成。这些示例可在 examples 中找到。
  • 应用: 我们提供了一个简单的 Streamlit 应用程序,用于可视化您的模型在 WebLINX 1.0 基准上的结果。相关代码可在 app 中找到。
  • 文档: 我们为代码提供了详细的文档,详见 docs

👷‍♀️ 下一步
目前我们正积极开发新的数据和评估方法!如果您想参与贡献,请创建一个议题,说明您希望做出哪些贡献,我们将很乐意帮助您入门。

许可证

本仓库中的代码采用 MIT 许可证,除非文件头部另有说明。其他材料(模型、数据、图片)则有各自的许可证,具体信息见原始页面。

常见问题解答

我如何参与该项目?

我们正在积极寻找合作者,共同打造最优秀的 Llama-3 网络智能体!要开始参与,请提交一个关于您希望贡献内容的议题,讨论确定后,您可以提交拉取请求。

引用

如果您在研究中使用了 WebLlama,可以引用其训练和评估所基于的 ICML 2024 论文,并在您的 BibTeX 文件中加入以下条目:

@misc{lu_2024_weblinx,
      title={WebLINX: Real-World Website Navigation with Multi-Turn Dialogue}, 
      author={Xing Han Lù and Zdeněk Kasner and Siva Reddy},
      year={2024},
      eprint={2402.05930},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}

使用示例(LaTeX):

我们使用 WebLlama 库,它基于 WebLINX \citep{lu_2024_weblinx}。
我们使用 Llama-3-8B-Web 模型,该模型是在 WebLINX 演示数据上微调得到的 \citep{lu_2024_weblinx}。

版本历史

0.1.02024/06/25
0.1.0pre12024/06/13
0.0.1pre12024/04/20

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|4天前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|5天前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

149.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|今天
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|昨天
插件Agent图像

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|4天前
语言模型图像Agent