AWS, Amazon Bedrock 세분화 비용 귀속 기능 공개… IAM 프린시펄·태그로 CUR 2.0·Cost Explorer 분석
AWS가 Amazon Bedrock 추론에 대한 세분화 비용 귀속(granular cost attribution) 기능을 발표했다. AI 추론이 클라우드 지출에서 상당한 비중을 차지하게 되면서, 누가 그리고 무엇이 비용을 유발하는지 파악하는 것이 차지백·비용 최적화·재무 계획에 필수라는 배경에서 공개된 기능이다.
Amazon Bedrock는 이제 추론 비용을 해당 호출을 수행한 IAM 프린시펄에 자동으로 귀속시킨다. IAM 프린시펄에는 IAM 사용자, 애플리케이션이 assume한 역할, Okta나 Entra ID 같은 ID 프로바이더에서 연합된 사용자가 포함된다. 귀속 데이터는 AWS Billing으로 흐르며 모델 전반에 걸쳐 작동하고, 관리해야 할 리소스나 기존 워크플로 변경은 없다고 AWS는 밝혔다.
선택적 비용 할당 태그를 추가하면 AWS Cost Explorer와 AWS Cost and Usage Reports(CUR 2.0)에서 팀·프로젝트·사용자 정의 차원별로 비용을 집계할 수 있다. CUR 2.0 데이터 내보내기 구성에서 IAM 프린시펄 데이터를 활성화하면, 어떤 IAM 프린시펄이 Amazon Bedrock을 호출했고 각각 얼마를 지출했는지 확인할 수 있다.
예시에서 Alice는 Claude 4.6 Sonnet을, Bob은 Claude 4.6 Opus를 사용했다. CUR 2.0의 line_item_iam_principal, line_item_usage_type, line_item_unblended_cost 컬럼에는 Alice의 Sonnet 입력 토큰 $0.069·출력 토큰 $0.214, Bob의 Opus 입력 토큰 $0.198·출력 토큰 $0.990이 기록됐다. line_item_usage_type 컬럼은 리전·모델·토큰 방향(입력/출력)을 함께 인코딩해 사용자별·모델별 지출 분석을 가능하게 한다.
line_item_iam_principal 컬럼에는 호출 방식에 따라 서로 다른 식별자가 들어간다. IAM 사용자는 ‘user/alice’, IAM 사용자에 매핑되는 Bedrock API 키는 ‘user/BedrockAPIKey-234s’, AWS Lambda 함수 같은 IAM 역할은 ‘assumed-role/AppRole/session’, IdP 기반 연합 사용자는 ‘assumed-role/Role/user@acme.org’ 형식으로 표시된다.
팀·프로젝트·코스트센터 단위로 비용을 모으려면 IAM 프린시펄에 태그를 붙이면 된다. 프린시펄 태그는 IAM 사용자나 역할에 직접 부착해 한 번 설정하면 모든 요청에 적용되고, 세션 태그는 역할을 assume하거나 IdP assertion에 포함해 동적으로 전달된다. AWS Billing에서 비용 할당 태그로 활성화한 뒤에는 CUR 2.0의 tags 컬럼에 ‘iamPrincipal/’ 접두어와 함께 나타난다.
접근 패턴은 네 가지 시나리오로 요약된다. (1) 개발자가 IAM 사용자나 API 키를 직접 쓰는 경우 각 사용자의 ARN이 CUR 2.0에 그대로 노출된다. (2) 애플리케이션이 IAM 역할을 쓰면 각 역할의 ARN이 표시된다. (3) 사용자가 IdP로 인증하는 경우 ARN의 세션 이름이 사용자를 식별한다. (4) LLM 게이트웨이가 Amazon Bedrock에 프록시하는 구조는 기본적으로 게이트웨이 역할 하나만 노출되므로, 사용자 단위로 집계하려면 사용자별 AssumeRole과 세션 이름·태그를 추가해야 한다.
AWS는 시나리오 1~3에서는 line_item_iam_principal 컬럼만으로 호출자 단위 귀속이 가능하며, 태그는 팀·코스트센터·테넌트 같은 커스텀 차원 집계나 Cost Explorer 시각화·알림에 필요하다고 설명했다. 시나리오 4에서는 사용자별 세션 관리가 없으면 트래픽이 전부 게이트웨이의 단일 역할로 귀속된다. 태그는 AWS Billing 콘솔 또는 UpdateCostAllocationTagsStatus API로 활성화하며, Cost Explorer와 CUR 2.0에는 24~48시간 내 반영된다.
소규모 팀·개발 환경·빠른 프로토타이핑에 적합한 시나리오 1 예시에서는 AWS CLI로 ‘aws iam tag-user --user-name user-1 --tags Key=team,Value="BedrockDataScience" Key=cost-center,Value="12345"’처럼 팀과 코스트센터 태그를 붙인다. 이렇게 하면 CUR 2.0에 user-1·user-2의 Sonnet·Opus 입출력 토큰 비용과 함께 iamPrincipal/team, iamPrincipal/cost-center 태그가 기록돼 사용자별·모델별·팀별 분석이 가능해진다.