crewAI icon indicating copy to clipboard operation
crewAI copied to clipboard

[BUG] Error when integrating with BrowserUse tool latest version 0.1.40

Open anupmanekar opened this issue 8 months ago • 4 comments

Description

I am trying to integrate latest versions of BrowserUse agent with CrewAI but there is incompatibility in langchain-openai versions and therefore have to revert back to very old version of BrowserUse.

Steps to Reproduce

  1. Try creating crewAI project with following dependencies:
dependencies = [
    "browser-use>=0.1.40",
    "crewai[tools]>=0.114.0,<1.0.0"
]
  1. It gives error
 we can conclude that browser-use>=0.1.40 and crewai[tools]==0.114.0 are incompatible.
      And because only crewai[tools]<=0.114.0 is available, we can conclude that browser-use>=0.1.40 and crewai[tools]>=0.114.0 are incompatible.
      And because your project depends on browser-use>=0.1.40 and crewai[tools]>=0.114.0, we can conclude that your project's requirements are unsatisfiable.

I have detailed error log in evidence

Expected behavior

Should be able to integrate BrowserUse's latest or at least versions which are only 2-3 versions old. Going back 17 versions just to ensure compatibility is not feasible

Screenshots/Code snippets

Using CPython 3.13.2 interpreter at: /usr/local/bin/python3
Removed virtual environment at: .venv
Creating virtual environment at: .venv
  × No solution found when resolving dependencies:
  ╰─▶ Because browser-use==0.1.40 depends on langchain-openai==0.3.1 and only the following versions of browser-use are available:
          browser-use<=0.1.40
          browser-use==0.1.41
      we can conclude that browser-use>=0.1.40,<0.1.41 depends on langchain-openai==0.3.1.
      And because browser-use==0.1.41 depends on langchain-openai==0.3.11, we can conclude that browser-use>=0.1.40 depends on one of:
          langchain-openai==0.3.1
          langchain-openai==0.3.11
       (1)

      Because embedchain>=0.1.123 depends on langchain-openai>=0.2.1,<0.3.0 and langchain-openai>=0.1.7,<0.2.0, we can conclude that embedchain>=0.1.114 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because only the following versions of embedchain are available:
          embedchain<=0.1.114
          embedchain==0.1.115
          embedchain==0.1.116
          embedchain==0.1.117
          embedchain==0.1.118
          embedchain==0.1.119
          embedchain==0.1.120
          embedchain==0.1.121
          embedchain==0.1.122
          embedchain==0.1.123
          embedchain==0.1.124
          embedchain==0.1.125
          embedchain==0.1.126
          embedchain==0.1.127
          embedchain==0.1.128
      and crewai-tools==0.40.1 depends on embedchain>=0.1.114, we can conclude that crewai-tools==0.40.1 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because only the following versions of crewai-tools are available:
          crewai-tools<=0.40.1
          crewai-tools>0.41.dev0
      and crewai[tools]==0.114.0 depends on crewai-tools>=0.40.1,<0.41.dev0, we can conclude that crewai[tools]==0.114.0 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because we know from (1) that browser-use>=0.1.40 depends on one of:
          langchain-openai==0.3.1
          langchain-openai==0.3.11
      we can conclude that browser-use>=0.1.40 and crewai[tools]==0.114.0 are incompatible.
      And because only crewai[tools]<=0.114.0 is available, we can conclude that browser-use>=0.1.40 and crewai[tools]>=0.114.0 are incompatible.
      And because your project depends on browser-use>=0.1.40 and crewai[tools]>=0.114.0, we can conclude that your project's requirements are unsatisfiable.

      hint: `crewai-tools` was requested with a pre-release marker (e.g., crewai-tools>0.40.1,<0.41.dev0), but pre-releases weren't enabled (try: `--prerelease=allow`)

Operating System

macOS Sonoma

Python Version

3.11

crewAI Version

0.114

crewAI Tools Version

0.40.1

Virtual Environment

Venv

Evidence

Using CPython 3.13.2 interpreter at: /usr/local/bin/python3
Removed virtual environment at: .venv
Creating virtual environment at: .venv
  × No solution found when resolving dependencies:
  ╰─▶ Because browser-use==0.1.40 depends on langchain-openai==0.3.1 and only the following versions of browser-use are available:
          browser-use<=0.1.40
          browser-use==0.1.41
      we can conclude that browser-use>=0.1.40,<0.1.41 depends on langchain-openai==0.3.1.
      And because browser-use==0.1.41 depends on langchain-openai==0.3.11, we can conclude that browser-use>=0.1.40 depends on one of:
          langchain-openai==0.3.1
          langchain-openai==0.3.11
       (1)

      Because embedchain>=0.1.123 depends on langchain-openai>=0.2.1,<0.3.0 and langchain-openai>=0.1.7,<0.2.0, we can conclude that embedchain>=0.1.114 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because only the following versions of embedchain are available:
          embedchain<=0.1.114
          embedchain==0.1.115
          embedchain==0.1.116
          embedchain==0.1.117
          embedchain==0.1.118
          embedchain==0.1.119
          embedchain==0.1.120
          embedchain==0.1.121
          embedchain==0.1.122
          embedchain==0.1.123
          embedchain==0.1.124
          embedchain==0.1.125
          embedchain==0.1.126
          embedchain==0.1.127
          embedchain==0.1.128
      and crewai-tools==0.40.1 depends on embedchain>=0.1.114, we can conclude that crewai-tools==0.40.1 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because only the following versions of crewai-tools are available:
          crewai-tools<=0.40.1
          crewai-tools>0.41.dev0
      and crewai[tools]==0.114.0 depends on crewai-tools>=0.40.1,<0.41.dev0, we can conclude that crewai[tools]==0.114.0 depends on one of:
          langchain-openai>=0.1.7,<0.2.0
          langchain-openai>=0.2.1,<0.3.0

      And because we know from (1) that browser-use>=0.1.40 depends on one of:
          langchain-openai==0.3.1
          langchain-openai==0.3.11
      we can conclude that browser-use>=0.1.40 and crewai[tools]==0.114.0 are incompatible.
      And because only crewai[tools]<=0.114.0 is available, we can conclude that browser-use>=0.1.40 and crewai[tools]>=0.114.0 are incompatible.
      And because your project depends on browser-use>=0.1.40 and crewai[tools]>=0.114.0, we can conclude that your project's requirements are unsatisfiable.

      hint: `crewai-tools` was requested with a pre-release marker (e.g., crewai-tools>0.40.1,<0.41.dev0), but pre-releases weren't enabled (try: `--prerelease=allow`)

Possible Solution

Upgrading langchain-openai version may help

Additional context

None

anupmanekar avatar Apr 28 '25 02:04 anupmanekar

@anupmanekar I think this is somewhat dependent on the embedchain, I tried to find a version where everything will get resolved, but couldn't find any.

Browser use has a dependency on langchain-openai == 0.3.11 https://github.com/browser-use/browser-use/blob/f119d38daf5322ec4c760f8d3d247ad5e880b9f7/pyproject.toml#L23C6-L23C32

and embedchain has a restriction on langchain < 0.3.0

I see there is a open issue on embedchain as well: https://github.com/mem0ai/mem0/issues/2568

Currently I feel the way you can resolve this is to downgrade your browser-use version

Vidit-Ostwal avatar Apr 29 '25 16:04 Vidit-Ostwal

I think you might be able to resolve the conflict using version browser-use==0.1.23. It's not the newest version, but it doesn't seem that outdated.

mouramax avatar Apr 29 '25 16:04 mouramax

I think you might be able to resolve the conflict using version browser-use==0.1.23. It's not the newest version, but it doesn't seem that outdated.

Yup I think this might work.

Vidit-Ostwal avatar Apr 29 '25 17:04 Vidit-Ostwal

Hi @Vidit-Ostwal, Yes I am at present using 0.1.23 version but its 4 months old and I need the newer features. Thanks for reference to mem0ai issue. I will followup on that.

anupmanekar avatar Apr 30 '25 23:04 anupmanekar

This issue is stale because it has been open for 30 days with no activity. Remove stale label or comment or this will be closed in 5 days.

github-actions[bot] avatar May 31 '25 12:05 github-actions[bot]

This issue was closed because it has been stalled for 5 days with no activity.

github-actions[bot] avatar Jun 05 '25 12:06 github-actions[bot]