CCAR-P · CHAPTER 05 · D5 GOVERNANCE, SAFETY & RISK MANAGEMENT · 14%
안전과 거버넌스 — 운영에 올려도 무너지지 않는 설계
아무리 정교한 RAG나 에이전트를 설계해도, 규정을 어기거나 예측하지 못한 실패로 한 번 무너지면 프로젝트 전체가 멈춥니다. 도메인 5는 시험 비중 14%로, 아키텍트가 기능 구현을 넘어 '이 시스템을 실제 운영에 올려도 되는가'를 판단하는 능력을 검증합니다. 안전장치 설계, 실패 모드 예측, 사람의 검토 지점 배치, 규정 준수, 윤리적 고려를 하나의 책임 체계로 엮는 것이 이 도메인의 핵심입니다.
5.1 SAFETY CONTROLS · 가드레일을 어느 계층에 세울 것인가
가드레일(guardrail, 시스템이 넘지 말아야 할 경계를 강제하는 통제)은 한 겹으로 세우지 않습니다. 아키텍트는 입력·출력·행동의 세 계층에 나눠 방어를 설계합니다. 입력 계층에서는 프롬프트 인젝션(prompt injection, 악의적 지시를 사용자 입력에 섞어 모델을 탈취하는 공격)을 걸러내고, 출력 계층에서는 개인정보 가림과 유해 표현 차단을 두며, 행동 계층에서는 에이전트가 호출할 수 있는 도구와 권한 범위를 미리 좁힙니다. Claude의 시스템 프롬프트와 콘텐츠 정책은 이 통제의 일부일 뿐, 애플리케이션 쪽 검증과 겹쳐야 실제 방어가 됩니다.
실무 예시
금융사 고객 상담 에이전트를 설계할 때, 계좌 이체나 한도 변경 같은 민감 행동은 모델이 곧바로 실행하지 못하도록 도구 호출 앞에 승인 게이트를 두고, 응답 출력에서는 주민등록번호·계좌번호를 자동으로 가립니다. 엔터프라이즈 솔루션 아키텍트는 '무엇을 막을지'보다 '어느 계층에서 막을지'를 먼저 정합니다.
5.2 FAILURE MODES · LLM은 무엇이 어떻게 무너지는가
LLM 시스템은 결정론적으로 작동하지 않습니다. 같은 질문에도 다른 답이 나오고, 근거 없는 사실을 그럴듯하게 지어내는 환각(hallucination), 학습 시점 이후 정보를 모르는 지식 공백, 입력이 바뀌며 성능이 서서히 어긋나는 드리프트(drift, 데이터 분포가 변하며 품질이 저하되는 현상)가 대표적 실패 모드입니다. 아키텍트는 이 한계를 결함이 아니라 전제로 놓고, 각 실패가 어디서 어떻게 드러날지 미리 지도로 그린 뒤 완화책을 붙입니다. 예측하지 못한 실패보다 예측하고도 대비하지 않은 실패가 더 큰 사고입니다.
실무 예시
의료 문서 요약 시스템에서 가장 위험한 실패는 원문에 없는 수치를 만들어내는 환각입니다. 아키텍트는 요약이 반드시 원문 근거 문장을 인용하도록(grounding) 강제하고, 근거를 찾지 못한 문장은 별도로 표시해 의료진이 걸러낼 수 있게 설계합니다.
5.3 HUMAN-IN-THE-LOOP · 사람의 검토를 어디에 놓을 것인가
사람의 검토를 붙인다고 곧 안전해지지 않습니다. 모든 출력에 검토를 걸면 병목과 검토 피로로 오히려 중요한 건을 놓칩니다. HITL(human-in-the-loop, 사람이 의사결정 고리 안에서 검토·승인하는 방식)의 핵심은 '어디에' 사람을 놓느냐입니다. 위험이 낮고 되돌릴 수 있는 작업은 자동으로 흘리고, 되돌리기 어렵거나 파급이 큰 작업, 모델 확신도가 낮은 응답만 담당자 검토로 라우팅합니다. 아키텍트는 자율과 검토의 경계선을 위험 기반으로 긋고, 검토 담당자에게 판단에 필요한 근거를 함께 전달하도록 설계합니다.
실무 예시
유통사의 계약서 검토 에이전트에서 표준 조항 확인은 자동으로 처리하되, 계약 금액과 위약·손해배상 조항처럼 파급이 큰 구간은 법무 담당자 검토로 넘깁니다. 에이전트는 판단을 대신하지 않고, 담당자가 빠르게 확인하도록 쟁점과 근거 조항을 정리해 전달합니다.
5.4 COMPLIANCE · 규정을 설계에 미리 반영한다
규정 준수는 배포 직전에 덧붙이는 점검이 아니라 데이터 흐름을 그리는 첫 단계에서 반영해야 합니다. 유럽 GDPR은 개인정보의 삭제 요구권과 처리 근거를, 미국 HIPAA는 진료정보(PHI)의 암호화와 위수탁 계약(BAA)을, FedRAMP는 공공 클라우드의 보안 인증을 요구합니다. 국내라면 개인정보보호법이 같은 자리에 옵니다. 아키텍트가 확인할 질문은 분명합니다 — 개인정보가 모델 호출 경로 어디를 지나는가, 기록에 남는가, 모델 제공자가 보관하는가. Claude의 무보관 옵션과 데이터 처리 계약은 이 질문에 답하는 도구입니다.
실무 예시
환자 데이터를 다루는 시스템이라면 식별 정보를 모델에 보내기 전에 비식별화하고, 원문을 기록에 남기지 않으며, 모델 제공자와 데이터 처리 위수탁 계약을 맺습니다. 아키텍트는 '이 데이터가 국경을 넘는가', '누가 열람할 수 있는가'를 설계도 위에서 먼저 답합니다.
5.5 ETHICAL AI · 편향·공정성·투명성
편향(bias)은 모델의 결함이라기보다 학습 데이터와 사용 맥락에서 스며듭니다. 특정 성별·연령·지역 집단에 불리한 출력이 반복되는지 감사하지 않으면 드러나지 않습니다. 공정성(fairness)은 집단 사이 결과가 고르게 나오는지의 문제이고, 투명성(transparency)은 사용자가 AI의 개입 사실과 판단 근거를 알 수 있게 하는 문제입니다. 아키텍트는 편향 평가를 정기 점검 항목으로 두고, AI가 보조했다는 사실을 고지하며, 되돌릴 수 없는 결정의 최종 권한은 담당 실무자에게 남깁니다.
실무 예시
채용 지원서 선별을 돕는 시스템에서는 성별·출신 학교 같은 속성이 결과에 부당하게 작용하는지 정기적으로 감사하고, 지원자에게 AI가 검토를 보조했음을 고지하며, 합격·불합격의 최종 결정은 채용 담당자가 내리도록 설계합니다.
5.6 GOVERNANCE · 감사 추적과 책임 소재
통제와 검토, 규정, 윤리를 각각 잘 설계해도 이를 묶는 운영 체계가 없으면 흩어집니다. 거버넌스(governance)는 '누가 이 시스템을 책임지고, 문제가 생기면 어떻게 되돌리는가'를 정하는 뼈대입니다. 아키텍트는 배포 전 평가 게이트를 통과 기준으로 세우고, 모든 응답에 사용한 모델 버전과 판단 근거가 남도록 감사 추적(audit trail)을 설계하며, 사고 발생 시 롤백 절차와 책임 소재를 미리 정합니다. 모델과 정책은 한 번 정하고 끝나지 않으므로, 버전을 관리하고 주기적으로 재평가하는 순환을 함께 설계합니다.
실무 예시
공공기관 민원 응답 시스템이라면 배포 전 평가 게이트 통과 기록을 남기고, 모든 응답에 어떤 모델 버전이 어떤 근거로 답했는지 추적할 수 있게 하며, 잘못된 답이 나갔을 때 즉시 되돌리는 절차를 갖춥니다. 아키텍트는 기능을 올리는 사람이 아니라 '내려야 할 때 내릴 수 있는가'까지 책임지는 설계자입니다.
! 흔한 함정
- 가드레일은 한 곳만 잘 세우면 된다고 생각하기 쉽지만, 입력만 막거나 출력만 거르는 단일 필터는 우회당합니다. 방어는 입력·출력·행동 여러 계층이 겹칠 때 비로소 성립합니다.
- 안전을 위해 모든 출력에 사람 검토를 붙이려는 유혹 — 검토 병목과 피로로 오히려 중요한 건을 놓칩니다. HITL은 위험이 큰 지점에만 선택적으로 배치합니다.
- 규정 준수를 법무팀에게만 미루는 태도. 개인정보가 어디로 흐르는지는 설계 단계에서 정해지므로, 아키텍트가 처음부터 반영하지 않으면 나중에 되돌리기 어렵습니다.
- 모델 제공자가 안전하다고 하니 편향은 없다는 가정. 편향은 학습 데이터와 사용 맥락에서 생기므로, 우리 도메인에서 직접 감사해야 드러납니다.
HANDS-ON 가드레일과 안전한 출력 처리를 손으로 익히려면 byteforce learn의 '2-claude-api' 코스가 출발점입니다 — 시스템 프롬프트로 행동 경계를 세우고 출력을 검증·제어하는 패턴을 직접 다뤄, 이 도메인의 통제 설계 감각을 기릅니다. learn으로 →
Q 확인 퀴즈
한 시중은행이 개인 고객 상담용 Claude 에이전트를 설계 중입니다. 솔루션 아키텍트는 안전장치를 한 겹이 아니라 여러 계층에 나눠 두려 합니다.
가드레일(guardrail, 시스템이 넘지 말아야 할 경계를 강제하는 통제)을 입력·출력·행동 세 계층으로 나눠 설계할 때, '행동 계층'에 해당하는 통제는 무엇입니까?