langchain
langchain copied to clipboard
TrajectoryEvalChain import error - cannot import name 'ChainManagerMixin' from 'langchain.callbacks.base
I am trying to follow this guide on evaluation of agents (https://python.langchain.com/en/latest/use_cases/evaluation/generic_agent_evaluation.html), but I'm seeing the following error:
ImportError: cannot import name 'ChainManagerMixin' from 'langchain.callbacks.base'
I am using langchain==0.0.154 with Python 3.8.16
Code I executed:
from langchain.evaluation.agents import TrajectoryEvalChain
Trace:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
Cell In[18], line 1
----> 1 from langchain.evaluation.agents import TrajectoryEvalChain
3 # # Define chain
4 # eval_chain = TrajectoryEvalChain.from_llm(
5 # llm=ChatOpenAI(temperature=0, model_name="gpt-4"), # Note: This must be a ChatOpenAI model
6 # agent_tools=agent.tools,
7 # return_reasoning=True,
8 # )
File [~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/evaluation/agents/__init__.py:2](https://file+.vscode-resource.vscode-cdn.net/home/taf/Dmyzer/search_engine/Prototypes/recall/naswellbot/~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/evaluation/agents/__init__.py:2)
1 """Chains for evaluating ReAct style agents."""
----> 2 from langchain.evaluation.agents.trajectory_eval_chain import TrajectoryEvalChain
4 __all__ = ["TrajectoryEvalChain"]
File [~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/evaluation/agents/trajectory_eval_chain.py:4](https://file+.vscode-resource.vscode-cdn.net/home/taf/Dmyzer/search_engine/Prototypes/recall/naswellbot/~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/evaluation/agents/trajectory_eval_chain.py:4)
1 """A chain for evaluating ReAct style agents."""
2 from typing import Any, Dict, List, NamedTuple, Optional, Sequence, Tuple, Union
----> 4 from langchain.callbacks.manager import CallbackManagerForChainRun
5 from langchain.chains.base import Chain
6 from langchain.chains.llm import LLMChain
File [~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/callbacks/manager.py:12](https://file+.vscode-resource.vscode-cdn.net/home/taf/Dmyzer/search_engine/Prototypes/recall/naswellbot/~/anaconda3/envs/langchainxhaystack/lib/python3.8/site-packages/langchain/callbacks/manager.py:12)
9 from typing import Any, Dict, Generator, List, Optional, Type, TypeVar, Union
10 from uuid import UUID, uuid4
---> 12 from langchain.callbacks.base import (
13 BaseCallbackHandler,
14 BaseCallbackManager,
15 ChainManagerMixin,
16 LLMManagerMixin,
17 RunManagerMixin,
18 ToolManagerMixin,
19 )
20 from langchain.callbacks.openai_info import OpenAICallbackHandler
21 from langchain.callbacks.stdout import StdOutCallbackHandler
ImportError: cannot import name 'ChainManagerMixin' from 'langchain.callbacks.base'
Any advice on what steps to take to resolve this would be appreciated.
I've also faced the same issue, just upgraded the openai module and it got worked
ImportError: cannot import name 'ChainManagerMixin' from 'langchain.callbacks.base' (/root/miniconda3/lib/python3.8/site-packages/langchain/callbacks/base.py)
langchain=0.0.174 I encountered the same problem,and the upgrade did not resolve it.How can i solve it?
This may be specific to me and or using Jupyter Notebooks with VScode. I was using Jupyter Notebooks in VSCode and forgot to restart the kernel. After restarting the Kernel I no longer received this error.
Python 3.11 langchain 0.0.181
@fxb392 Updating to a newer version of langchain (0.0.179) sorted the issue for me.
@NasonZ Thank you for your reminder!!!
from langchain.tools.shell.tool import ShellTool
shell_tool = ShellTool()
got the same issue!