실시간 예제

examples/ 디렉토리에 있는 실행 가능한 네 가지 예제는 학습 효과가 높은 순서대로 정렬되어 있습니다. 모두 server-side bridge를 사용하며; 둘 중 하나인 OpenAI 또는 Gemini에서 실행됩니다. 먼저 관련 키를 설정하세요:

export OPENAI_API_KEY=sk-…        # for OpenAI sessions
export GEMINI_API_KEY=…           # for Gemini sessions (or GOOGLE_API_KEY)

realtime_tools

헤드리스. 가장 명확한 첫 번째 읽기. IntegratedRealtimeRunner에서 tool dispatch를 실행하는 콘솔 프로브(브라우저 없음): 단일 도구, 병렬 도구, 계산기 턴을 포함하며, 세션/메모리/대화 기록 집계가 연결되어 있습니다. 도구 턴이 어떻게 흐르는지에 대한 가장 작은 종단 간 그림입니다.

cargo run --manifest-path examples/realtime_tools/Cargo.toml

runner를 이해하려면 여기서 시작하세요; 그 다음 오디오를 위한 웹 예제로 이동하세요.


realtime_voice미아와 함께하는 마음챙김

주력 예제. 완전한 웹 음성 앱: 브라우저가 마이크 PCM16을 캡처하고 에이전트를 끊김 없이 재생하며 끼어들기 기능도 제공합니다; Rust 서버가 세션을 소유합니다. 주요 특징은 memory입니다: 파일 기반의 **GraphMemoryService**는 미아의 장기 기억입니다 — 그녀의 프로필 카드는 세션 시작 시 주입되며, 모든 턴은 그래프에 기록되고, 그녀는 브릿지된 remember/relate 도구를 통해 대화 중에 영구적인 사실을 관리합니다. 실시간 "사용자 메모리 통찰" 패널은 /api/memory를 통해 동일한 그래프를 읽고 씁니다. 또한 서버 측 get_weather 도구를 보여줍니다.

밝은어두운
Mia와 함께하는 마음챙김 — 밝은 테마Mia와 함께하는 마음챙김 — 어두운 테마
cargo run --manifest-path examples/realtime_voice/Cargo.toml
# → http://localhost:3033

다음 내용을 위해 읽어보세요: Web Audio 캡처/재생, 지식 그래프 메모리, agent 자체 큐레이션.


customer_serviceAria

멀티모달 쇼케이스. Google의 "Customer Service Agent" Live API 데모를 재설계한 버전입니다. 백엔드에 구애받지 않으며, Rust로 구현되었고, 테마(시스템/밝음/어두움)가 적용된 3열 UI를 갖추고 있습니다. 다음 모든 것을 결합합니다:

  • 멀티모달 — 마이크 PCM 카메라 JPEG 프레임을 스트리밍합니다; Aria는 당신이 보여주는 것을 봅니다 (send_video_frame).
  • Toolsprocess_refundconnect_to_human는 서버 측에서 실행됩니다; 결과는 음성으로 다시 전달됩니다.
  • 감성 대화 — 양쪽 백엔드에서 공감적입니다; CS_AFFECTIVE=1는 Gemini를 네이티브 오디오 모델로 전환하여 정확한 톤 매칭을 수행합니다.
밝은 테마어두운 테마
고객 서비스 에이전트 — 밝은 테마고객 서비스 에이전트 — 어두운 테마
cargo run --manifest-path examples/customer_service/Cargo.toml
# → http://localhost:3066

# headless smoke test (verifies the refund tool runs):
cargo run --manifest-path examples/customer_service/Cargo.toml -- probe openai
cargo run --manifest-path examples/customer_service/Cargo.toml -- probe gemini

# enable Gemini native affective dialogue:
CS_AFFECTIVE=1 cargo run --manifest-path examples/customer_service/Cargo.toml

다음 내용을 위해 읽어보세요: 비디오 입력, 하나의 Agent에서 멀티모달 + 도구 + 감정 혼합.


live_translation

전용 모델 예시. 실시간 음성-음성 번역기: 영어로 말하면 몇 초 후에 스페인어로 들립니다. 동일한 브리지이지만, 공급자의 번역 모델 — OpenAI gpt-realtime-translate 및 Gemini gemini-3.5-live-translate-preview — 을 가리킵니다. 이는 대화형 모델과는 다른 프로토콜을 사용합니다. UI에서 대상 언어를 선택하세요; 서버는 오디오가 흐르기 전에 공급자별 오디오 전송률을 협상합니다.

LightDark
실시간 번역 — 밝은 테마실시간 번역 — 어두운 테마
cargo run --manifest-path examples/live_translation/Cargo.toml
# → http://localhost:3055
cargo run --manifest-path examples/live_translation/Cargo.toml -- probe openai

전용 번역 모델과 집중적이고 최소한의 브리지를 사용하는 방법에 대해 읽어보세요.


제안된 경로

  1. realtime_tools — runner와 도구 턴을 확인하세요. 오디오 노이즈는 없습니다.
  2. realtime_voice — 실제 오디오와 지식 그래프 메모리를 추가하세요.
  3. customer_service — 시각과 감정을 추가하세요. 완전한 멀티모달 에이전트입니다.
  4. live_translation — 특수 모델 및 프로토콜입니다.

예제 디렉토리의 각 README.md에는 전체 env-var 테이블, 모델 재정의(OPENAI_REALTIME_MODEL / GEMINI_REALTIME_MODEL) 및 아키텍처 노트가 있습니다.

← 돌아가기: 실시간 개요

실시간 예제 - ADK-Rust 문서 | ADK-Rust