Agent Execution Log#
The execution log is record of many activities that happened during the execution of an agent. It includes:
the start time and the duration of each activity
the list of messages they published into the context
the budget consumption used
The code below creates and executes and simple agent and illustrate how to export its execution log into JSON.
from council.agents import Agent
from council.contexts import AgentContext
from council.chains import Chain
from council.controllers import BasicController
from council.evaluators import BasicEvaluator
from council.filters import BasicFilter
from council.mocks import MockSkill
chains = [Chain("a chain", "do something", [MockSkill("a skill")])]
agent = Agent(BasicController(chains), BasicEvaluator(), BasicFilter(), name="an agent")
context = AgentContext.from_user_message("run")
agent.execute(context)
print(context.execution_log_to_json())
Result of the agent execution:
{
"entries": [
{
"source": "agent",
"start": "2023-09-13T22:09:52.358559+00:00",
"duration": 0.000377,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]",
"start": "2023-09-13T22:09:52.358678+00:00",
"duration": 0.000253,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]/controller",
"start": "2023-09-13T22:09:52.358686+00:00",
"duration": 7e-06,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]/execution(a chain)",
"start": "2023-09-13T22:09:52.358701+00:00",
"duration": 0.000199,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]/execution(a chain)/chain(a chain)",
"start": "2023-09-13T22:09:52.358710+00:00",
"duration": 0.000187,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]/execution(a chain)/chain(a chain)/runner",
"start": "2023-09-13T22:09:52.358731+00:00",
"duration": 0.000157,
"consumptions": [],
"messages": [
{
"is_error": false,
"kind": "SKILL",
"message": "",
"source": "a skill"
}
]
},
{
"source": "agent/iterations[0]/evaluator",
"start": "2023-09-13T22:09:52.358903+00:00",
"duration": 1.5e-05,
"consumptions": [],
"messages": []
},
{
"source": "agent/iterations[0]/filter",
"start": "2023-09-13T22:09:52.358921+00:00",
"duration": 5e-06,
"consumptions": [],
"messages": []
}
]
}