基于 selenium 和 claude3 的AI自动化工具
链接cerebellum是一个轻量级浏览器代理,通过键盘和鼠标操作在网页上实现用户定义的目标。
cerebellum 的特点
兼容所有支持 Selenium 的浏览器。
使用用户提供的 JSON 数据填写表单。
接受运行时指令以动态调整浏览策略和操作。
Cerebellum 是如何工作的
网页浏览被简化为导航一个有向图。
每个网页是一个包含可见元素和数据的节点。
用户的操作,例如点击或输入,是在节点之间移动的边。
Cerebellum 从一个网页开始,目标是到达一个体现完成目标的目标节点。
它使用大型语言模型(LLM)通过分析页面内容和交互元素来找到新的节点。
LLM 根据当前状态和过去的操作决定下一个动作。
Cerebellum 执行 LLM 计划的动作,并将新的状态反馈给 LLM 以进行下一步。
该过程在 LLM 决定目标已达到或无法实现时结束。
cerebellum 安装使用
目前 cerebellum 支持 TypeScript 和 Python 两个版本。好吧!我知道大家应该只关心Python版本。
首先,通过 pip 安装
pip install cerebellum
然后,设置你的 Anthropic API key, 即 claude3 的API key。
export ANTHROPIC_API_KEY= 'your-api-key'
这一步是设置系统环境变量,cerebellum 代码中会读取电脑的这个环境变量。
最后,编写 cerebellum 脚本

cerebellum 分析
很遗憾~!,我花费了半天时间没弄到 AnthropicAPI key, 官方支付需要绑定信用卡,我国内的信用卡用不了。国内的一些代理的API,无法直接使用,因为 cerebellum 比较深度的依赖 anthropic-sdk-python。
我看了一下源码,可以替换 openai API 或 国内的一些模型的 API,估计要花费写时间重写。
https://github.com/anthropics/anthropic-sdk-python
抛去 anthropic 部分的依赖,cerebellum 并没有太多的自己的东西了,主要依赖如下:
seleniumbase = "^4.32.9"
anthropic = "^0.39.0"
pillow = "^11.0.0"
通过示例可以看到使用 seleniumbase 获取浏览器驱动和打开浏览器页面。seleniumbase 又依赖于selenium 和 pytest,自动化操作的核心还是我们传统的技术。
pillow
pillow 是Python的图像处理库,我的理解应该是将页面截图并进行处理。
anthropic
anthropic 识别用于识别自动化意图。
goal = "Show me the wikipedia page of the creator of Bitcoin"
首先,通过 “creator of Bitcoin” 获取到比特币的创造者是:“Satoshi Nakamoto”, 再从提取“wikipedia” 关键信息,最后组成搜索关键字:“Satoshi Nakamoto wikipedia” 。
接下来,页面截图分析,识别google搜索框,并输入关键字搜索,最后,在结果中获得维基百科的链接并打开。

总结
我们之前曾介绍过 AppAgent 工具,cerebellum 的思路类似,核心基于LLM模型本身的能力。
再次,表示遗憾,没弄到 AnthropicAPI key 导致上面的例子我没真正的跑一下,这偏文章写的不那么踏实了。
感兴趣评论区留言,我打算花点时间把 cerebellum 替换为其他可用的模型,claude3 虽然优势明显,倒也不至于非他不可。
最后作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些软件测试的学习资源,希望能给你前进的路上带来帮助。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

更多推荐



所有评论(0)