메인 콘텐츠로 건너뛰기
Weave의 OpenAI Realtime API 인테그레이션을 사용하면 애플리케이션의 음성-대-음성 상호작용을 발생하는 즉시 자동으로 트레이스할 수 있습니다. 이를 통해 에이전트와 사용자 간의 대화를 캡처하여 에이전트 성능을 검토하고 평가할 수 있습니다. 이 가이드에서는 애플리케이션에서 Realtime API 트레이싱을 활성화하는 방법을 보여주고, 로컬에서 실행할 수 있는 엔드투엔드 음성 어시스턴트 예시 두 가지를 안내합니다.

실시간 트레이스 통합하기

이 섹션에서는 모든 애플리케이션에서 OpenAI Realtime API에 대한 Weave 트레이싱을 활성화하는 데 필요한 최소한의 코드를 보여줍니다. Weave는 OpenAI Realtime API에 자동으로 패치되므로, 애플리케이션의 오디오 상호작용을 캡처하기 시작하려면 몇 줄의 코드만 추가하면 됩니다. 다음 코드는 Weave와 Realtime API 인테그레이션을 임포트합니다:
코드에 임포트해 실행하면 Weave가 사용자와 OpenAI Realtime API 간의 상호작용을 자동으로 트레이스합니다.

OpenAI Agents SDK로 실시간 음성 어시스턴트 실행하기

이 예제는 마이크 오디오를 OpenAI의 Realtime API로 스트리밍하고, AI의 음성 응답을 로컬 머신의 스피커로 재생하는 실시간 음성 어시스턴트를 실행합니다. 이 애플리케이션은 RealtimeAgentRealtimeRunner와 함께 OpenAI Agents SDK를 사용하며, patch_openai_realtime()로 패치하여 트레이싱을 활성화합니다. Realtime Session을 상위 수준의 Agents SDK가 대신 관리하도록 하려면 이 방식을 사용하세요. 예제를 실행하려면 다음 단계를 완료하세요:
  1. Python 환경을 실행하고 다음 라이브러리를 설치하세요:
  2. weave_voice_assistant.py 파일을 만들고 다음 코드를 추가하세요. 강조 표시된 줄은 애플리케이션에 Weave가 인테그레이션된 부분을 나타냅니다. 나머지 코드는 기본 음성 비서 앱을 구현합니다.
  3. DEFAULT_WEAVE_PROJECT 값을 팀 이름과 프로젝트 이름으로 업데이트하세요.
  4. OPENAI_API_KEY 환경 변수를 설정하세요.
  5. 음성 어시스턴트를 시작하세요:
어시스턴트가 실행되면 키보드에서 T 키를 눌러 마이크를 음소거하거나 음소거 해제할 수 있습니다. 어시스턴트는 서버 측 음성 활동 감지를 사용해 차례 전환과 중간 끼어들기를 처리합니다. 어시스턴트에게 말을 하는 동안 Weave는 세션의 오디오를 포함한 트레이스를 캡처하며, 이를 Weave UI에서 탐색할 수 있습니다.

WebSockets를 사용해 실시간 음성 어시스턴트 실행

다음 예제는 WebSockets를 통해 OpenAI Realtime API에 직접 연결합니다. 마이크 오디오를 API로 스트리밍하고, 음성 응답을 재생하며, 도구 호출 기능(날씨 조회, 수식 계산, 코드 실행, 파일 쓰기)을 지원합니다. Weave는 weave.init()patch_openai_realtime()을 사용해 세션을 트레이스합니다. Agents SDK에 의존하지 않고 Realtime Session을 완전히 제어하려는 경우 이 방식을 사용하세요. 예제를 실행하려면 다음 단계를 완료하세요:
  1. Python 환경을 실행한 다음 다음 라이브러리를 설치합니다:
  2. tool_definitions.py 파일을 만들고 여기에 다음 도구 정의를 추가하세요. 메인 애플리케이션은 이 모듈을 임포트합니다.
  3. 같은 디렉터리에 weave_ws_voice_assistant.py라는 파일을 만들고, 그 파일에 다음 코드를 추가합니다.
  4. weave.init() 호출에서 팀 이름과 프로젝트 이름을 업데이트하세요.
  5. OPENAI_API_KEY 환경 변수를 설정하세요.
  6. 음성 어시스턴트를 시작하세요:
어시스턴트가 실행되면 키보드에서 T 키를 눌러 마이크를 음소거하거나 음소거 해제할 수 있습니다. 어시스턴트는 서버 측 음성 활동 감지를 사용해 차례 전환과 중간 끼어들기를 처리합니다. 어시스턴트에게 말을 하는 동안 Weave는 세션의 오디오를 포함한 트레이스를 캡처하며, 이를 Weave UI에서 탐색할 수 있습니다.