fix: tools as requried=False in Agents (#4525)

Update agent.py

tools as not required by default.
This commit is contained in:
Edwin Jose 2024-11-12 17:20:33 -05:00 • committed by GitHub
commit aca2b4be73
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 5 additions and 8 deletions

View file

@ -183,7 +183,7 @@ class LCToolsAgentComponent(LCAgentComponent):
display_name="Tools", display_name="Tools",
input_types=["Tool", "BaseTool", "StructuredTool"], input_types=["Tool", "BaseTool", "StructuredTool"],
is_list=True, is_list=True,
required=True, required=False,
info="These are the tools that the agent can use to help with tasks.", info="These are the tools that the agent can use to help with tasks.",
), ),
*LCAgentComponent._base_inputs, *LCAgentComponent._base_inputs,

View file

@ -1,7 +1,7 @@
import pytest import pytest
from langflow.components.agents import AgentComponent
from langflow.components.crewai import CrewAIAgentComponent, SequentialTaskComponent from langflow.components.crewai import CrewAIAgentComponent, SequentialTaskComponent
from langflow.components.inputs import ChatInput from langflow.components.inputs import ChatInput
from langflow.components.langchain_utilities import ToolCallingAgentComponent
from langflow.components.models import OpenAIModelComponent from langflow.components.models import OpenAIModelComponent
from langflow.components.outputs import ChatOutput from langflow.components.outputs import ChatOutput
from langflow.template import Output from langflow.template import Output
@ -43,16 +43,13 @@ def test_set_required_inputs_various_components():
chatinput = ChatInput() chatinput = ChatInput()
chatoutput = ChatOutput() chatoutput = ChatOutput()
task = SequentialTaskComponent() task = SequentialTaskComponent()
tool_calling_agent = ToolCallingAgentComponent() agent = AgentComponent()
openai_component = OpenAIModelComponent() openai_component = OpenAIModelComponent()
assert all(_output_required_inputs_are_in_inputs(output, chatinput._inputs) for output in chatinput.outputs) assert all(_output_required_inputs_are_in_inputs(output, chatinput._inputs) for output in chatinput.outputs)
assert all(_output_required_inputs_are_in_inputs(output, chatoutput._inputs) for output in chatoutput.outputs) assert all(_output_required_inputs_are_in_inputs(output, chatoutput._inputs) for output in chatoutput.outputs)
assert all(_output_required_inputs_are_in_inputs(output, task._inputs) for output in task.outputs) assert all(_output_required_inputs_are_in_inputs(output, task._inputs) for output in task.outputs)
assert all( assert all(_output_required_inputs_are_in_inputs(output, agent._inputs) for output in agent.outputs)
_output_required_inputs_are_in_inputs(output, tool_calling_agent._inputs)
for output in tool_calling_agent.outputs
)
assert all( assert all(
_output_required_inputs_are_in_inputs(output, openai_component._inputs) for output in openai_component.outputs _output_required_inputs_are_in_inputs(output, openai_component._inputs) for output in openai_component.outputs
) )
@ -60,4 +57,4 @@ def test_set_required_inputs_various_components():
assert _assert_all_outputs_have_different_required_inputs(chatinput.outputs) assert _assert_all_outputs_have_different_required_inputs(chatinput.outputs)
assert _assert_all_outputs_have_different_required_inputs(chatoutput.outputs) assert _assert_all_outputs_have_different_required_inputs(chatoutput.outputs)
assert _assert_all_outputs_have_different_required_inputs(task.outputs) assert _assert_all_outputs_have_different_required_inputs(task.outputs)
assert _assert_all_outputs_have_different_required_inputs(tool_calling_agent.outputs) assert _assert_all_outputs_have_different_required_inputs(agent.outputs)