Skip to main content

AI 가상 비서의 관측 가능성을 강화하기 위한 W&B Weave와 NVIDIA AI Blueprint 통합

최신 통합 발표: NVIDIA와의 통합, W&B Weave × NVIDIA AI Blueprints 이 글은 AI 번역본입니다. 오역 가능성이 있으니 댓글로 알려주세요.
Created on September 15|Last edited on September 15
이 글은 Ruchika Kharwar와 공동 집필했습니다 from NVIDIA

생성형 AI는 기업이 지능형 시스템을 구축하는 방식을 변화시키며, 복잡한 과제를 개인화되고 효율적인 방식으로 해결하도록 돕고 있습니다. Weights & Biases의 W&B Weave와 NVIDIA AI Enterprise의 일부인 NVIDIA AI Blueprints, 이 변화를 가속하는 데 도움을 줍니다. Weave는 평가, 트레이싱, 운영 관측 도구(프로덕션 모니터링), 인간 피드백을 손쉽게 반영하는 방법, 그리고 보안 협업을 포함한 엔드 투 엔드 AI 플랫폼을 제공합니다. NVIDIA AI Blueprints는 고도화된 AI 에이전트를 개발하기 위한 견고한 기반을 제공합니다.
이 글에서는 Weave와 AI Blueprints를 통합하여 개발자가 확장 가능하고 고성능의 AI 기반 애플리케이션을 자신 있게 프로덕션에 배포할 수 있도록 돕는 방법을 살펴봅니다. 예시로 AI 가상 비서를 위한 AI Blueprint를 사용하겠습니다.

AI 블루프린트란 무엇인가요?


AI Blueprints는 개발자가 참고 코드, 상세 문서, 배포를 위한 Helm 차트, 그리고 관련된 NVIDIA 등의 핵심 자산을 활용할 수 있도록 설계된 커스터마이즈 가능한 생성형 AI 참조 아키텍처를 제공합니다. NIM 마이크로서비스. 이를 통해 개발자는 개인화, 요약, 감정 분석 기능을 갖춘 RAG 기반 애플리케이션의 베이스라인을 빠르게 구축할 수 있습니다.

W&B Weave란 무엇인가요?


Weave LLM 기반 애플리케이션을 평가하고 모니터링하며 반복 개선할 수 있는 엔드 투 엔드 AI 개발자 플랫폼을 제공합니다.
Weave는 다양한 AI 에이전트와 RAG 구성 요소 간 상호작용을 이해하는 작업을 단순화하여 NVIDIA AI Blueprints의 이상적인 동반자가 됩니다. 이 조합을 통해 개발자는 다음을 얻습니다:
  1. 강화된 가시성에이전트가 쿼리를 처리하고 중첩 함수들을 다루며 응답을 생성하는 과정을 세밀하게 파악하세요.
  2. 개선된 피드백 루프NVIDIA NIM과 Weave의 트래킹을 결합하여 LLM-as-a-judge 또는 human-in-the-loop 피드백을 통해 강화 학습용 모델을 지속적으로 미세 조정하세요.
  3. 효율적인 디버깅Weave의 트레이스 기능을 활용해 파이프라인의 병목 현상이나 비효율을 식별하세요.
  4. 사용자 지정 가능한 메트릭프로덕션 환경에서 사용자 ID나 환경적 컨텍스트와 같은 시스템 속성을 추적하세요.
  5. 원활한 확장: 높은 수요 환경에서도 일관된 모니터링으로 견고한 AI 어시스턴트를 배포하세요

시작하기

Weave는 기존 코드에 간단히 통합할 수 있으며, 단 3줄의 코드로도 가능합니다:
import weave
weave.init('wandb-project-name')
@weave.op()
def my_assistant_call():
pass
Weave의 트레이싱은 데코레이터로 구동됩니다 @weave.op()트레이싱은 개발자가 특정 함수의 모든 입력과 출력을 추적하고, 복잡한 애플리케이션에서 UI 상에서 전체 함수 트리를 사용자에게 연결해 보여줄 수 있도록 합니다.


AI Blueprint 통합의 예시 의사 코드: Weave로 동작 추적하기

import weave
import os

client = weave.init(os.environ.get("WANDB_PROJECT"))

@weave.op()
def route_primary_assistant(
state: State,
) -> Literal[
"enter_product_qa",
"enter_order_status",
"enter_return_processing",
"other_talk",
"__end__",
]:
route = tools_condition(state)
if route == END:
return END
tool_calls = state["messages"][-1].tool_calls
if tool_calls:
if tool_calls[0]["name"] == ToProductQAAssistant.__name__:
return "enter_product_qa"
elif tool_calls[0]["name"] == ToOrderStatusAssistant.__name__:
return "enter_order_status"
elif tool_calls[0]["name"] == ToReturnProcessing.__name__:
return "enter_return_processing"
elif tool_calls[0]["name"] == HandleOtherTalk.__name__:
return "other_talk"
raise ValueError("Invalid route")

보시다시피, 이 통합을 만드는 과정은 정말 간단했습니다. Weave와 함께 NVIDIA AI Blueprint를 직접 사용해 보고 싶다면, 샘플 레포지토리는 여기에서 확인할 수 있습니다.

이 조합은 어떻게 함께 작동하나요?

Weave를 사용하면 AI Blueprint를 트레이싱하고 반복 개선할 수 있습니다. 예를 들어, 발생 중인 쿼리를 원활하게 처리하기 위해 모든 LangGraph 트래버설을 확인할 수 있습니다:



그다음에는 대화를 더 깊이 들여다보고, 심지어 재생해 보면서 Weave Playground에서 프롬프트 엔지니어링을 통해 에이전트의 결과를 개선할 수 있습니다:



또한 트레이싱 중인 실시간 상호작용 데이터로 데이터세트를 생성할 수 있습니다. 이렇게 만든 데이터세트는 데이터 플라이휠을 더욱 가속하여 시간이 지남에 따라 모델 튜닝 품질을 개선합니다.



이처럼 풍부한 실제 상호작용 데이터를 바탕으로, 시간에 따라 변경 사항을 평가하여 더 나은 생성형 AI 애플리케이션을 만들기 위한 올바른 개선을 하고 있는지 확인할 수 있습니다.


결론

W&B Weave와 AI Blueprints를 통합하면 GenAI 기반 에이전트를 구축하고 관리하는 데 강력한 시너지가 생깁니다. 이 통합은 개발 과정을 간소화할 뿐만 아니라 트레이서빌리티와 옵저버빌리티를 통해 지속적인 개선을 제공합니다. 두 도구를 함께 활용하면, 엔터프라이즈는 애플리케이션에 대한 통제와 책임성을 유지하면서 AI의 잠재력을 최대한 발휘할 수 있습니다. 직접 사용해 보고 싶다면, GitHub 레포지토리는 다음에서 확인할 수 있습니다 여기에서 확인할 수 있습니다 또는 액세스하세요 NVIDIA의 블루프린트는 여기에서 확인할 수 있습니다.

이 문서는 AI가 번역한 기사입니다. 오역이 의심되는 부분이 있으면 댓글로 알려 주세요. 원문 보고서는 아래 링크에서 확인할 수 있습니다: 원문 보고서 보기