새 모델 자동 동기화
새 모델 자동 동기화 (Auto Sync New Models, Day-0 출시)
서비스를 재시작하지 않고도 모델 가격과 컨텍스트 창 데이터를 자동으로 최신 상태로 유지해요. 이를 통해 새 모델에 대한 day-0 지원을 서비스 재시작 없이 추가할 수 있어요.
개요
OpenAI나 Anthropic 같은 제공자가 새 모델(예: GPT-5, Claude 4)을 출시하면, 보통 최신 가격과 컨텍스트 창 데이터를 얻기 위해 LiteLLM 서비스를 재시작해야 했어요.
자동 동기화를 사용하면 LiteLLM이 재시작 없이 GitHub의 model_prices_and_context_window.json에서 최신 모델 데이터를 자동으로 가져와요. 즉:
- 새 모델이 출시될 때 제로 다운타임
- 비용 추적과 예산을 위한 항상 정확한 가격
- 자동 업데이트 — 한 번 설정해 두고 잊어버리세요
시작 동작 (구성 불필요)
이 페이지의 엔드포인트는 프록시가 실행 중일 때 재동기화만 제어해요. 그것과 무관하게 모든 LiteLLM 프로세스는 이미 시작 시 한 번 원격 model_prices_and_context_window.json을 GitHub main(또는 설정된 경우 LITELLM_MODEL_COST_MAP_URL)에서 가져오고, 그 fetch가 실패하거나 검증에 실패한 경우에만 패키지에 번들된 사본(litellm/model_prices_and_context_window_backup.json)으로 폴백해요. 이미지에 가격 파일의 자체 사본을 넣어서 프록시가 원격 파일 대신 그것을 쓰게 하려면 LITELLM_LOCAL_MODEL_COST_MAP=True를 설정해야 해요. 자세한 내용은 커스텀 모델 비용 맵을, 어느 사본이 로드됐는지 확인하려면 GET /model/cost_map/source를 참고하세요.
빠른 시작
수동 동기화:
curl -X POST "https://your-proxy-url/reload/model_cost_map" \
-H "Authorization: Bearer ***" \
-H "Content-Type: application/json"
6시간마다 자동 동기화:
curl -X POST "https://your-proxy-url/schedule/model_cost_map_reload?hours=6" \
-H "Authorization: Bearer ***" \
-H "Content-Type: application/json"
API 엔드포인트
| 엔드포인트 | 메서드 | 설명 |
|---|---|---|
/reload/model_cost_map |
POST | 수동 동기화 |
/schedule/model_cost_map_reload?hours={hours} |
POST | 주기적 동기화 스케줄 |
/schedule/model_cost_map_reload |
DELETE | 예약된 동기화 취소 |
/schedule/model_cost_map_reload/status |
GET | 동기화 상태 확인 |
/model/cost_map/source |
GET | 로드된 맵이 어디서 왔고 어느 리비전인지 |
인증: admin 역할 또는 master key 필요
리로드가 성공했는데도 새로 추가된 모델이 여전히 나타나지 않으면, 배포에서 아무것도 바꾸기 전에 릴리스 가격 데이터 리로드 후 모델 누락을 따라가세요.
어느 리비전이 로드됐는지 확인
프록시가 가격 맵을 로드할 때마다 파싱한 바이트의 git blob id를 기록해요. 이는 litellm 체크아웃에서 git rev-parse <commit>:model_prices_and_context_window.json이 그 파일에 대해 출력하는 id와 같아요. 그것을 source_revision으로, fetch에 대해 GitHub가 제공한 etag와 loaded_at와 함께 GET /model/cost_map/source, POST /reload/model_cost_map, GET /schedule/model_cost_map_reload/status에서 보고해요. Admin UI는 Models and Endpoints 아래 Price Data Reload 카드에 같은 세 값을 보여줘요.
curl -s "https://your-proxy-url/model/cost_map/source" \
-H "Authorization: Bearer ***"
{
"source": "remote",
"url": "https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.json",
"is_env_forced": false,
"fallback_reason": null,
"loaded_at": "2026-09-08T00:49:21.311283+00:00",
"source_revision": "b1ffc1583e46583bb4becd34cf85ec70c6930828",
"etag": "W/\"6523ba12ad8daed03f7c879bc2c079d11b111d1ebdee2c27a34c0c756af30445\"",
"model_count": 3850
}
source_revision은 "내 프록시가 어느 가격 맵 위에 있나"의 한 줄짜리 답이에요. main과 대조하려면 litellm 체크아웃에서 git rev-parse origin/main:model_prices_and_context_window.json을 실행하세요. 일치하면 프록시가 현재 파일 위에 있는 것입니다. main이 언제 그 정확한 파일을 배포했는지 보려면 git log --first-parent --find-object=<source_revision> --format='%h %cs %s' origin/main -- model_prices_and_context_window.json을 실행하세요. 오래된 줄이 그것을 배포한 병합이고, 더 새로운 줄(있을 때)이 그것을 대체한 병합이에요. --first-parent가 중요한 이유는 대부분의 리비전이 litellm_internal_staging에서의 병합으로 main에 도달하고, 일반 git log는 그 병합들을 남기기 때문이에요. 체크아웃 없이는 gh api 'repos/BerriAI/litellm/contents/model_prices_and_context_window.json?ref=main' --jq .sha가 지금 main이 서빙하는 id를 출력해요. 같은 source_revision을 보고하는 두 프록시는 어느 URL에서 가져왔든 바이트 단위 동일한 맵을 서빙하고 있어요. etag는 맵이 번들 사본에서 왔을 때(LITELLM_LOCAL_MODEL_COST_MAP=True 또는 실패한 fetch) null이고, 그러면 source_revision이 번들 파일의 id예요. JSON 자체에는 아무것도 찍히지 않으므로 파일에 _metadata 항목이나 generated_at이 없어요.
Python 예시
import requests
def sync_models(proxy_url, admin_token):
response = requests.post(
f"{proxy_url}/reload/model_cost_map",
headers={"Authorization": f"Bearer {admin_token}"}
)
return response.json()
# Usage
result = sync_models("https://your-proxy-url", "your-admin-token")
print(result['message'])
구성
두 변수 모두 시작 fetch와 위 엔드포인트가 트리거하는 모든 리로드에 적용돼요.
커스텀 모델 비용 맵 URL (기본값 표시; 이 값이 설정되지 않아도 원격 fetch는 일어남):
export LITELLM_MODEL_COST_MAP_URL="https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.json"
로컬 모델 비용 맵만 사용 (시작과 리로드에서 원격 fetch 비활성화; 번들 백업 파일 사용):
export LITELLM_LOCAL_MODEL_COST_MAP=True
출처: 문서
더 알아보기 (Learn more)
- 커스텀 모델 비용 맵 구성법 확인하기
- Anthropic Beta 헤더 자동 동기화와 함께 운영하기