Weave 통합
Weave 통합 (Weave Integration)
Weights & Biases (W&B) Weave는 LLM 기반 애플리케이션을 추적·실험·평가·배포·개선하기 위한 프레임워크예요. CrewAI 애플리케이션 개발의 모든 단계를 종합적으로 지원해요.
출처: 문서
본문
Weave Overview
W&B Weave는 LLM 기반 애플리케이션을 추적·실험·평가·배포·개선하기 위한 프레임워크예요. Weave는 CrewAI 애플리케이션 개발의 모든 단계를 종합적으로 지원해요:
- Tracing & Monitoring — 프로덕션 시스템을 디버그·분석하기 위해 LLM 호출과 애플리케이션 로직을 자동 추적.
- Systematic Iteration — 프롬프트, 데이터셋, 모델을 반복·개선.
- Evaluation — 커스텀 또는 사전 구축된 스코러를 사용해 에이전트 성능을 체계적으로 평가·향상.
- Guardrails — 콘텐츠 모더레이션과 프롬프트 안전을 위한 사전/사후 안전장치로 에이전트 보호.
Weave는 CrewAI 애플리케이션의 트레이스를 자동으로 캡처해서 에이전트의 성능, 상호작용, 실행 흐름을 모니터링·분석할 수 있게 해 줘요. 더 나은 평가 데이터셋을 만들고 에이전트 워크플로우를 최적화하는 데 도움이 돼요.
Setup Instructions (설정 방법)
- 필수 패키지 설치
pip install crewai weave - W&B 계정 설정 — 아직 없다면 Weights & Biases 계정에 가입하세요. 트레이스와 메트릭을 보려면 필요해요.
- 애플리케이션에서 Weave 초기화 — 애플리케이션에 다음 코드를 추가하세요:
초기화 후 Weave가 트레이스와 메트릭을 볼 수 있는 URL을 제공해요.import weave # Initialize Weave with your project name weave.init(project_name="crewai_demo") - Crews/Flows 만들기
from crewai import Agent, Task, Crew, LLM, Process # Create an LLM with a temperature of 0 to ensure deterministic outputs llm = LLM(model="gpt-4o", temperature=0) # Create agents researcher = Agent( role='Research Analyst', goal='Find and analyze the best investment opportunities', backstory='Expert in financial analysis and market research', llm=llm, verbose=True, allow_delegation=False, ) writer = Agent( role='Report Writer', goal='Write clear and concise investment reports', backstory='Experienced in creating detailed financial reports', llm=llm, verbose=True, allow_delegation=False, ) # Create tasks research_task = Task( description='Deep research on the {topic}', expected_output='Comprehensive market data including key players, market size, and growth trends.', agent=researcher ) writing_task = Task( description='Write a detailed report based on the research', expected_output='The report should be easy to read and understand. Use bullet points where applicable.', agent=writer ) # Create a crew crew = Crew( agents=[researcher, writer], tasks=[research_task, writing_task], verbose=True, process=Process.sequential, ) # Run the crew result = crew.kickoff(inputs={"topic": "AI in material science"}) print(result) - Weave에서 트레이스 보기 — CrewAI 애플리케이션을 실행한 후 초기화 시 제공된 Weave URL을 방문해 다음을 확인하세요:
- LLM 호출과 메타데이터
- 에이전트 상호작용과 태스크 실행 흐름
- 지연 시간과 토큰 사용량 같은 성능 메트릭
- 실행 중 발생한 에러나 이슈
Features (기능)
- Weave는 모든 CrewAI 연산을 자동 캡처해요: 에이전트 상호작용과 태스크 실행, 메타데이터와 토큰 사용량을 포함한 LLM 호출, 툴 사용과 결과.
- 통합은 모든 CrewAI 실행 메서드를 지원해요:
kickoff(),kickoff_for_each(),kickoff_async(),kickoff_for_each_async(). - 모든 crewAI-tools의 자동 트레이싱.
- 데코레이터 패칭(
@start,@listen,@router,@or_,@and_)을 통한 Flow 기능 지원. @weave.op()로 CrewAI Task에 전달된 커스텀 가드레일 추적.
지원되는 것에 대한 자세한 내용은 Weave CrewAI 문서를 참조하세요.
Resources (리소스)
- 📘 Weave Documentation
- 📊 Example Weave x CrewAI dashboard
- 🐦 X