Weave의 주요 축
- 애플리케이션의 모든 LLM call, 입력, 출력에 대한 가시성.
- 엄선된 테스트 케이스를 기준으로 성능을 측정하는 체계적인 평가.
- 무엇이 변경되었는지 파악할 수 있도록 프롬프트, 모델, 데이터의 버전 추적.
- 다양한 프롬프트와 모델을 비교하는 실험.
- 사람의 판단과 어노테이션을 수집하기 위한 피드백 수집.
- LLM의 안전성과 품질을 위해 프로덕션 환경에서 가드레일과 Scorer를 사용하는 모니터링.
트레이스
- 각 애플리케이션 사용의 입력과 출력을 확인합니다.
- LLM 피드백을 생성하는 데 사용된 소스 문서를 확인합니다.
- LLM call의 비용, token 수, 지연 시간을 확인합니다.
- 특정 프롬프트와 답변이 생성되는 방식을 자세히 살펴봅니다.
- 사용자의 응답에 대한 피드백을 수집합니다.
- 코드에서 Weave ops and calls를 사용해 함수가 무엇을 하는지 추적할 수 있습니다.
평가
- 어떤 버전의 모델/프롬프트가 어떤 성능으로 이어졌는지 손쉽게 추적할 수 있습니다.
- 하나 이상의 scoring function을 사용해 응답을 평가하는 메트릭을 정의합니다.
- 여러 메트릭에 걸쳐 두 개 이상의 서로 다른 평가를 비교합니다. 특정 샘플의 성능 차이도 대조할 수 있습니다.
모든 요소를 버전 관리하세요
프롬프트와 모델 실험하기
피드백 수집
프로덕션 모니터링
Weave 시작하기
- https://wandb.ai/site에서 Weights & Biases 계정을 만들고, https://wandb.ai/authorize에서 API 키를 발급받습니다.
- Weave를 설치합니다:
- 스크립트에서 Weave를 임포트하고 프로젝트를 초기화합니다:
- 지원되는 인테그레이션에만 의존하지 않고, 함수 call 코드에 한 줄만 추가해 맞춤형 함수의 트레이스를 기록할 수도 있습니다.
@weave.op() 데코레이터를 추가하고, TypeScript에서는 weave.op()로 함수를 감싸면 Weave가 해당 함수의 코드, 입력, 출력, 실행 메타데이터를 자동으로 수집합니다.