AgentOps 데코레이터 — session·agent·operation·workflow·tool 추적

AgentOps 데코레이터 — session·agent·operation·workflow·tool 추적

AgentOps는 아래 데코레이터들을 제공해요. 각 데코레이터가 생성하는 스팬(span) 들은 계층 구조를 이루며 에이전트 시스템을 정확히 표현합니다.

출처: https://docs.agentops.ai/v2/concepts/decorators

데코레이터 목록

Decorator Purpose Creates
@session Track an entire user interaction SESSION span
@agent Track agent classes and their lifecycle AGENT span
@operation Track discrete operations performed by agents OPERATION span
@workflow Track a sequence of operations WORKFLOW span
@task Track smaller units of work (similar to operations) TASK span
@tool Track tool usage and cost in agent operations TOOL span
@guardrail Track guardrail input and output GUARDRAIL span

생성된 스팬은 계층을 이뤄요.

SESSION
  ├── AGENT
  │     ├── OPERATION or TASK
  │     │     ├── LLM
  │     │     └── TOOL
  │     └── WORKFLOW
  │           └── OPERATION or TASK
  └── AGENT
        └── OPERATION or TASK

주요 데코레이터 사용

@session — 전체 사용자 상호작용을 처음부터 끝까지 추적합니다. @session 함수 호출마다 그 상호작용에 쓰인 모든 에이전트·작업·워크플로를 담는 세션 스팬이 생겨요.

from agentops.sdk.decorators import session
import agentops

agentops.init(api_key="YOUR_API_KEY")

@session
def answer_question(question):
    weather_agent = WeatherAgent()
    result = weather_agent.get_forecast(question)
    return result

@agent — 클래스를 계측해 생명주기와 작업을 추적합니다. 세션 안에서 @agent 데코레이터를 단 클래스가 인스턴스화되면 AGENT 스팬이 자동 생성돼요.

@operation — 에이전트가 수행하는 개별 함수를 추적합니다. 입력(함수 인자), 출력(반환값), 지속 시간, 성공/실패 상태를 담은 OPERATION 스팬을 만듭니다.

from agentops.sdk.decorators import agent, operation
import agentops

agentops.init(api_key="YOUR_API_KEY")

@agent
class MathAgent:
    @operation
    def add(self, a, b):
        return a + b

@workflow — 함께 동작하는 작업들의 시퀀스를 추적합니다. @tool — 에이전트 작업에서 도구 사용과 비용을 추적합니다.

더 알아보기