관리형 LLM 플랫폼 — Bedrock, Vertex AI, Azure OpenAI
세 개의 하이퍼스케일러(hyperscaler)는 서로 다른 세 가지 전략을 취합니다. AWS Bedrock은 Claude, Llama, Titan, Stability, Cohere 같은 모델을 하나의 API 뒤에 묶어 제공하는 모델 마켓플레이스(model marketplace)입니다. Azure OpenAI는 OpenAI와의 독점 파트너십에 전용 용량을 위한 프로비저닝 처리량 단위(Provisioned Throughput Units; PTU)를 결합한 플랫폼입니다. Vertex AI는 Gemini를 중심에 두고, 긴 문맥(long context)과 멀티모달(multimodal) 경험을 가장 강하게 내세웁니다. 2026년 기준 Artificial Analysis는 Llama 3.1 405B급 동등 배포에서 Azure OpenAI의 중앙값 지연시간을 약 50ms, Bedrock을 약 75ms로 측정합니다. 이 차이는 전용 용량이 공유 온디맨드(on-demand)보다 안정적이기 때문에 PTU로 설명할 수 있습니다. 따라서 의사결정 기준은 "어느 쪽이 가장 빠른가"가 아니라 "우리 제품에 맞는 모델 카탈로그와 FinOps 표면을 어느 플랫폼이 제공하는가"입니다. 이 lesson에서는 감이 아니라 명시된 트레이드오프(tradeoff)를 기준으로 플랫폼을 고르는 법을 배웁니다.
유형: Learn
언어: Python(표준 라이브러리, 비용과 지연시간을 비교하는 장난감 비교기)
선수 지식: Phase 11(LLM Engineering), Phase 13(Tools & Protocols)
예상 시간: 약 60분
학습 목표
- 세 가지 플랫폼 전략, 즉 마켓플레이스(marketplace), 독점 파트너십(exclusive partnership), Gemini 우선(Gemini-first) 전략을 말하고 각각을 제품 사용 사례에 연결할 수 있습니다.
- Azure OpenAI의 프로비저닝 처리량 단위(Provisioned Throughput Units; PTU)가 무엇을 구매하게 해주는지, 그리고 405B 규모에서 Bedrock 온디맨드가 보통 약 25ms 느리게 관측되는 이유를 설명할 수 있습니다.
- 각 플랫폼의 FinOps 귀속 표면(attribution surface)을 도식화할 수 있습니다. 예를 들어 Bedrock Application Inference Profiles, Vertex의 팀별 프로젝트(project-per-team), Azure의 스코프(scope)와 PTU 예약(reservation)을 비교합니다.
- "최소 두 제공자(two-provider minimum)" 정책을 적고, 2026년에 단일 벤더 락인(single-vendor lock-in)이 왜 비싼 실수가 되는지 설명할 수 있습니다.
문제
제품에 Claude 3.7 Sonnet을 쓰기로 했다고 합시다. 이제 이 모델을 서빙해야 합니다. Anthropic API를 직접 호출할 수도 있고, AWS Bedrock을 통해 호출할 수도 있으며, 게이트웨이(gateway)를 앞에 둘 수도 있습니다. 직접 API는 가장 단순합니다. Bedrock은 사업제휴계약(Business Associate Agreement; BAA), VPC 엔드포인트(VPC endpoint), IAM, CloudWatch 귀속(attribution)을 더해줍니다. 게이트웨이는 제공자 간 장애 조치(failover), 통합 과금(unified billing), 속도 제한(rate limit)을 더합니다.
더 깊은 질문은 카탈로그(catalog)입니다. 하나의 제품 안에서 Claude, Llama, Gemini가 모두 필요하다면, Bedrock과 Vertex와 Azure OpenAI를 동시에 쓰지 않는 한 이 모델들을 한곳에서 모두 살 수 없습니다. 하이퍼스케일러들은 서로 교환 가능한 존재가 아닙니다. 각자는 모델 계층(model layer)의 소유권에 대해 서로 다른 베팅을 했습니다.
이 lesson은 세 가지 베팅, 지연시간 차이, FinOps 차이, 락인 위험을 지도처럼 정리합니다.
개념
세 가지 전략
AWS Bedrock은 마켓플레이스입니다. Claude(Anthropic), Llama(Meta), Titan(AWS 자체 모델), Stability(이미지), Cohere(임베딩), Mistral, 그리고 이미지와 임베딩 하위 카탈로그를 제공합니다. 하나의 API, 하나의 IAM 표면, 하나의 CloudWatch 내보내기(export)로 묶입니다. Bedrock의 베팅은 고객이 단일 모델보다 선택권(optionality)을 더 원한다는 것입니다.
Azure OpenAI는 독점 파트너십입니다. Azure 데이터센터 안에서 GPT-4, 4o, 5, o-series, DALL·E, Whisper, OpenAI 모델 파인튜닝(fine-tuning)을 사용할 수 있습니다. "Azure OpenAI Service" 카탈로그 안에는 OpenAI가 아닌 모델이 없습니다. 그런 모델은 별도 제품인 Azure AI Foundry로 갑니다. Azure의 베팅은 OpenAI가 계속 프런티어(frontier)에 남고, 고객은 그 특정 관계에 엔터프라이즈 통제(enterprise control)를 붙이고 싶어 한다는 것입니다.
Vertex AI는 Gemini가 먼저이고 나머지는 그다음입니다. Gemini 1.5, 2.0, 2.5 Flash와 Pro, 그리고 서드파티(third-party) 모델을 위한 Model Garden을 제공합니다. Vertex의 베팅은 멀티모달 긴 문맥입니다. 100만 토큰 Gemini 문맥은 Vertex의 차별화 요소입니다.
대규모에서의 지연시간 차이
Artificial Analysis는 지속적인 벤치마크(continuous benchmark)를 실행합니다. 동등한 Llama 3.1 405B 배포, 즉 공유 온디맨드(shared on-demand) 기준에서 Azure OpenAI의 중앙값 첫 토큰 지연시간(first-token latency)은 약 50ms이고, Bedrock은 약 75ms입니다. 이 차이는 AWS의 실패가 아닙니다. 용량 모델(capacity model)의 차이입니다. Azure는 PTU를 판매하며, PTU는 해당 테넌트(tenant)를 위해 GPU 용량을 예약합니다. Bedrock에도 대응되는 Provisioned Throughput이 있지만, 단위당 시간당 약 21달러부터 시작하고 대부분의 고객은 공유 온디맨드에 머뭅니다.
온디맨드 공유 용량은 다른 모든 고객의 트래픽과 경쟁합니다. 전용 용량(dedicated capacity)은 그렇지 않습니다. 제품의 서비스 수준 목표(Service Level Agreement; SLA)가 P99에서 첫 토큰까지 걸리는 시간(Time To First Token; TTFT) 100ms 미만이라면 Azure에서 PTU를 구매하거나, Bedrock Provisioned Throughput을 구매하거나, 기본 분산(variance)을 받아들여야 합니다.
Provisioned Throughput 경제성
Azure PTU는 추론 연산(inference compute)의 예약 블록입니다. 예측 가능한 워크로드에서는 온디맨드 대비 최대 약 70%를 절감할 수 있습니다. 비용은 트래픽과 무관하게 시간당 고정됩니다. 유휴 상태여도 예약 비용은 냅니다. 보통 손익분기점(break-even)은 지속 사용률(sustained utilization) 40-60% 부근입니다.
Bedrock Provisioned Throughput은 모델과 리전에 따라 시간당 21-50달러입니다. 계산 방식은 비슷합니다. 손익분기점은 보통 피크 사용률(peak utilization)의 절반 부근입니다. 월 단위 약정(monthly commitment)이 필요합니다.
Vertex의 프로비저닝 용량(provisioned capacity)은 Gemini SKU별로 판매됩니다. 가격은 모델과 리전에 따라 달라지고, 공개적으로 광고되는 정도는 상대적으로 낮습니다.
FinOps 표면 — 진짜 차별점
Bedrock Application Inference Profiles는 마켓플레이스 안에서 가장 깔끔한 귀속(attribution)을 제공합니다. 프로필에 team, product, feature 태그를 붙이고 모든 모델 호출(invocation)을 그 프로필을 통해 라우팅하면, CloudWatch가 후처리 없이 프로필별 비용을 나눠 보여줍니다. 2025년에 추가되었고, 여전히 하이퍼스케일러 네이티브(native) 기능 중 가장 세밀합니다.
Vertex의 귀속 방식은 팀별 프로젝트(project-per-team)에 모든 곳의 라벨(labels-everywhere)을 더하는 방식입니다. 각 팀을 GCP 프로젝트로 모델링하고, 모든 리소스에 라벨을 붙인 뒤, BigQuery Billing Export와 DataStudio로 집계합니다. 더 많은 작업이 필요하지만, BigQuery를 쓰면 비용 데이터에 대해 임의의 SQL을 실행할 수 있습니다.
Azure는 구독(subscription), 리소스 그룹(resource group) 스코프, 태그(tags)에 의존하며, PTU 예약은 1급 비용 객체(first-class cost object)입니다. 태그는 요청(request)이 아니라 리소스 그룹에서 상속되므로, 요청별 귀속(per-request attribution)을 하려면 Application Insights 사용자 정의 지표(custom metrics)나 헤더를 찍어주는 게이트웨이가 필요합니다.
패턴은 이렇습니다. Bedrock은 네이티브 기능이 가장 깔끔하고, Vertex는 BigQuery 덕분에 가장 유연하며, Azure는 직접 계측(instrumentation)하지 않으면 가장 불투명합니다.
락인은 2026년의 위험입니다
하나의 모델이 지배하던 시기에는 단일 하이퍼스케일러 약정도 괜찮았습니다. 하지만 2026년에는 프런티어가 매달 움직입니다. 어느 분기에는 Claude 3.7이 앞서고, 다음 분기에는 Gemini 2.5가, 그다음 분기에는 GPT-5가 앞설 수 있습니다. 한 플랫폼에 묶이면 프런티어의 3분의 2에서 스스로를 배제하게 됩니다.
실제로 잘 운영하는 팀들이 채택하는 패턴은 제품 핵심 LLM 호출(product-critical LLM call)에 대해 최소 두 제공자를 두는 것입니다. Bedrock과 Azure OpenAI 조합이 흔한 쌍입니다. 한쪽에서 Claude를, 다른 한쪽에서 GPT를 쓰고, 같은 게이트웨이 뒤에서 둘 사이 장애 조치를 구성합니다. 게이트웨이가 최적 경로로 라우팅하므로 비용 증가는 크지 않습니다. 반면 Azure OpenAI 2025년 1월 장애나 AWS us-east-1 장애 같은 상황에서 가용성(availability) 증가는 결정적입니다.
데이터 레지던시, BAA, 규제 산업
Bedrock은 대부분의 리전에서 BAA, VPC 엔드포인트, 가드레일(guardrails)을 제공합니다. 핀테크(fintech)에서 흔한 기본 선택지입니다.
Azure OpenAI는 HIPAA, SOC 2, ISO 27001, EU 데이터 레지던시(data residency)를 제공합니다. 엔터프라이즈 규제 환경의 기본 선택지입니다.
Vertex는 HIPAA, GDPR, 리전별 데이터 레지던시, Google Cloud의 컴플라이언스(compliance) 스택을 제공합니다.
세 플랫폼 모두 기본 체크박스는 충족합니다. 차이는 데이터 보존 정책(data retention policy), 로그 처리 방식, 남용 모니터링(abuse monitoring)이 여러분의 트래픽을 읽는지 여부에 있습니다. 대부분은 기본적으로 참여(opt-in)되어 있고, 엔터프라이즈에서는 제외(opt-out)할 수 있습니다.
기억해야 할 숫자
- Llama 3.1 405B급 동등 배포에서 Azure OpenAI의 중앙값 TTFT: 약 50ms(PTU 사용 시).
- Bedrock 온디맨드 중앙값 TTFT: 약 75ms.
- Bedrock Provisioned Throughput: 단위당 시간당 21-50달러.
- Azure PTU 손익분기점: 지속 사용률 약 40-60%.
- 높은 사용률에서 PTU의 온디맨드 대비 절감률: 최대 70%.
사용해보기
code/main.py는 합성 워크로드(synthetic workload)를 기준으로 세 플랫폼을 비교합니다. 이 코드는 온디맨드와 PTU 경제성, TTFT 분산, 비용 귀속 충실도(cost attribution fidelity)를 모델링합니다. 실행해 보면 PTU가 언제 비용을 회수하는지, 그리고 마켓플레이스의 모델 폭(model breadth)이 언제 TTFT 차이보다 더 중요한지 확인할 수 있습니다.
산출물 만들기
이 lesson은 outputs/skill-managed-platform-picker.md를 만듭니다. 워크로드 프로필, 즉 필요한 모델, TTFT SLA, 일일 토큰 사용량, 컴플라이언스 요구사항을 입력하면 주 플랫폼(primary platform), 대체 플랫폼(fallback), FinOps 계측 계획(instrumentation plan)을 추천합니다.
연습문제
- 쉬움:
code/main.py를 실행해 보세요. 70B급 모델에서 Azure PTU가 온디맨드보다 유리해지는 지속 사용률은 어디입니까? 손익분기점을 계산하고, 원문에서 말한 40-60% 구간과 비교하세요.
- 중간: 제품에 Claude 3.7 Sonnet과 GPT-4o가 필요합니다. 최소 두 제공자 배포(two-provider deployment)를 설계하세요. 어떤 모델을 어떤 하이퍼스케일러에 둘지, 앞단에 어떤 게이트웨이를 둘지, 장애 조치 정책을 어떻게 둘지 정리하세요.
- 중간: 규제 대상 헬스케어 고객이 BAA, US-East 데이터 레지던시, P99 기준 100ms 미만 TTFT를 요구합니다. 플랫폼을 하나 고르고, 구체적인 기능 세 가지로 정당화하세요.
- 어려움: 트래픽 변화가 없는데 Bedrock 비용이 이번 달에 4배 올랐다는 사실을 발견했습니다. Application Inference Profiles가 없다면 원인을 어떻게 찾겠습니까? 프로필이 있다면 얼마나 빨리 찾을 수 있습니까?
- 어려움: Azure OpenAI와 Bedrock 가격 페이지를 읽으세요. 월 1억 토큰 Claude 워크로드에서 직접 Anthropic API, Bedrock 온디맨드, Bedrock Provisioned Throughput 중 어느 쪽이 더 저렴합니까?
핵심 용어
| 용어 | 흔한 설명 | 실제 의미 |
|---|
| Bedrock | "AWS LLM 서비스" | Claude, Llama, Titan, Mistral, Cohere를 아우르는 모델 마켓플레이스 |
| Azure OpenAI | "Azure의 ChatGPT" | 엔터프라이즈 통제를 갖춘 Azure 데이터센터 내 OpenAI 독점 모델 |
| Vertex AI | "Google의 LLM" | Gemini를 중심에 두고 서드파티 모델용 Model Garden을 제공하는 플랫폼 |
| PTU | "전용 용량" | 프로비저닝 처리량 단위(Provisioned Throughput Unit). 시간당 가격이 붙는 예약 추론 GPU |
| Application Inference Profile | "Bedrock 태깅" | 태그를 갖춘 제품별 비용/사용량 프로필. CloudWatch 네이티브로 동작함 |
| Model Garden | "Vertex 카탈로그" | Gemini와 별도로 제공되는 Vertex AI의 서드파티 모델 영역 |
| Two-provider minimum | "LLM 이중화" | 모든 핵심 LLM 경로를 둘 이상의 하이퍼스케일러에서 운영하는 정책 |
| BAA | "HIPAA 서류" | 사업제휴계약(Business Associate Agreement). 보호건강정보(PHI)에 필요하며 세 플랫폼 모두 제공함 |
| Abuse monitoring | "로그 감시자" | 프롬프트와 출력에 대한 제공자 측 안전성 검사. 엔터프라이즈에서는 제외할 수 있음 |
더 읽을거리