使用不同 LangChain 聊天模型与 Browser Use 的指南

概述

Browser Use 支持多种 LangChain 聊天模型。以下是配置和使用最流行模型的方法。完整的模型列表请参阅 LangChain 文档

模型推荐

我们尚未对所有模型进行性能测试。目前,使用 GPT-4o 在 WebVoyager 数据集 上取得了 89% 的准确度。DeepSeek-V3 比 GPT-4o 便宜 30 倍。Gemini-2.0-exp 在社区中也逐渐受到欢迎,因为它目前是免费的。我们还支持本地模型,如 Qwen 2.5,但要注意,小模型通常会返回错误的输出结构,从而导致解析错误。我们相信本地模型将在今年大幅提升。

所有模型都需要相应的 API 密钥。在运行代理之前,请确保在您的环境变量中设置了这些密钥。

支持的模型

所有支持工具调用的 LangChain 聊天模型都可用。我们将列出一些最受欢迎的模型。

OpenAI

OpenAI 的 GPT-4o 模型是推荐的最佳性能选择。

  1. from langchain_openai import ChatOpenAI
  2. from browser_use import Agent
  3. # 初始化模型
  4. llm = ChatOpenAI(
  5. model="gpt-4o",
  6. temperature=0.0,
  7. )
  8. # 创建代理并使用模型
  9. agent = Agent(
  10. task="Your task here",
  11. llm=llm
  12. )

所需环境变量:

.env

  1. OPENAI_API_KEY=

Anthropic

  1. from langchain_anthropic import ChatAnthropic
  2. from browser_use import Agent
  3. # 初始化模型
  4. llm = ChatAnthropic(
  5. model_name="claude-3-5-sonnet-20240620",
  6. temperature=0.0,
  7. timeout=100, # 对复杂任务增加超时
  8. )
  9. # 创建代理并使用模型
  10. agent = Agent(
  11. task="Your task here",
  12. llm=llm
  13. )

添加所需环境变量:

.env

  1. ANTHROPIC_API_KEY=

Azure OpenAI

  1. from langchain_openai import AzureChatOpenAI
  2. from browser_use import Agent
  3. from pydantic import SecretStr
  4. import os
  5. # 初始化模型
  6. llm = AzureChatOpenAI(
  7. model="gpt-4o",
  8. api_version='2024-10-21',
  9. azure_endpoint=os.getenv('AZURE_OPENAI_ENDPOINT', ''),
  10. api_key=SecretStr(os.getenv('AZURE_OPENAI_KEY', '')),
  11. )
  12. # 创建代理并使用模型
  13. agent = Agent(
  14. task="Your task here",
  15. llm=llm
  16. )

所需环境变量:

.env

  1. AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/
  2. AZURE_OPENAI_KEY=

Gemini

  1. from langchain_google_genai import ChatGoogleGenerativeAI
  2. from browser_use import Agent
  3. from pydantic import SecretStr
  4. import os
  5. from dotenv import load_dotenv
  6. load_dotenv()
  7. api_key = os.getenv("GEMINI_API_KEY")
  8. # 初始化模型
  9. llm = ChatGoogleGenerativeAI(model='gemini-2.0-flash-exp', api_key=SecretStr(os.getenv('GEMINI_API_KEY')))
  10. # 创建代理并使用模型
  11. agent = Agent(
  12. task="Your task here",
  13. llm=llm
  14. )

所需环境变量:

.env

  1. GEMINI_API_KEY=

DeepSeek-V3

DeepSeek-V3 因其低廉的价格、无速率限制、开源特性和良好的性能受到社区的喜爱。示例可在 这里 查阅。

  1. from langchain_openai import ChatOpenAI
  2. from browser_use import Agent
  3. from pydantic import SecretStr
  4. # 初始化模型
  5. llm=ChatOpenAI(base_url='https://api.deepseek.com/v1', model='deepseek-chat', api_key=SecretStr(api_key))
  6. # 创建代理并使用模型
  7. agent = Agent(
  8. task="Your task here",
  9. llm=llm,
  10. use_vision=False
  11. )

所需环境变量:

.env

  1. DEEPSEEK_API_KEY=

DeepSeek-R1

我们支持 DeepSeek-R1。尽管它尚未完全测试,但会逐步增加更多功能,比如推理内容的输出。示例可在 这里 查阅。它不支持视觉功能。该模型是开源的,您也可以通过 Ollama 使用,但我们尚未对其进行测试。

  1. from langchain_openai import ChatOpenAI
  2. from browser_use import Agent
  3. from pydantic import SecretStr
  4. # 初始化模型
  5. llm=ChatOpenAI(base_url='https://api.deepseek.com/v1', model='deepseek-reasoner', api_key=SecretStr(api_key))
  6. # 创建代理并使用模型
  7. agent = Agent(
  8. task="Your task here",
  9. llm=llm,
  10. use_vision=False
  11. )

所需环境变量:

.env

  1. DEEPSEEK_API_KEY=

Ollama

许多用户请求本地模型。现在您可以使用它们。

  1. 这里 下载 Ollama
  2. 运行 ollama pull model_name,选择一个支持工具调用的模型,从 这里 选择
  3. 运行 ollama start
  1. from langchain_ollama import ChatOllama
  2. from browser_use import Agent
  3. from pydantic import SecretStr
  4. # 初始化模型
  5. llm=ChatOllama(model="qwen2.5", num_ctx=32000)
  6. # 创建代理并使用模型
  7. agent = Agent(
  8. task="Your task here",
  9. llm=llm
  10. )

所需环境变量:无

即将推出

我们正在努力支持以下内容:

  • Groq
  • Github
  • 微调模型