WebDreamer:基于大语言模型模拟网页交互增强网络规划能力的框架

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

功能 :基于大型语言模型(LLMs)模拟网页交互,预测用户行为及其结果。
优势 :提高智能体的性能和安全性,减少实际网站交互的需求。
应用:自动化网页任务、智能搜索和导航、虚拟助手、电子商务和客户服务。

正文(附运行示例)

WebDreamer 是什么

WebDreamer是由俄亥俄州立大学和Orby AI研究团队推出的基于模型规划的网络智能体。它利用大型语言模型(LLMs),特别是GPT-4o,作为世界模型来预测网站上的交互结果。框架通过模拟可能的用户行为和结果,帮助网络代理在复杂的网络环境中进行有效的规划和决策。

WebDreamer的核心概念是"做梦",即在实际采取行动前,用LLM预测每个可能步骤的结果,并选择最有可能实现目标的行动。这种方法不仅提高了智能体的性能和安全性,还减少了实际网站交互的需求。

WebDreamer 的主要功能

  • 基于模型的规划:使用大型语言模型(LLMs)作为世界模型,为网络代理提供基于模型的规划能力,能在复杂的网络环境中执行任务。
  • 预测交互结果:预测用户在网站上可能采取的行动及其结果,例如点击一个按钮或输入文本后网页的变化。
  • 优化决策:基于模拟不同的行动路径,评估每种可能结果的优劣,确定最佳的行动方案。
  • 提高性能和效率:与反应式基线相比,WebDreamer在完成任务时表现更好,需要的交互次数更少,提高了效率。
  • 增强安全性:减少与真实网站的直接交互,降低因不可逆操作导致的风险,如意外提交表单或触发交易。
  • 多功能集成:作为插件与多种智能体集成,补充树搜索智能体的功能。

WebDreamer 的技术原理

  • 模拟函数(sim):使用LLMs模拟每个候选动作的结果。模拟函数基于自然语言描述预测行动后的状态变化,近似于状态转移函数。
  • 评分函数(score):在模拟出可能的行动轨迹后,使用LLMs作为评分函数,评估每个模拟轨迹与完成任务目标的接近程度。
  • 候选动作生成:采用两阶段方法生成候选动作,先采样出前k个动作,然后用LLM自我优化,去除不必要的动作进行模拟。
  • 迭代模拟和执行:智能体在每个决策点模拟多个可能的行动轨迹,选择得分最高的轨迹,执行相应的初始动作,根据实际结果更新模拟,重复此过程直到任务完成。
  • 部分可观测马尔可夫决策过程(POMDP):将网络任务视为POMDP,考虑到网络环境的复杂性和部分可观测性。
  • 模型预测控制(MPC):借鉴MPC方法,迭代模拟未来轨迹选择动作,避免代价高昂的真实世界探索。

如何运行 WebDreamer

以下是一个简单的示例代码,展示了如何使用WebDreamer的世界模型模块来预测网页变化。

python 复制代码
from WebDreamer import WebWorldModel
import os

# 初始化世界模型
world_model = WebWorldModel(OpenAI(api_key=os.environ["OPENAI_API_KEY"]))

# 加载网页截图
screenshot_path = "demo_data/shopping_0.png"
screenshot = encode_image(screenshot_path)
screenshot = "data:image/jpeg;base64," + screenshot

# 定义任务和初始动作
action_description = "type 'red blanket' in the search bar and click search"
task = "Buy the least expensive red blanket (in any size) from 'Blankets & Throws' category."

# 预测网页变化
imagination = world_model.multiple_step_change_prediction(
    screenshot, screenshot_path, task, action_description, format='accessibility', k=3
)

print(imagination)

参数解释

  • screenshot_path:网页截图的路径。
  • task:描述在网页上要完成的任务。
  • action_description:初始动作的描述。
  • format:预测网页状态变化的输出格式,可选值为change(文本描述)、accessibility(可访问性树结构)、html(HTML结构)。
  • k:模拟的步骤数。

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关推荐
倔强青铜三1 分钟前
苦练Python第23天:元组秘籍与妙用
人工智能·python·面试
hayson4 分钟前
langchaingo用法详解及源码解析(一)
langchain·llm
AndrewHZ32 分钟前
【图像处理基石】如何入门色彩评估?
图像处理·人工智能·深度学习·色彩科学·hvs·色彩评估·颜色工程
TomatoSCI32 分钟前
聚类的可视化选择:PCA / t-SNE丨TomatoSCI分析日记
人工智能·机器学习
大咖分享课34 分钟前
深度剖析:最新发布的ChatGPT Agent 技术架构与应用场景
人工智能·openai·智能助手·ai代理·chatgpt agent·自主任务执行
lucky_lyovo44 分钟前
卷积神经网络--网络性能提升
人工智能·神经网络·cnn
liliangcsdn1 小时前
smolagents - 如何在mac用agents做简单算术题
人工智能·macos·prompt
nju_spy1 小时前
周志华《机器学习导论》第8章 集成学习 Ensemble Learning
人工智能·随机森林·机器学习·集成学习·boosting·bagging·南京大学
静心问道1 小时前
TrOCR: 基于Transformer的光学字符识别方法,使用预训练模型
人工智能·深度学习·transformer·多模态
说私域1 小时前
基于开源AI大模型、AI智能名片与S2B2C商城小程序源码的用户价值引导与核心用户沉淀策略研究
人工智能·开源