byteforce

CPN 한국어 자습서 · Claude Certified Developer — Foundations Prep

5-5 · 배포와 버전 관리

어디에 배포하고, 어떤 버전을 고정할까

Choosing where a Claude workload runs and versioning what ships

패키징한 자산이든 팀에 기여한 자산이든, 어딘가에서 실제로 실행되기 전까지는 그냥 코드입니다. 배포 단계에 이르면 새로운 질문이 생깁니다 — 어디서 실행할지, 그리고 어떤 버전으로 고정할지. 이 레슨에서는 실행 환경을 고르는 기준부터 시작해, 버전을 고정하고 eval로 승격하는 흐름, 그리고 별칭이 움직여 배포가 깨진 실제 사례까지 살펴봅니다.

이 장에서 배우는 것What you'll learn

약 22분
1

배포 플랫폼이 무엇이고, 왜 고객의 클라우드가 선택을 좌우하는지

2

여러 실행 환경 — First-party API · AWS · Bedrock · Vertex · 서드파티

3

인증과 데이터 위치를 코드가 아니라 플랫폼이 정하는 이유

4

별칭 대신 전체 모델 ID를 고정하는 이유와 방법

5

eval을 배포 게이트로 삼아 버전을 승격·롤백하는 흐름

6

별칭이 움직여 배포가 깨진 실제 로그와 예방책

먼저 짚고 갈 용어
배포 플랫폼 (deployment platform)
Claude 워크로드가 실제로 실행되는 환경. 같은 모델이라도 여러 환경에서 실행될 수 있고, 대개 고객이 이미 쓰는 클라우드가 그 환경을 정한다.
별칭 (alias)
Opus·Sonnet처럼 "권장 버전"을 가리키는 이름표. 편하지만 시간이 지나면 가리키는 실제 버전이 바뀔 수 있다.
모델 스냅샷 (model snapshot)
특정 시점에 고정된 모델 버전. 전체 모델 ID는 이 스냅샷 하나를 가리킨다.
버전 고정 (pinning)
별칭 대신 전체 모델 ID(스냅샷)를 적어 두어, 상위 모델 쪽 변경이 저절로 반영되지 않게 묶어 두는 것.
데이터 레지던시 (data residency)
데이터가 어느 지역·경계 안에 머물러야 하는지에 대한 요건. 규제 고객에게 특히 중요하다.
eval (평가 세트)
새 버전이 기준을 만족하는지 확인하는 자동 검증 세트. 배포 승격 여부를 판정하는 관문으로 쓴다.

실행할 환경은 대개 고객의 클라우드가 정합니다

The customer's cloud usually determines the platform

배포 플랫폼은 Claude 워크로드가 실제로 실행되는 환경입니다. 같은 모델이 여러 환경에서 실행될 수 있는데, 그중 어디를 고를지는 대개 고객이 이미 쓰는 클라우드가 정합니다. 이 결정은 기술적 우열만으로 정해지는 경우가 드뭅니다. 실무에서는 고객이 이미 클라우드 인프라·인증 관리·컴플라이언스(규제 준수) 계약을 어디에 갖추고 있는지가 더 크게 작용합니다.

그래서 첫 질문은 대개 "고객이 이미 신뢰하고 운영하는 플랫폼이 어디인가"입니다. 실행 환경은 크게 다음과 같이 나뉩니다.

쉽게 말하면

배포 플랫폼은 Claude가 실제로 실행되는 장소입니다. 어느 장소를 고를지는 대개 고객이 이미 쓰는 클라우드가 정합니다 — 새로 짐을 옮기기보다 이미 열려 있는 문으로 들어가는 쪽이 검토도 빠르기 때문입니다.

인증과 데이터 위치는 플랫폼이 정합니다

Identity and data residency

누가 접근할 수 있고 데이터가 어디에 머무는지는 우리 코드가 아니라 플랫폼이 답합니다. 이 부분을 플랫폼에 맡길 수 있다는 점이, 규제가 있는 고객에게는 특히 중요합니다.

플랫폼을 고객이 이미 맺어 둔 컴플라이언스 계약에 맞추면, 데이터 레지던시 검토를 처음부터 다시 하지 않아도 됩니다. 이미 통과시킨 경계 안에서 실행하는 셈이라, 승인 절차가 크게 줄어듭니다.

플랫폼을 고르는 기준과 감수할 부담

The deployment-platform decision table

여섯 환경을 한눈에 비교하면 선택 기준이 또렷해집니다. 아래 표는 각 플랫폼의 인증·데이터 모델, 언제 고르면 좋은지, 그리고 버전을 어떻게 고정하는지를 정리한 것입니다.

DEPLOYMENT PLATFORMS — 여섯 실행 환경 비교

플랫폼인증 · 데이터언제 고르나버전 고정 방법
First-party Claude APIAnthropic 인증·약관.묶이는 클라우드나 레지던시 제약이 없고, 가장 새로운 기능을 원할 때.전체 모델 ID를 고정하고 이전 스냅샷을 보관.
Claude Platform on AWSAnthropic 인증·약관을 고객 AWS 계정으로 접근. 추론은 AWS 경계 밖에서 Anthropic이 운영. 모델 수명주기는 Anthropic 폐기 일정을 따름.AWS를 쓰지만 Anthropic 모델 ID·수명주기와 first-party 수준의 기능을 원할 때.Claude API와 같은 모델 ID 형식으로 고정(예: claude-opus-4-8). 수명주기는 Anthropic 일정. (게시 시점 확인.)
Claude in Amazon Bedrock/anthropic/v1/messages의 Messages API, first-party와 폭넓은 기능 동등성(기능별 요건은 Bedrock 문서 확인). 데이터는 고객이 설정한 AWS 경계 안에 머묾.AWS를 쓰고 폭넓은 기능 동등성을 원하며, 그곳에 컴플라이언스 체계를 갖췄을 때.anthropic. 접두 형식으로 전체 모델 ID 고정. 파트너 지원 종료일은 Anthropic 일정과 다름. 게시 시점 확인.
Claude on Amazon Bedrock (legacy)AWS 인증·과금, InvokeModel/Converse API에 ARNAmazon Resource Name — AWS 리소스를 가리키는 고유 식별자. 버전 식별자.InvokeModel·Converse를 쓰는 기존 Bedrock 연동을 유지하고, Messages API로 옮기지 않았을 때.Bedrock의 버전 관리에 따라 ARN 버전 식별자로 고정.
Google Vertex AIGoogle Cloud 인증·IAMIdentity and Access Management — 누가 무엇에 접근할 수 있는지 관리하는 체계.·과금, 레지던시용 지역/글로벌 엔드포인트.Google Cloud를 쓰고, 그곳에 컴플라이언스 체계를 갖췄을 때.출시 전 Vertex 모델 ID 형식으로 전체 모델 ID 고정. 파트너 지원 종료일은 Anthropic 일정과 다름.
서드파티 플랫폼감싸는 제품의 인증·과금. Microsoft Foundry는 Azure 호스팅(현재 Opus 4.8·Sonnet 5·Haiku 4.5, 추론 전 구간 Azure)과 Anthropic 호스팅(그 외 Foundry Claude 모델) 두 형태. 규제 고객이라면 레지던시·컴플라이언스 조건을 Microsoft와 먼저 확인.고객이 Claude를 품은 그 플랫폼을 이미 운영 중일 때.해당 플랫폼의 버전 관리 방식으로 고정.

플랫폼을 정했다면, 이 방식이 언제 잘 맞고 언제 부담이 되는지도 함께 가늠해 보면 좋습니다.

TRADE-OFFS — 언제 알맞고, 언제 부담이 되나

잘 맞는 상황플랫폼을 고객의 클라우드에 맞추고 버전을 고정하면, 환경을 옮기는 과정을 검토할 수 있고 롤백도 가능합니다.
드는 비용버전을 고정하고, 이전 버전을 보관하고, eval로 승격을 통제하는 일은 배포마다 릴리스 절차에 부담을 더합니다.
다른 선택이 나을 때프로덕션에 닿지 않는 일회용 프로토타입이라면 움직이는 별칭도 괜찮습니다. 버전 고정은 실제로 출시되는 것에 필요한 절차입니다.

별칭 대신 전체 모델 ID를 고정합니다

Pin the version so an upstream change isn't silent

버전 관리는, 모델이나 프롬프트 변경이 모르는 사이에 프로덕션 동작을 바꾸는 일을 막아 줍니다. 모든 Claude 모델 ID는 특정 시점의 모델 스냅샷 하나를 가리킵니다.

Opus·Sonnet 같은 별칭은 쓰기 편하지만, 시간이 지나면 가리키는 실제 버전이 바뀌고 배포 플랫폼마다 다른 버전으로 풀리기도 합니다. 반면 전체 모델 버전을 적어 두면 고정된 스냅샷 하나로 풀립니다. 그래서 별칭 대신 구체적인 모델 버전을 고정해 두면, 상위 모델 쪽에서 업데이트가 올라올 때 그 변경을 직접 선택해 반영하게 됩니다. 고정하지 않으면 같은 업데이트가 우리 출력에 기록 없이 반영되어, 어느 순간 결과가 달라져 있는 상황을 만나기 쉽습니다.

쉽게 말하면

별칭은 "항상 권장 버전"을 가리키는 이름표이고, 전체 모델 ID는 그 순간의 버전에 단단히 묶어 두는 방식입니다. 이름표는 가리키는 곳이 바뀌지만, 묶어 둔 버전은 우리가 그 줄을 고치기 전까지 그대로입니다.

ALIAS vs PINNED — 앞줄은 움직이는 별칭, 뒷줄은 고정된 스냅샷

model config
# Pre-4.6 example: a convenience alias can resolve to a new
# version without you knowing
model = "claude-haiku-4-5"

# Pre-4.6 pinned snapshot: the version is fixed until you change this line
model = "claude-haiku-4-5-20251001"

Claude 4.6 이상에서는 모델 ID만으로 특정 스냅샷에 고정되고, 그 이전 모델은 ID에 날짜 접미사를 함께 붙입니다. 현재 규칙은 platform.claude.com에서 게시 시점에 확인해 보세요.

버전을 고정한 다음에는 프롬프트와 자산도 코드와 함께 버전으로 관리합니다. 그리고 이전 버전을 보관해 두면, 문제가 생겼을 때 롤백rollback — 문제가 생긴 버전을 이전의 정상 버전으로 되돌리는 것.으로 되돌릴 수 있습니다.

eval을 통과한 버전만 승격합니다

Promote a version through the eval

승격은 eval(평가 세트) 통과를 조건으로 겁니다. 새 버전을 트래픽 일부에 먼저 보내, 고정된 기준선(baseline)과 비교해 봅니다.

그 결과를 근거로 승격하거나 롤백합니다. 이 지점에서 eval은 한 번 실행하고 끝나는 시험이 아니라 배포 게이트(통과 관문)가 됩니다. 새 버전이 기준을 넘지 못하면 프로덕션에 올라가지 않으므로, 출력이 달라지는 변화를 사용자가 아니라 시험 단계에서 먼저 만나게 됩니다.

별칭이 움직이자 깨진 배포

Watch Out: The deployment that broke when the alias moved

권장 버전을 가리키는 별칭에 맞춰 출시하면, 편리한 기본값으로 최신 모델을 공짜로 얻는 셈입니다. 한동안은 잘 동작합니다. 그러다 별칭이 다음 버전으로 넘어가면, 공짜였던 편의에 값이 붙습니다.

아래는 사고가 난 뒤 되짚어 볼 법한 프로덕션 로그의 일부입니다. 출력 형태가 바뀐 날과, 되돌릴 대상이 없었던 이유를 함께 보여 줍니다.

PRODUCTION LOG — 사고 직후 되짚어 보는 흔적

production log
--: deploy: model="opus" status=ok
--: alias advanced -> new opus version (no app change)
--: parser: KeyError "summary" in response payload
--: Error: output shape changed; downstream parse failed
--: rollback attempted -> no pinned version retained
--: incident: hotfix parser; root cause = unpinned deployment

애플리케이션은 그대로였는데 별칭이 바뀌었습니다. 고정해 둔 이전 버전이 없어서 되돌릴 대상이 없었고, 핫픽스는 파서를 고쳤지만 고정하지 않은 배포는 그대로 남았습니다. 다음번 별칭이 또 움직이면 같은 사고가 반복될 수 있는 상태입니다.

주의 · WATCH OUT
  • 별칭은 움직이는 대상으로 풀리고, 전체 모델 ID는 고정된 스냅샷입니다. 전체 모델 ID를 고정해, 상위 모델 업데이트를 직접 선택해 반영하세요.
  • 이전에 고정한 버전을 보관해 두면, 문제가 생겼을 때 핫픽스가 아니라 롤백으로 처리할 수 있습니다.
  • 새 버전을 승격하기 전에 eval을 통과시키면, 출력 형태 변화가 프로덕션이 아니라 시험 단계에서 드러납니다.
기억할 점

스스로 점검 — 배포 구성 맞추기

Checkpoint · Match the platform and version pin

한 고객이 AWS를 쓰고, 데이터 레지던시 요건이 있으며, 모델 업데이트를 롤백할 수 있어야 합니다. 이 두 조건을 만족하는 최소 구성을 조각별로 맞춰 봅니다. 필요 없는 조각은 빼면 됩니다.

원문은 네 그룹에서 조각을 하나씩 골라 맞추는 과제입니다. 여기서는 그룹별로 나눠 물어봅니다. 정답을 먼저 떠올려 본 뒤 골라 보세요. 맞히면 설명이 나옵니다.

Q1플랫폼 — 어디서 실행할까요?

Q2인증 — 무엇으로 접근할까요?

Q3모델 참조 — 무엇을 가리킬까요?

Q4롤백 — 이전 버전은 어떻게 할까요?

한눈에

네 조각을 합치면 레지던시와 롤백 두 조건을 만족하는 최소 구성이 됩니다 — Bedrock + AWS 인증 + 고정된 전체 모델 ID + 이전 버전 보관.

MEMBER SESSION REQUIRED · REGISTRATION IS FREE

여기부터는 등록한 분에게 열립니다.

전 코스는 계속 무료입니다. 등록하면 이 코스의 남은 38개 레슨을 끝까지 읽을 수 있습니다.

등록하고 이어서 읽기

이미 등록하셨다면 그때 쓰신 이메일을 넣어 주세요.