TGI 사용 통계 수집

TGI 사용 통계 수집

TGI는 서비스를 개선하기 위해 익명 사용 통계를 수집해요. 수집된 데이터는 TGI를 개선하고 실패 원인을 파악하는 데 쓰이며, 민감한 정보는 제외돼요. 다만 어떤 환경에서, 어떤 데이터가, 어떻게 수집되는지 정확히 알아두는 게 중요해요. 이 글에서는 수집되는 내용과, 원치 않을 때 끄는 방법을 함께 정리할게요.

출처: Hugging Face Text Generation Inference Usage Statistics

언제 수집되나요?

사용 통계는 TGI가 Docker 컨테이너 안에서 실행될 때만 수집돼요. 호스트 머신에서 TGI를 직접 실행하는 경우에는 데이터를 수집하지 않아요. 수집되는 이벤트로는 시작(startup)·종료(shutdown) 이벤트와, 15분마다 보내는 하트비트(heartbeat) 신호가 있어요.

어떤 데이터가 수집되나요?

수집 코드는 TGI 저장소의 router/src/usage_stats.rs에서 확인할 수 있어요. 2.1.2 릴리스 기준 수집되는 데이터의 예시는 아래와 같아요. TGI 설정에서 오는 값과 Nvidia GPU 환경, 시스템 환경 값이 담겨요.

{
  "event_type": "start",
  "disable_grammar_support": false,
  "max_batch_prefill_tokens": 4096,
  "max_batch_size": null,
  "max_batch_total_tokens": null,
  "max_best_of": 2,
  "max_client_batch_size": 4,
  "max_concurrent_requests": 128,
  "max_input_tokens": 1024,
  "max_stop_sequences": 4,
  "max_top_n_tokens": 5,
  "max_total_tokens": 2048,
  "max_waiting_tokens": 20,
  "model_config": {
    "model_type": "Bloom"
  },
  "revision": null,
  "tokenizer_class": "BloomTokenizerFast",
  "validation_workers": 2,
  "waiting_served_ratio": 1.2,
  "docker_label": "latest",
  "git_sha": "cfc118704880453d29bcbe4fbbd91dda501cf5fe",
  "nvidia_env": {
    "name": "NVIDIA A10G",
    "pci_bus_id": "00000000:00:1E.0",
    "driver_version": "535.183.01",
    "pstate": "P8",
    "pcie_link_gen_max": "4",
    "pcie_link_gen_current": "1",
    "temperature_gpu": "31",
    "utilization_gpu": "0 %",
    "utilization_memory": "0 %",
    "memory_total": "23028 MiB",
    "memory_free": "22515 MiB",
    "memory_used": "0 MiB",
    "reset_status_reset_required": "No",
    "reset_status_drain_and_reset_recommended": "No",
    "compute_cap": "8.6",
    "ecc_errors_corrected_volatile_total": "0",
    "mig_mode_current": "[N/A]",
    "power_draw_instant": "10.86 W",
    "power_limit": "300.00 W"
  },
  "system_env": {
    "cpu_count": 16,
    "cpu_type": "AMD EPYC 7R32",
    "total_memory": 66681196544,
    "architecture": "x86_64",
    "platform": "linux-unix-x86_64"
  }
}

수집을 끄는 방법

text-generation-launcher--usage-stats 옵션을 넘기면 수집 범위를 조절할 수 있어요.

  • --usage-stats=no-stack: 오류의 스택 트레이스와 오류 타입은 보내지 않지만, 시작·종료 이벤트는 계속 보내요.
  • --usage-stats=off: 모든 수집을 완전히 비활성화해요.

더 알아보기