Ray-Ban Meta Glasses에서 Gemini Live와 LiveKit을 이용한 실시간 멀티모달 AI

발행: (2026년 2월 4일 오전 01:27 GMT+9)
5 분 소요
원문: Dev.to

Source: Dev.to

Ray-Ban Meta 안경에서 Gemini Live와 LiveKit을 사용한 실시간 멀티모달 AI 커버 이미지

아키텍처

설정은 웨어러블 디바이스와 AI 간의 저지연, 보안 통신을 보장하기 위해 여러 계층으로 구성됩니다:

  • Meta Ray‑Ban Glasses – 비디오와 오디오를 캡처하고 블루투스를 통해 휴대폰에 연결합니다.
  • Phone (Android/iOS) – 게이트웨이 역할을 하며 WebRTC를 통해 LiveKit Cloud에 연결합니다.
  • LiveKit Cloud – Gemini Live API를 위한 안전하고 고성능 프록시 역할을 수행합니다.
  • Gemini Live API – WebSockets를 통해 스트림을 처리하여 실시간 멀티모달 상호작용을 가능하게 합니다.

아키텍처 다이어그램

Backend: Gemini Live Agent 구축

우리는 LiveKit Agents 프레임워크를 사용하여 Gemini Live API를 위한 보안 WebRTC 프록시 역할을 합니다. 이 에이전트는 LiveKit 방에 참여하고 오디오를 청취하며 안경에서 전송되는 비디오 스트림을 처리합니다.

어시스턴트 설정

우리 에이전트의 핵심은 AgentSession입니다. 우리는 google.beta.realtime.RealtimeModel을 사용해 Gemini와 인터페이스하고, RoomOptionsvideo_input을 활성화하여 에이전트가 “볼 수” 있게 합니다.

@server.rtc_session()
async def entrypoint(ctx: JobContext):
    ctx.log_context_fields = {"room": ctx.room.name}

    session = AgentSession(
        llm=google.beta.realtime.RealtimeModel(
            model="gemini-2.5-flash-native-audio-preview-12-2025",
            proactivity=True,
            enable_affective_dialog=True,
        ),
        vad=ctx.proc.userdata["vad"],
    )

    await session.start(
        room=ctx.room,
        agent=Assistant(),
        room_options=room_io.RoomOptions(
            video_input=True,
        ),
    )
    await ctx.connect()
    await session.generate_reply()

video_input=True를 설정하면 에이전트가 자동으로 방에서 비디오 트랙을 요청합니다. 여기서는 안경에서 전송되는 1 FPS 스트림이 해당됩니다.

에이전트 실행

개발 모드에서 에이전트를 시작하고 LiveKit Cloud를 통해 전역적으로 접근 가능하게 하려면 다음 명령을 사용합니다:

uv run agent.py dev

전체 Gemini Live 비전 에이전트 예제는 LiveKit 문서에서 확인할 수 있습니다.

연결 및 인증

CLI 토큰 생성

테스트 및 데모를 위해 LiveKit CLI를 사용하여 짧은 기간 동안 유효한 액세스 토큰을 빠르게 생성할 수 있습니다:

lk token create \
  --api-key  \
  --api-secret  \
  --join \
  --room  \
  --identity  \
  --valid-for 24h

운영 환경에서는 항상 보안 백엔드에서 토큰을 발급하여 API 비밀을 안전하게 보호하세요 (LiveKit의 인증 가이드를 참조).

프론트엔드: Meta Wearables 통합

이 예제는 Android 기기(예: Google Pixel)를 대상으로 합니다. Meta Wearables Toolkit과 샘플 프로젝트가 필요합니다.

  1. 샘플 복제Android 클라이언트 예제를 가져옵니다.

  2. local.properties 구성 – Meta SDK에서 요구하는 대로 GitHub 토큰을 추가합니다.

  3. 연결 세부 정보 업데이트StreamScreen.kt 파일에서 서버 URL과 토큰을 여러분의 LiveKit 정보로 교체합니다:

    // streamViewModel.connectToLiveKit
    connectToLiveKit(
        url = "wss://your-project.livekit.cloud",
        token = "your-generated-token"
    )
  4. 앱 실행 – USB로 기기를 연결하고 Android Studio에서 배포합니다.

Conclusion

Meta Wearables와 Gemini Live를 LiveKit을 통해 연결함으로써, 강력하고 저지연 비전 AI 경험을 만들었습니다. 이 아키텍처는 확장 가능하고 안전하며, 차세대 웨어러블 AI 애플리케이션을 위한 기반을 제공합니다.

리소스

해킹을 즐기세요! 🚀

Back to Blog

관련 글

더 보기 »

AI가 당신에게 뺨을 때릴 때

AI가 당신을 뺨 때릴 때: Adama에서 Claude가 생성한 코드 디버깅 AI에게 복잡한 기능을 “vibe‑code”하게 맡겨본 적이 있나요? 그 결과 미묘한 버그를 디버깅하느라 몇 시간을 보내게 됩니다.