要真正有效,AI代理需要开始在我们的环境中生活,最明显的起点是我们的数字环境……
Preview image要真正有效,AI代理需要开始在我们的环境中生活,最明显的选择是我们的数字环境。
为了使AI代理真正帮助我们人类并代表我们执行任务,它们需要在我们的环境中生活和存在。
有许多研究暗示,AI代理将成为物理实体或机器人的操作系统。
因此,AI代理将具备执行任务的实体。
但在我们达到这一点之前,最明显的实施AI代理并为其提供栖身之所的地方将是数字环境。
这些数字环境可以是客户支持的应用场景,也可以是在个人数字环境中。
因此,有许多AI代理可以在用户桌面上生活,并能够执行计算机使用任务。
因此,它们能够导航用户的图形用户界面(GUI)。
需要注意的是,通用多功能AI代理在导航桌面/GUI时的准确率一般在14%到30%之间。
相对更容易解决的问题是为代理提供网页浏览/搜索的访问权限,我们已经看到准确率达到50%及以上。
最明智的方法是让AI代理仅访问其能够访问的经过筛选的网站列表。
这可以保护AI代理免受各种攻击和弹出窗口的影响,因为研究表明,AI代理在浏览网页时仍然非常天真。
浏览器使用项目
Browser-use 是将您的 AI 代理与浏览器连接的最简单方法…
下面的屏幕录制展示了如何向浏览器使用代理提问,它会打开浏览器并开始在网上搜索答案。
我喜欢这个开源项目的原因是,您可以在本地机器上安装并运行它。通过让原型运行起来,可以获得一种通过简单阅读文档无法实现的理解。
None
如果您使用的是 MacBook,您只需要终端应用程序。
None
下一步是创建一个虚拟环境。
创建虚拟环境对于维护干净和隔离的项目依赖关系至关重要,可以防止不同项目之间可能需要相同库的不同版本而发生冲突。
通过使用虚拟环境,您可以安装特定于项目的包,而不会干扰您的全局 Python 安装或其他项目的依赖关系。
它们提供了一个沙盒空间,您可以在其中实验不同的包版本和配置,而不会对系统范围内的 Python 设置造成损害。
此外,虚拟环境使得管理和跟踪特定项目所需的确切包和版本变得简单,从而促进更好的依赖管理,并使您的开发工作流程更加有序和可重复。
要创建虚拟环境,您不需要专业软件,使用下面的命令,我创建了一个名为browser的虚拟环境。
python3 -m venv browser
然后,我激活虚拟环境。
source browser/bin/activate
如下面的图像所示,当您激活虚拟环境时,您的命令行提示符通常会更改,以在提示符的开头显示虚拟环境的名称,表示您当前正在该隔离的 Python 环境中工作。
这个视觉提示帮助您快速识别您正在使用特定的虚拟环境,这意味着您运行的任何 Python 或 pip 命令将特定于该环境的包和依赖关系。
环境名称通常出现在您的标准命令行用户名和机器信息之前,使当前活动的虚拟环境一目了然。
None
安装browser-use应用程序…
pip install browser-use
安装playwright…
playwright install
Playwright 是由微软开发的一个开源自动化库,允许开发人员使用单一 API 编写针对 Chromium、Firefox 和 WebKit 的跨浏览器网页自动化脚本。
(Chromium 是由谷歌发起的一个开源网页浏览器项目,作为多个流行网页浏览器的基础源代码。)
创建一个名为run.py的文本文件…
vim run.py
将以下代码粘贴到文件中…您将看到分配给任务变量的文本包含浏览代理的指令。
from langchain_openai import ChatOpenAI
from browser_use import Agent
import asyncio
from dotenv import load_dotenv
load_dotenv()
async def main():
agent = Agent(
task="Compare the price of gpt-4o and DeepSeek-V3",
llm=ChatOpenAI(model="gpt-4o"),
)
await agent.run()
asyncio.run(main())
给予文件执行权限。
请记住,chmod 777命令会授予所有人(所有者、组和其他人)对文件或目录的完全读、写和执行权限,这从根本上破坏了最小权限原则,并可能通过允许系统上的任何用户修改、删除或执行该文件而造成巨大的安全漏洞。
这种普遍的权限意味着潜在的恶意用户或进程可能会危害文件的完整性,可能导致系统安全漏洞,因此不要在服务器上执行此操作。
chmod 777 run.py
创建一个环境文件…
vim .env
将下面的行粘贴到文件中,包含您的 OpenAI API 密钥…
OPENAI_API_KEY=< Your OpenAI >
然后只需运行您的 AI 代理…
python3 run.py
下面的步骤展示了 AI 代理执行时的情况…这为 AI 代理的活动提供了良好的高层次可检查性。
None
您可以看到目标是如何定义的,代理是如何从一个目标移动到另一个目标的…伴随着行动、记忆和评估结果。
None
下面是最后一步,结果达成。
None
从网上检索到的信息摘要和最终答案。
None
有趣的是,结构化数据被用来在 AI 代理和 LLM 之间共享数据。
None
要深入了解发送到 LLM 的数据,您可以登录 OpenAI 仪表板。
None
您可以在 OpenAI 仪表板中看到发送给 LLM 的提示…
Your task is to extract the content of the page. You will be given a page and a goal and you should extract all relevant information around this goal from the page. If the goal is vague, summarize the page. Respond in json format. Extraction goal: extract the specific pricing details for DeepSeek-V3 from the search results, Page:
点击一个条目,用户的输入和输出会显示出来,在这种情况下是网络浏览 AI 代理。助手的响应则是这里的 LLM。
None
Browser Use 项目是一种创新的方法,通过全面的自动化和测试框架来理解和优化网页浏览器交互。
通过为构建者提供强大的跨浏览器测试和交互模拟工具包,该项目旨在简化在不同浏览器环境中进行网页应用测试的复杂性。
将 AI 代理直接连接到网页界面,使得能够进行复杂的自动化交互,这可能会彻底改变人工智能如何导航和理解数字环境。
在AI代理和基于网络的信息之间,使智能代理能够执行复杂的网络任务、收集数据并与在线平台互动。
tags: #ai #人工智能 #机器学习 #大语言模型 #ai-agent
领取专属 10元无门槛券
私享最新 技术干货