invoke_agent span을 내보내며 해당 turn의
트레이스 루트 역할을 합니다. 즉, 항상 ROOT_CONTEXT 아래에서 시작되므로
다른 OTel로 계측된 라이브러리의 부모를 실수로 상속하지 않습니다.
weave.startTurn()(또는 session.startTurn())으로 생성되며
end()로 종료됩니다. 비동기 chain에서는 한 번에 하나의 Turn만 활성 상태일 수 있습니다.
하위 항목(LLM, Tool, SubAgent)은 startLLM, startTool,
startSubagent 방법을 통해 연결됩니다.
예시
목차
속성
메서드
속성
agentName
Readonly agentName: string
정의 위치
모델
Readonly 모델: string
정의 위치
메서드
addEvent
name, attributes?, startTime?): this
이름이 지정된 event를 Turn span에 추가합니다. 컨텍스트 압축, 도구 루프 감지, 가드레일 트리거처럼
span이 아닌 시점을 표시할 때 유용합니다.
end() 호출 후에는 아무 동작도 하지 않습니다. OTel Span.addEvent와 동일하게 동작합니다.
매개변수
| 이름 | 유형 |
|---|---|
name | string |
attributes? | Attributes |
startTime? | TimeInput |
반환값
this
예시
정의 위치
end
opts?): void
Turn span을 종료합니다. 여러 번 호출해도 동일하게 동작합니다. 실패로 표시하려면 error를 전달하세요.
매개변수
| 이름 | 유형 |
|---|---|
opts? | Object |
opts.error? | Error |
반환값
void
정의 위치
setAttribute
key, value): this
Turn span에 단일 속성을 설정합니다. 실행 중인 누적 합계(예: 누적 비용, token 사용량)나
turn 중간에 알게 되는 기타 메타데이터를 기록할 때 유용합니다.
end() 이후에는 아무 작업도 수행하지 않습니다. OTel Span.setAttribute와 동일하게 동작합니다.
매개변수
| 이름 | 유형 |
|---|---|
key | string |
value | AttributeValue |
반환값
this
예시
정의 위치
startLLM
opts): LLM
이 Turn 하위에 LLM span을 시작합니다.
매개변수
| 이름 | 유형 |
|---|---|
opts | LLMInit |
반환값
LLM
정의 위치
startSubagent
opts): SubAgent
이 Turn 아래에 하위 SubAgent span을 시작합니다.
매개변수
| 이름 | 유형 |
|---|---|
opts | SubAgentInit |
반환값
SubAgent
정의 위치
startTool
opts): Tool
이 Turn 아래에서 하위 Tool span을 시작합니다.
매개변수
| 이름 | 유형 |
|---|---|
opts | ToolInit |
반환값
Tool
정의 위치
create
opts?): Turn
매개변수
| 이름 | 유형 |
|---|---|
opts | TurnInit & { conversationId?: string } |
반환값
Turn