mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-08 23:58:34 +00:00
Fixed core invoke loop logic and relevant tests (#1865)
* Fixed core invoke loop logic and relevant tests * Fix failing tests * Clean up final print statements * Additional clean up for PR review
This commit is contained in:
committed by
GitHub
parent
b3504e768c
commit
2131b94ddb
@@ -565,7 +565,7 @@ def test_agent_moved_on_after_max_iterations():
|
||||
task=task,
|
||||
tools=[get_final_answer],
|
||||
)
|
||||
assert output == "The final answer is 42."
|
||||
assert output == "42"
|
||||
|
||||
|
||||
@pytest.mark.vcr(filter_headers=["authorization"])
|
||||
@@ -574,7 +574,6 @@ def test_agent_respect_the_max_rpm_set(capsys):
|
||||
def get_final_answer() -> float:
|
||||
"""Get the final answer but don't give it yet, just re-use this
|
||||
tool non-stop."""
|
||||
return 42
|
||||
|
||||
agent = Agent(
|
||||
role="test role",
|
||||
@@ -641,15 +640,14 @@ def test_agent_respect_the_max_rpm_set_over_crew_rpm(capsys):
|
||||
|
||||
|
||||
@pytest.mark.vcr(filter_headers=["authorization"])
|
||||
def test_agent_without_max_rpm_respet_crew_rpm(capsys):
|
||||
def test_agent_without_max_rpm_respects_crew_rpm(capsys):
|
||||
from unittest.mock import patch
|
||||
|
||||
from crewai.tools import tool
|
||||
|
||||
@tool
|
||||
def get_final_answer() -> float:
|
||||
"""Get the final answer but don't give it yet, just re-use this
|
||||
tool non-stop."""
|
||||
"""Get the final answer but don't give it yet, just re-use this tool non-stop."""
|
||||
return 42
|
||||
|
||||
agent1 = Agent(
|
||||
@@ -666,23 +664,30 @@ def test_agent_without_max_rpm_respet_crew_rpm(capsys):
|
||||
role="test role2",
|
||||
goal="test goal2",
|
||||
backstory="test backstory2",
|
||||
max_iter=1,
|
||||
max_iter=5,
|
||||
verbose=True,
|
||||
allow_delegation=False,
|
||||
)
|
||||
|
||||
tasks = [
|
||||
Task(
|
||||
description="Just say hi.", agent=agent1, expected_output="Your greeting."
|
||||
description="Just say hi.",
|
||||
agent=agent1,
|
||||
expected_output="Your greeting.",
|
||||
),
|
||||
Task(
|
||||
description="NEVER give a Final Answer, unless you are told otherwise, instead keep using the `get_final_answer` tool non-stop, until you must give you best final answer",
|
||||
description=(
|
||||
"NEVER give a Final Answer, unless you are told otherwise, "
|
||||
"instead keep using the `get_final_answer` tool non-stop, "
|
||||
"until you must give your best final answer"
|
||||
),
|
||||
expected_output="The final answer",
|
||||
tools=[get_final_answer],
|
||||
agent=agent2,
|
||||
),
|
||||
]
|
||||
|
||||
# Set crew's max_rpm to 1 to trigger RPM limit
|
||||
crew = Crew(agents=[agent1, agent2], tasks=tasks, max_rpm=1, verbose=True)
|
||||
|
||||
with patch.object(RPMController, "_wait_for_next_minute") as moveon:
|
||||
|
||||
Reference in New Issue
Block a user