Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Facing the issue related to AgentExecutor #6

Open
SasidharRegula opened this issue Oct 26, 2024 · 0 comments
Open

Facing the issue related to AgentExecutor #6

SasidharRegula opened this issue Oct 26, 2024 · 0 comments

Comments

@SasidharRegula
Copy link

{
"name": "AttributeError",
"message": "'function' object has no attribute 'invoke'",
"stack": "---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
Cell In[69], line 1
----> 1 result=agent_executor.invoke({"input": "What information does the PDF contain about Constitution of India"})
2 print(result)

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\chains\base.py:170, in Chain.invoke(self, input, config, **kwargs)
168 except BaseException as e:
169 run_manager.on_chain_error(e)
--> 170 raise e
171 run_manager.on_chain_end(outputs)
173 if include_run_info:

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\chains\base.py:160, in Chain.invoke(self, input, config, **kwargs)
157 try:
158 self._validate_inputs(inputs)
159 outputs = (
--> 160 self._call(inputs, run_manager=run_manager)
161 if new_arg_supported
162 else self._call(inputs)
163 )
165 final_outputs: Dict[str, Any] = self.prep_outputs(
166 inputs, outputs, return_only_outputs
167 )
168 except BaseException as e:

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\agents\agent.py:1629, in AgentExecutor._call(self, inputs, run_manager)
1627 # We now enter the agent loop (until it returns something).
1628 while self._should_continue(iterations, time_elapsed):
-> 1629 next_step_output = self._take_next_step(
1630 name_to_tool_map,
1631 color_mapping,
1632 inputs,
1633 intermediate_steps,
1634 run_manager=run_manager,
1635 )
1636 if isinstance(next_step_output, AgentFinish):
1637 return self._return(
1638 next_step_output, intermediate_steps, run_manager=run_manager
1639 )

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\agents\agent.py:1335, in AgentExecutor._take_next_step(self, name_to_tool_map, color_mapping, inputs, intermediate_steps, run_manager)
1326 def _take_next_step(
1327 self,
1328 name_to_tool_map: Dict[str, BaseTool],
(...)
1332 run_manager: Optional[CallbackManagerForChainRun] = None,
1333 ) -> Union[AgentFinish, List[Tuple[AgentAction, str]]]:
1334 return self._consume_next_step(
-> 1335 [
1336 a
1337 for a in self._iter_next_step(
1338 name_to_tool_map,
1339 color_mapping,
1340 inputs,
1341 intermediate_steps,
1342 run_manager,
1343 )
1344 ]
1345 )

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\agents\agent.py:1335, in (.0)
1326 def _take_next_step(
1327 self,
1328 name_to_tool_map: Dict[str, BaseTool],
(...)
1332 run_manager: Optional[CallbackManagerForChainRun] = None,
1333 ) -> Union[AgentFinish, List[Tuple[AgentAction, str]]]:
1334 return self._consume_next_step(
-> 1335 [
1336 a
1337 for a in self._iter_next_step(
1338 name_to_tool_map,
1339 color_mapping,
1340 inputs,
1341 intermediate_steps,
1342 run_manager,
1343 )
1344 ]
1345 )

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\agents\agent.py:1420, in AgentExecutor._iter_next_step(self, name_to_tool_map, color_mapping, inputs, intermediate_steps, run_manager)
1418 yield agent_action
1419 for agent_action in actions:
-> 1420 yield self._perform_agent_action(
1421 name_to_tool_map, color_mapping, agent_action, run_manager
1422 )

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain\agents\agent.py:1442, in AgentExecutor._perform_agent_action(self, name_to_tool_map, color_mapping, agent_action, run_manager)
1440 tool_run_kwargs["llm_prefix"] = ""
1441 # We then call the tool on the tool input to get an observation
-> 1442 observation = tool.run(
1443 agent_action.tool_input,
1444 verbose=self.verbose,
1445 color=color,
1446 callbacks=run_manager.get_child() if run_manager else None,
1447 **tool_run_kwargs,
1448 )
1449 else:
1450 tool_run_kwargs = self._action_agent.tool_run_logging_kwargs()

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain_core\tools\base.py:689, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, tags, metadata, run_name, run_id, config, tool_call_id, **kwargs)
687 if error_to_raise:
688 run_manager.on_tool_error(error_to_raise)
--> 689 raise error_to_raise
690 output = _format_output(content, artifact, tool_call_id, self.name, status)
691 run_manager.on_tool_end(output, color=color, name=self.name, **kwargs)

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain_core\tools\base.py:657, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, tags, metadata, run_name, run_id, config, tool_call_id, **kwargs)
655 if config_param := _get_runnable_config_param(self._run):
656 tool_kwargs[config_param] = config
--> 657 response = context.run(self._run, *tool_args, **tool_kwargs)
658 if self.response_format == "content_and_artifact":
659 if not isinstance(response, tuple) or len(response) != 2:

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain_core\tools\simple.py:92, in Tool._run(self, config, run_manager, *args, **kwargs)
90 if config_param := _get_runnable_config_param(self.func):
91 kwargs[config_param] = config
---> 92 return self.func(*args, **kwargs)
93 msg = "Tool does not support sync invocation."
94 raise NotImplementedError(msg)

File c:\Users\sasidhar.regula\Downloads\langchain\.conda\lib\site-packages\langchain_core\tools\retriever.py:32, in _get_relevant_documents(query, retriever, document_prompt, document_separator, callbacks)
25 def _get_relevant_documents(
26 query: str,
27 retriever: BaseRetriever,
(...)
30 callbacks: Callbacks = None,
31 ) -> str:
---> 32 docs = retriever.invoke(query, config={"callbacks": callbacks})
33 return document_separator.join(
34 format_document(doc, document_prompt) for doc in docs
35 )

AttributeError: 'function' object has no attribute 'invoke'"
}
getting this as issue in my code Can you please help me resolve this issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant