track tool usage

This commit is contained in:
Braelyn Boynton
2024-03-20 18:25:41 -07:00
parent f6ee12dbc5
commit f67d0a26f1
2 changed files with 8 additions and 5 deletions

View File

@@ -25,10 +25,10 @@ from crewai.agents import CacheHandler, CrewAgentExecutor, CrewAgentParser, Tool
from crewai.utilities import I18N, Logger, Prompts, RPMController
from crewai.utilities.token_counter_callback import TokenCalcHandler, TokenProcess
from agentops.agent import track_agent
from agentops import LangchainCallbackHandler
from agentops.langchain_callback_handler import LangchainCallbackHandler
@track_agent(name=None)
@track_agent()
class Agent(BaseModel):
"""Represents an agent in a system.
@@ -124,7 +124,7 @@ class Agent(BaseModel):
def __init__(__pydantic_self__, **data):
config = data.pop("config", {})
super().__init__(**config, **data)
__pydantic_self__._agent_ops_agent_name = __pydantic_self__.role
__pydantic_self__.agent_ops_agent_name = __pydantic_self__.role
@field_validator("id", mode="before")
@classmethod

View File

@@ -9,7 +9,7 @@ from crewai.agents.tools_handler import ToolsHandler
from crewai.telemetry import Telemetry
from crewai.tools.tool_calling import InstructorToolCalling, ToolCalling
from crewai.utilities import I18N, Converter, ConverterError, Printer
from agentops import record, ToolEvent
from agentops import ToolEvent, ErrorEvent, record
OPENAI_BIGGER_MODELS = ["gpt-4"]
@@ -79,13 +79,16 @@ class ToolUsage:
self._printer.print(content=f"\n\n{error}\n", color="red")
self.task.increment_tools_errors()
return error
event = ToolEvent(name=calling.tool_name)
record(event)
try:
tool = self._select_tool(calling.tool_name)
record(ToolEvent(name=calling.tool_name))
except Exception as e:
error = getattr(e, "message", str(e))
self.task.increment_tools_errors()
self._printer.print(content=f"\n\n{error}\n", color="red")
record(ErrorEvent(details=error, trigger_event=event))
return error
return f"{self._use(tool_string=tool_string, tool=tool, calling=calling)}"