피드로 돌아가기
I built react-native-llm-meter, LLM cost tracking for Expo apps
Dev.toDev.to
Frontend

Expo 앱 내 LLM 비용 및 TTFT 추적을 위한 On-device Observability 구현

I built react-native-llm-meter, LLM cost tracking for Expo apps

Ankit Virdi2026년 5월 1일4intermediate

Context

기존 Langfuse, Helicone 등 Observability 도구의 Node.js API 의존성으로 인한 Expo 환경 적용 불가 문제 발생. 특히 Hermes 엔진에서의 Streaming 처리 한계와 AsyncStorage 어댑터 부재로 인한 온디바이스 메트릭 수집의 병목 지점 식별.

Technical Solution

  • SDK Wrap 패턴을 통한 기존 LLM 클라이언트 인터페이스 유지 및 투명한 메트릭 수집 구조 설계
  • Provider별 상이한 First-token 시그널(content_block_delta, delta.content 등) 분석을 통한 표준화된 TTFT 측정 로직 구현
  • 데이터 볼륨에 따른 AsyncStorageAdapter와 SqliteAdapter의 전략적 선택 및 마이그레이션 헬퍼 제공
  • 민감 정보 유출 방지를 위해 Prompt Content 수집을 구조적으로 완전히 배제한 Zero-log 아키텍처 채택
  • Remote Sink 인터페이스 구현을 통한 Sentry, Datadog 등 외부 엔드포인트로의 유연한 데이터 전송 지원
  • Hardcoded Pricing Table 기반의 온디바이스 비용 즉시 계산 및 Budget Alert 콜백 시스템 구축

- 온디바이스 LLM 구현 시 단순 Latency보다 사용자 체감 성능 지표인 TTFT(Time To First Token)를 분리하여 측정할 것 - 모바일 환경의 데이터 저장소 특성을 고려하여 데이터 규모에 맞는 Storage Adapter(AsyncStorage vs SQLite)를 선택할 것 - 클라이언트 사이드 로깅 설계 시 개인정보 보호를 위해 데이터 수집 단계에서부터 Prompt 내용을 배제하는 구조적 제약을 설정할 것 - 외부 API 의존성이 높은 라이브러리 도입 시 플랫폼 전용 API(Node-only) 포함 여부를 사전에 검토할 것

원문 읽기