메인 콘텐츠로 건너뛰기
weave / Turn 에이전트 호출입니다. 일반적으로 단일 사용자 메시지에 응답하는 작업을 감쌉니다. invoke_agent span을 내보내며 해당 turn의 트레이스 루트 역할을 합니다. 즉, 항상 ROOT_CONTEXT 아래에서 시작되므로 다른 OTel로 계측된 라이브러리의 부모를 실수로 상속하지 않습니다. weave.startTurn()(또는 session.startTurn())으로 생성되며 end()로 종료됩니다. 비동기 chain에서는 한 번에 하나의 Turn만 활성 상태일 수 있습니다. 하위 항목(LLM, Tool, SubAgent)은 startLLM, startTool, startSubagent 방법을 통해 연결됩니다. 예시
const turn = weave.startTurn({agentName: 'research-bot', model: MODEL});
try {
  const llm = turn.startLLM({model: MODEL, providerName: 'openai'});
  // ...
  llm.end();
} finally {
  turn.end();
}

목차

속성

메서드

속성

agentName

Readonly agentName: string

정의 위치

genai/turn.ts:60

모델

Readonly 모델: string

정의 위치

genai/turn.ts:61

메서드

addEvent

addEvent(name, attributes?, startTime?): this 이름이 지정된 event를 Turn span에 추가합니다. 컨텍스트 압축, 도구 루프 감지, 가드레일 트리거처럼 span이 아닌 시점을 표시할 때 유용합니다. end() 호출 후에는 아무 동작도 하지 않습니다. OTel Span.addEvent와 동일하게 동작합니다.

매개변수

이름유형
namestring
attributes?Attributes
startTime?TimeInput

반환값

this 예시
turn.addEvent('context_compacted', {removedMessages: 12});

정의 위치

genai/turn.ts:152

end

end(opts?): void Turn span을 종료합니다. 여러 번 호출해도 동일하게 동작합니다. 실패로 표시하려면 error를 전달하세요.

매개변수

이름유형
opts?Object
opts.error?Error

반환값

void

정의 위치

genai/turn.ts:159

setAttribute

setAttribute(key, value): this Turn span에 단일 속성을 설정합니다. 실행 중인 누적 합계(예: 누적 비용, token 사용량)나 turn 중간에 알게 되는 기타 메타데이터를 기록할 때 유용합니다. end() 이후에는 아무 작업도 수행하지 않습니다. OTel Span.setAttribute와 동일하게 동작합니다.

매개변수

이름유형
keystring
valueAttributeValue

반환값

this 예시
turn.setAttribute('gen_ai.usage.input_tokens', totalInputTokens);

정의 위치

genai/turn.ts:138

startLLM

startLLM(opts): LLM 이 Turn 하위에 LLM span을 시작합니다.

매개변수

이름유형
optsLLMInit

반환값

LLM

정의 위치

genai/turn.ts:104

startSubagent

startSubagent(opts): SubAgent 이 Turn 아래에 하위 SubAgent span을 시작합니다.

매개변수

이름유형
optsSubAgentInit

반환값

SubAgent

정의 위치

genai/turn.ts:122

startTool

startTool(opts): Tool 이 Turn 아래에서 하위 Tool span을 시작합니다.

매개변수

이름유형
optsToolInit

반환값

Tool

정의 위치

genai/turn.ts:113

create

create(opts?): Turn

매개변수

이름유형
optsTurnInit & { conversationId?: string }

반환값

Turn

정의 위치

genai/turn.ts:64