专栏名称: GitHubStore
分享有意思的开源项目
目录
相关文章推荐
都市晨报  ·  刚刚,阿里巴巴重磅宣布! ·  18 小时前  
都市晨报  ·  刚刚,阿里巴巴重磅宣布! ·  18 小时前  
51好读  ›  专栏  ›  GitHubStore

Llama3-8B-Web - WebLlama:基于 24K Web 交互数据微调的最坚强代理

GitHubStore  · 公众号  ·  · 2024-04-28 07:19

正文

项目简介

这是使用 🦙 Llama 3 构建的最强大的代理,并针对带有对话的 Web 导航进行了微调。您可以从 🤗 Hugging Face Model Hub 下载代理。


关于该项目

WebLlama 我们项目的目标是构建有效的以人为本的代理来浏览网页。我们不想取代用户,而是为他们配备强大的助手。
Modeling 我们建立在最先进的库之上,用于培训 Llama 代理的 Web 导航任务。我们将提供训练脚本、优化的配置和训练尖端骆驼的说明。
Evaluation 在真实 Web 浏览中测试 Llama 模型的基准测试。这包括通过对话( WebLINX )进行以人为本的浏览,我们将很快为自动网络导航添加更多基准测试(例如Mind2Web)。
Data 我们的第一个模型在超过 24K 的 Web 交互实例上进行了微调,包括 click textinput submit 和 对话行为。我们希望不断策划、编译和发布数据集,以训练更好的代理。
Deployment 我们希望能够轻松地将 Llama 模型与现有的部署平台集成,包括 Playwright、Selenium 和 BrowserGym。我们目前正致力于实现这一目标。


建 模


注意

该模型在 🤗 Hugging Face Model Hub 上以 McGill-NLP/Llama-3-8B-Web .训练和评估数据可在 Hugging Face Hub 上获得 McGill-NLP/WebLINX 。


我们的第一个代理是一个微调 Meta-Llama-3-8B-Instruct 模型,最近由 Meta GenAI 团队发布。我们在 WebLINX 数据集上微调了这个模型,其中包含超过 100K 个 Web 导航和对话实例,每个实例都由专家注释者收集和验证。我们使用 24K 精选子集来训练数据。

它在 WebLINX 基准测试中比 GPT-4V(零射 * )高出 18% 以上,在域外测试拆分中取得了 28.8% 的总分(而 GPT-4V 为 10.5%)。它选择更有用的链接(34.1% vs 18.9% seg-F1),点击更相关的元素(27.1% vs 13.6% IoU)并制定更一致的响应(37.5% vs 3.1% chr-F1)。


通过 Hugging Face transformers datasets 和 hub 库使用模型非常简单:

from datasets import load_datasetfrom huggingface_hub import snapshot_downloadfrom transformers import pipeline
# We use validation data, but you can use your own data herevalid = load_dataset("McGill-NLP/WebLINX", split="validation")snapshot_download("McGill-NLP/WebLINX", "dataset", allow_patterns="templates/*")template = open('templates/llama.txt').read()
# Run the agent on a single state (text representation) and get the actionstate = 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'])
# Here, you can use the predictions on platforms like playwright or browsergymaction = process_pred(out['generated_text']) # implement based on your platformenv.step(action) # execute the action in your environment


评估

我们认为,展示座席表现的简短演示视频不足以判断座席。简单地说,如果我们没有好的基准,我们不知道我们是否有一个好的代理。我们需要系统地评估代理在各种任务中的表现,从简单的指令遵循 Web 导航到复杂的对话引导浏览。

这就是我们选择 WebLINX 作为第一个基准的原因。除了训练拆分之外,基准测试还有 4 个真实世界的拆分,目标是测试泛化的多个维度:新网站、新域、看不见的地理位置以及用户看不到屏幕并依赖对话的场景。它还涵盖了 150 个网站,包括预订、购物、写作、知识查找,甚至还有操作电子表格等复杂任务。在此基准测试上进行评估非常简单:

cd modeling/
# After installing dependencies, downloading the dataset, and training/evaluating your model, you can evaluate:python -m weblinx.eval # automatically find all `results.jsonl` and generate an `aggregated_results.json` file
# Visualize your results with our app:cd ..streamlit run app/Results.py


数据

尽管 24K 训练示例为训练有能力的智能体 WebLINX 提供了良好的起点,但我们认为需要更多的数据来训练可以泛化到各种 Web 导航任务的智能体。尽管它已经在 150 个网站上进行了训练和评估,但该模型从未见过数百万个网站, 每天都在创建新的网站。







请到「今天看啥」查看全文