[BUG] Error when integrating with BrowserUse tool latest version 0.1.40
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
- Try creating crewAI project with following dependencies:
dependencies = [
"browser-use>=0.1.40",
"crewai[tools]>=0.114.0,<1.0.0"
]
- 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 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
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.
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.
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.
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.
This issue was closed because it has been stalled for 5 days with no activity.