from netra import agent, task, SpanWrapper
from langchain_openai import ChatOpenAI
from langchain.agents import create_react_agent, AgentExecutor
from langchain.tools import Tool
model = ChatOpenAI()
@agent()
def run_agent(query: str):
span = SpanWrapper("agent-execution").start()
try:
agent_executor = create_react_agent(
llm=model,
tools=[calculator_tool]
)
result = agent_executor.invoke({"input": query})
span.end()
return result
except Exception as e:
span.set_attribute("error", str(e))
span.end()
raise