[eval,fix]: metrics get carried across eval instances (#3072)

* fix: make max_budget_per_task optional in `run_agent_controller`

* update arg for each run infer

* fix: metrics logging carried along; reset llm metric with the agent;

---------

Co-authored-by: Graham Neubig <neubig@gmail.com>
This commit is contained in:
Xingyao Wang
2024-07-23 11:30:28 +08:00
committed by GitHub
parent da17665cab
commit 41a8bb3cf1
3 changed files with 8 additions and 2 deletions

View File

@@ -57,6 +57,9 @@ class Agent(ABC):
# TODO clear history
self._complete = False
if self.llm:
self.llm.reset()
@property
def name(self):
return self.__class__.__name__

View File

@@ -97,9 +97,9 @@ class State:
resume_state: AgentState | None = None
traffic_control_state: TrafficControlState = TrafficControlState.NORMAL
# global metrics for the current task
metrics: Metrics = Metrics()
metrics: Metrics = field(default_factory=Metrics)
# local metrics for the current subtask
local_metrics: Metrics = Metrics()
local_metrics: Metrics = field(default_factory=Metrics)
# root agent has level 0, and every delegate increases the level by one
delegate_level: int = 0
# start_id and end_id track the range of events in history

View File

@@ -252,3 +252,6 @@ class LLM:
def __repr__(self):
return str(self)
def reset(self):
self.metrics = Metrics()