Mavvrik
Mavvrik
LiteLLM이 프록시 지출 데이터를 Mavvrik으로 FOCUS 1.2 형식의 비용 보고서로 내보낼 수 있어요. 이를 통해 Mavvrik 비용 관리 플랫폼에서 LLM 지출을 추적하고 분석할 수 있죠.
출처: 문서
본문
개요 (Overview)
| 속성 | 세부 |
|---|---|
| 대상(Destination) | 서명된 URL 업로드로 LiteLLM 사용 데이터를 Mavvrik으로 내보내기 |
| 데이터 형식 | FOCUS CSV (gzip 압축, LiteLLM 지출 데이터에서 자동 변환) |
| 지원 작업 | 매일 자동 내보내기 |
| 인증 | Mavvrik API 키 + 연결 ID |
사전 요구사항 (Prerequisites)
Mavvrik 계정에서 다음이 필요해요:
- API Key — Mavvrik 대시보드 Settings에서 확인할 수 있어요.
- API Endpoint — 테넌트 전용 API URL. 예:
https://api.mavvrik.ai/<tenant_id>. - Connection ID — Mavvrik 계정에 구성된 AI 비용 연결 ID.
설정 (Setup)
환경 변수 (Environment variables)
| 변수 | 필수 | 설명 |
|---|---|---|
MAVVRIK_API_KEY |
예 | Mavvrik API 키 |
MAVVRIK_API_ENDPOINT |
예 | 테넌트 API 엔드포인트. 예: https://api.mavvrik.ai/<tenant_id> |
MAVVRIK_CONNECTION_ID |
예 | AI 비용 연결 식별자 |
MAVVRIK_FOCUS_MAX_ROWS |
아니오 | 일일 내보내기당 최대 행 수(기본값: 500000). 매우 높은 트래픽 배포에서는 늘려 주세요. |
일일 내보내기 전용 —
daily빈도만 지원돼요. Mavvrik 수집 프로토콜은 달력 날짜별로 파일 하나를 저장해요(metrics/YYYY-MM-DD). 시간별·간격 내보내기는 같은 날 안에서 서로 덮어써서 불완전한 데이터가 생겨요.
프록시 구성 (Proxy config)
model_list:
- model_name: gpt-5.6-terra
litellm_params:
model: openai/gpt-5.6-terra
api_key: «redacted:sk-…»
litellm_settings:
callbacks: ["mavvrik"]
export MAVVRIK_API_KEY="<your-api-key>"
export MAVVRIK_API_ENDPOINT="https://api.mavvrik.ai/<tenant_id>"
export MAVVRIK_CONNECTION_ID="<connection-id>"
litellm --config /path/to/config.yaml
프록시는 하루에 한 번 FOCUS 형식 지출 데이터를 내보내는 백그라운드 작업을 등록해요.
동작 방식 (How it works)
각 일일 내보내기 주기마다:
- Mavvrik 백엔드에 커넥터를 등록해요(
POST /metrics/agent/ai/{connection_id}) - 내보내기 날짜에 대한 GCS 서명 업로드 URL을 요청해요(
GET /metrics/agent/ai/{connection_id}/upload-url) - 서명된 URL을 통해 gzip 압축 FOCUS CSV를 GCS에 업로드해요
같은 날짜에 내보내기를 다시 실행하면 이전 파일을 덮어쓰므로 내보내기는 멱등적이에요. 내보내기는 메모리 사용을 제한하기 위해 하루당 MAVVRIK_FOCUS_MAX_ROWS 행(기본 500k)으로 제한돼요.
FOCUS 필드 매핑 (FOCUS Field Mapping)
LiteLLM 지출 데이터는 업로드 전에 FOCUS 1.2 스키마로 변환돼요:
| LiteLLM 필드 | FOCUS 컬럼 | 설명 |
|---|---|---|
spend |
BilledCost, EffectiveCost | 사용 비용 |
model |
ChargeDescription, ResourceId | 모델 식별자 |
model_group |
ServiceName | 모델 그룹 / 배포 |
custom_llm_provider |
ProviderName, PublisherName | 프로바이더(openai, anthropic 등) |
api_key |
BillingAccountId | 해시된 API 키 |
api_key_alias |
BillingAccountName | 사람이 읽을 수 있는 키 별칭 |
team_id |
SubAccountId | 팀 식별자 |
team_alias |
SubAccountName | 팀 이름 |
추가 메타데이터(user_id, model_group 등)는 Tags 컬럼에 JSON으로 포함돼요.