chore: Add tool rules example (#1998)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
This commit is contained in:
@@ -253,7 +253,14 @@ class Agent(BaseAgent):
|
||||
|
||||
if agent_state.tool_rules is None:
|
||||
agent_state.tool_rules = []
|
||||
agent_state.tool_rules.append(TerminalToolRule(tool_name="send_message"))
|
||||
# Define the rule to add
|
||||
send_message_terminal_rule = TerminalToolRule(tool_name="send_message")
|
||||
# Check if an equivalent rule is already present
|
||||
if not any(
|
||||
isinstance(rule, TerminalToolRule) and rule.tool_name == send_message_terminal_rule.tool_name for rule in agent_state.tool_rules
|
||||
):
|
||||
agent_state.tool_rules.append(send_message_terminal_rule)
|
||||
|
||||
self.tool_rules_solver = ToolRulesSolver(tool_rules=agent_state.tool_rules)
|
||||
|
||||
# gpt-4, gpt-3.5-turbo, ...
|
||||
@@ -395,7 +402,6 @@ class Agent(BaseAgent):
|
||||
exec(tool.module, env)
|
||||
else:
|
||||
exec(tool.source_code, env)
|
||||
|
||||
self.functions_python[tool.json_schema["name"]] = env[tool.json_schema["name"]]
|
||||
self.functions.append(tool.json_schema)
|
||||
except Exception as e:
|
||||
@@ -787,7 +793,6 @@ class Agent(BaseAgent):
|
||||
|
||||
# Update ToolRulesSolver state with last called function
|
||||
self.tool_rules_solver.update_tool_usage(function_name)
|
||||
|
||||
# Update heartbeat request according to provided tool rules
|
||||
if self.tool_rules_solver.has_children_tools(function_name):
|
||||
heartbeat_request = True
|
||||
|
||||
Reference in New Issue
Block a user