❤️ 如果你也关注 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的世界模型模块来预测网页变化。
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
:模拟的步骤数。
资源
- 项目官网:https://mimictalk.github.io/
- GitHub 仓库:https://github.com/OSU-NLP-Group/WebDreamer
- arXiv 技术论文:https://arxiv.org/pdf/2411.06559
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦