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",
input_types=["Tool", "BaseTool", "StructuredTool"],
is_list=True,
required=True,
required=False,
info="These are the tools that the agent can use to help with tasks.",
),
*LCAgentComponent._base_inputs,

View file

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