에이전트 추적하기
에이전트 추적하기 (Tracking Agents)
@agent 데코레이터로 에이전트 span을 만들어 특정 에이전트와 작업(operations)을 연결하는 방법을 설명하는 문서예요. 에이전트에 이름을 붙이는 방법과 작업을 에이전트 아래에 중첩하는 방법을 함께 살펴볼게요.
출처: 문서
본문
@agent 데코레이터를 사용해 에이전트 span을 만들어 보세요.
모든 작업은 자동으로 그 작업을 시작한 에이전트와 연결돼요. 에이전트에는 이름이 주어지며, 그 이름이 대시보드에 표시돼요.
이 작업은 그 작업을 시작한 에이전트의 이름으로 라벨링돼요.
아래 예제는 커스텀 이름을 가진 에이전트 클래스를 만들어요:
from agentops.sdk.decorators import agent
@agent(name='ResearchAgent')
class MyAgent:
def __init__(self):
# 에이전트 초기화
pass
# 에이전트 메서드
이름을 지정하지 않으면 기본적으로 클래스 이름을 사용해요:
@agent
class ResearchAgent:
# 이 에이전트의 이름은 "ResearchAgent"가 돼요
pass
에이전트 아래에 작업 중첩하기 (Nesting Operations Under Agents)
에이전트가 수행하는 작업은 @operation 데코레이터로 장식해서 에이전트 아래에 올바르게 중첩되도록 해야 해요:
from agentops.sdk.decorators import agent, operation
@agent
class ResearchAgent:
@operation
def search_web(self, query):
# 검색 구현
return results
@operation
def analyze_data(self, data):
# 분석 구현
return analysis
세션 컨텍스트 (Session Context)
에이전트는 올바른 추적을 위해 세션 컨텍스트 안에서 만들어져야 해요:
from agentops.sdk.decorators import session, agent, operation
@agent
class ResearchAgent:
@operation
def perform_research(self, topic):
# 연구 구현
return results
@session
def research_workflow(topic):
agent = ResearchAgent()
return agent.perform_research(topic)
# 세션 실행
result = research_workflow("quantum computing")