bedrock-agent-runtime 클라이언트에 대한 Call을 트레이스하므로 파운데이션 모델, 토큰 사용량, 세션 ID, 에이전트의 응답을 포함한 각 invoke_agent 호출을 확인할 수 있습니다.
Weave TypeScript SDK는 현재 Bedrock Agents 인테그레이션을 지원하지 않습니다.
사전 요구 사항
- W&B API 키. 자세한 내용은 API keys를 참조하세요.
- Bedrock Agents에 액세스할 수 있는 계정용으로 구성된 AWS 자격 증명(Identity and access management for Amazon Bedrock 참조).
-
기존 Bedrock 에이전트와 별칭.
agentId및agentAliasId를 기록해 두세요. 다음 AWS CLI 명령을 실행하면 사용자 ID에 연결된 에이전트 목록을 조회할 수 있습니다. 이때<your-region>은 에이전트가 위치한 리전 슬러그로 바꾸세요.
설치
invoke_agent Call 트레이스
bedrock-agent-runtime 클라이언트를 생성한 다음 patch_client에 전달하세요. Weave는 클라이언트 유형을 감지해 invoke_agent 방법을 래핑합니다. 패치한 후에는 평소처럼 클라이언트를 사용하세요.
invoke_agent Call은 Weave UI에 BedrockAgentRuntime.invoke_agent 트레이스로 표시됩니다. 이 트레이스에는 다음이 기록됩니다.
- 에이전트 입력값(
agentId,agentAliasId,sessionId,inputText) - completion 이벤트 스트림에서 추출한 assistant 텍스트
- 에이전트가 사용한 파운데이션 모델(
orchestrationTrace트레이스에서 추출) - 에이전트가 보고하는 경우의 토큰 사용량(
prompt_tokens,completion_tokens,total_tokens)
orchestrationTrace 이벤트에서 추출되며, Bedrock은 invoke_agent를 enableTrace=True로 Call할 때만 이러한 이벤트를 내보냅니다. 이 플래그가 없으면 트레이스는 여전히 입력값과 생성된 응답 텍스트를 캡처하지만, 파운데이션 모델은 bedrock-agent:<agentId>로 대체되고 토큰 수는 사용할 수 없습니다.
전처리, 후처리 또는 연쇄 API 호출과 같은 관련 로직과 invoke_agent Call을 그룹화하려면 함수를 @weave.op로 감싸세요. Weave는 패치된 invoke_agent 트레이스를 상위 op 내부에 중첩합니다.
멀티턴 대화
sessionId를 재사용하면 서비스 측에서 대화 상태를 유지합니다. Weave UI에서 여러 턴을 하나의 트레이스로 묶으려면 weave.thread로 턴을 감싸세요:
트레이스 보기
invoke_agent Call의 에이전트 입력, 파운데이션 모델, 토큰 사용량, 생성된 응답을 확인할 수 있습니다.